{
    "name": "cloudflare",
    "displayName": "Cloudflare",
    "description": "A Pulumi package for creating and managing Cloudflare cloud resources.",
    "keywords": [
        "pulumi",
        "cloudflare"
    ],
    "homepage": "https://pulumi.io",
    "license": "Apache-2.0",
    "attribution": "This Pulumi package is based on the [`cloudflare` Terraform Provider](https://github.com/cloudflare/terraform-provider-cloudflare).",
    "repository": "https://github.com/pulumi/pulumi-cloudflare",
    "meta": {
        "moduleFormat": "(.*)(?:/[^/]*)"
    },
    "language": {
        "csharp": {
            "packageReferences": {
                "Pulumi": "3.*"
            },
            "namespaces": {
                "cloudflare": "Cloudflare"
            },
            "compatibility": "tfbridge20",
            "respectSchemaVersion": true
        },
        "go": {
            "importBasePath": "github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare",
            "generateResourceContainerTypes": true,
            "generateExtraInputTypes": true,
            "respectSchemaVersion": true
        },
        "nodejs": {
            "packageDescription": "A Pulumi package for creating and managing Cloudflare cloud resources.",
            "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/cloudflare/terraform-provider-cloudflare)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-cloudflare` repo](https://github.com/pulumi/pulumi-cloudflare/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-cloudflare` repo](https://github.com/cloudflare/terraform-provider-cloudflare/issues).",
            "devDependencies": {
                "@types/mime": "^2.0.0",
                "@types/node": "^10.0.0"
            },
            "compatibility": "tfbridge20",
            "disableUnionOutputTypes": true,
            "respectSchemaVersion": true
        },
        "python": {
            "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/cloudflare/terraform-provider-cloudflare)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-cloudflare` repo](https://github.com/pulumi/pulumi-cloudflare/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-cloudflare` repo](https://github.com/cloudflare/terraform-provider-cloudflare/issues).",
            "compatibility": "tfbridge20",
            "respectSchemaVersion": true,
            "pyproject": {
                "enabled": true
            }
        }
    },
    "config": {
        "variables": {
            "apiKey": {
                "type": "string",
                "description": "The API key for operations. Alternatively, can be configured using the `CLOUDFLARE_API_KEY` environment variable. API keys are [now considered legacy by Cloudflare](https://developers.cloudflare.com/fundamentals/api/get-started/keys/#limitations), API tokens should be used instead. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "apiToken": {
                "type": "string",
                "description": "The API Token for operations. Alternatively, can be configured using the `CLOUDFLARE_API_TOKEN` environment variable. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "apiUserServiceKey": {
                "type": "string",
                "description": "A special Cloudflare API key good for a restricted set of endpoints. Alternatively, can be configured using the `CLOUDFLARE_API_USER_SERVICE_KEY` environment variable. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "baseUrl": {
                "type": "string",
                "description": "Value to override the default HTTP client base URL. Alternatively, can be configured using the \u003cspan pulumi-lang-nodejs=\"`baseUrl`\" pulumi-lang-dotnet=\"`BaseUrl`\" pulumi-lang-go=\"`baseUrl`\" pulumi-lang-python=\"`base_url`\" pulumi-lang-yaml=\"`baseUrl`\" pulumi-lang-java=\"`baseUrl`\"\u003e`baseUrl`\u003c/span\u003e environment variable."
            },
            "email": {
                "type": "string",
                "description": "A registered Cloudflare email address. Alternatively, can be configured using the `CLOUDFLARE_EMAIL` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e. Conflicts with \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e."
            },
            "userAgentOperatorSuffix": {
                "type": "string",
                "description": "A value to append to the HTTP User Agent for all API calls. This value is not something most users need to modify however, if you are using a non-standard provider or operator configuration, this is recommended to assist in uniquely identifying your traffic. **Setting this value will remove the Terraform version from the HTTP User Agent string and may have unintended consequences**. Alternatively, can be configured using the `CLOUDFLARE_USER_AGENT_OPERATOR_SUFFIX` environment variable."
            }
        }
    },
    "types": {
        "cloudflare:index/AccessApplicationCorsHeaders:AccessApplicationCorsHeaders": {
            "properties": {
                "allowAllHeaders": {
                    "type": "boolean",
                    "description": "Allows all HTTP request headers.\n"
                },
                "allowAllMethods": {
                    "type": "boolean",
                    "description": "Allows all HTTP request methods.\n"
                },
                "allowAllOrigins": {
                    "type": "boolean",
                    "description": "Allows all origins.\n"
                },
                "allowCredentials": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, includes credentials (cookies, authorization headers, or TLS client certificates) with requests.\n"
                },
                "allowedHeaders": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request headers.\n"
                },
                "allowedMethods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request methods.\n"
                },
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed origins.\n"
                },
                "maxAge": {
                    "type": "number",
                    "description": "The maximum number of seconds the results of a preflight request can be cached.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationDestination:AccessApplicationDestination": {
            "properties": {
                "cidr": {
                    "type": "string",
                    "description": "The CIDR range of the destination. Single IPs will be computed as /32.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the destination. Matches a valid SNI served by an HTTPS origin.\n"
                },
                "l4Protocol": {
                    "type": "string",
                    "description": "The L4 protocol of the destination. When omitted, both UDP and TCP traffic will match.\nAvailable values: \"tcp\", \"udp\".\n"
                },
                "mcpServerId": {
                    "type": "string",
                    "description": "A MCP server id configured in ai-controls. Access will secure the MCP server if accessed through a MCP portal.\n"
                },
                "portRange": {
                    "type": "string",
                    "description": "The port range of the destination. Can be a single port or a range of ports. When omitted, all ports will match.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"public\", \"private\".\n"
                },
                "uri": {
                    "type": "string",
                    "description": "The URI of the destination. Public destinations' URIs can include a domain and path with [wildcards](https://developers.cloudflare.com/cloudflare-one/policies/access/app-paths/).\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "The VNET ID to match the destination. When omitted, all VNETs will match.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/AccessApplicationFooterLink:AccessApplicationFooterLink": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The hypertext in the footer link.\n"
                },
                "url": {
                    "type": "string",
                    "description": "the hyperlink in the footer link.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "url"
            ]
        },
        "cloudflare:index/AccessApplicationLandingPageDesign:AccessApplicationLandingPageDesign": {
            "properties": {
                "buttonColor": {
                    "type": "string",
                    "description": "The background color of the log in button on the landing page.\n"
                },
                "buttonTextColor": {
                    "type": "string",
                    "description": "The color of the text in the log in button on the landing page.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "The URL of the image shown on the landing page.\n"
                },
                "message": {
                    "type": "string",
                    "description": "The message shown on the landing page.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title shown on the landing page.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "title"
                    ]
                }
            }
        },
        "cloudflare:index/AccessApplicationMfaConfig:AccessApplicationMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \u003cspan pulumi-lang-nodejs=\"\"securityKey\"\" pulumi-lang-dotnet=\"\"SecurityKey\"\" pulumi-lang-go=\"\"securityKey\"\" pulumi-lang-python=\"\"security_key\"\" pulumi-lang-yaml=\"\"securityKey\"\" pulumi-lang-java=\"\"securityKey\"\"\u003e\"securityKey\"\u003c/span\u003e.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this application.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationOauthConfiguration:AccessApplicationOauthConfiguration": {
            "properties": {
                "dynamicClientRegistration": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationOauthConfigurationDynamicClientRegistration:AccessApplicationOauthConfigurationDynamicClientRegistration",
                    "description": "Settings for OAuth dynamic client registration.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the OAuth configuration is enabled for this application. When set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, Access will not handle OAuth for this application. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e if omitted.\n"
                },
                "grant": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationOauthConfigurationGrant:AccessApplicationOauthConfigurationGrant",
                    "description": "Settings for OAuth grant behavior.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationOauthConfigurationDynamicClientRegistration:AccessApplicationOauthConfigurationDynamicClientRegistration": {
            "properties": {
                "allowAnyOnLocalhost": {
                    "type": "boolean",
                    "description": "Allows any client with redirect URIs on localhost.\n"
                },
                "allowAnyOnLoopback": {
                    "type": "boolean",
                    "description": "Allows any client with redirect URIs on 127.0.0.1.\n"
                },
                "allowedUris": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The URIs that are allowed as redirect URIs for dynamically registered clients. Must use the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Paths may end in `/*` to match all sub-paths.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether dynamic client registration is enabled.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationOauthConfigurationGrant:AccessApplicationOauthConfigurationGrant": {
            "properties": {
                "accessTokenLifetime": {
                    "type": "string",
                    "description": "The lifetime of the access token. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are ns, us (or µs), ms, s, m, h.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The duration of the OAuth session. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are ns, us (or µs), ms, s, m, h.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicy:AccessApplicationPolicy": {
            "properties": {
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyConnectionRules:AccessApplicationPolicyConnectionRules",
                    "description": "The rules that define how users may connect to the targets secured by your application.\n"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExclude:AccessApplicationPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The UUID of the policy\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationPolicyInclude:AccessApplicationPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyMfaConfig:AccessApplicationPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for this policy. For infrastructure applications only \u003cspan pulumi-lang-nodejs=\"`sshPivKey`\" pulumi-lang-dotnet=\"`SshPivKey`\" pulumi-lang-go=\"`sshPivKey`\" pulumi-lang-python=\"`ssh_piv_key`\" pulumi-lang-yaml=\"`sshPivKey`\" pulumi-lang-java=\"`sshPivKey`\"\u003e`sshPivKey`\u003c/span\u003e is a supported authenticator; for other application types use \u003cspan pulumi-lang-nodejs=\"`totp`\" pulumi-lang-dotnet=\"`Totp`\" pulumi-lang-go=\"`totp`\" pulumi-lang-python=\"`totp`\" pulumi-lang-yaml=\"`totp`\" pulumi-lang-java=\"`totp`\"\u003e`totp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`biometrics`\" pulumi-lang-dotnet=\"`Biometrics`\" pulumi-lang-go=\"`biometrics`\" pulumi-lang-python=\"`biometrics`\" pulumi-lang-yaml=\"`biometrics`\" pulumi-lang-java=\"`biometrics`\"\u003e`biometrics`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`securityKey`\" pulumi-lang-dotnet=\"`SecurityKey`\" pulumi-lang-go=\"`securityKey`\" pulumi-lang-python=\"`security_key`\" pulumi-lang-yaml=\"`securityKey`\" pulumi-lang-java=\"`securityKey`\"\u003e`securityKey`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The order of execution for this policy. Must be unique for each policy within an app.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequire:AccessApplicationPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "precedence"
                    ]
                }
            }
        },
        "cloudflare:index/AccessApplicationPolicyConnectionRules:AccessApplicationPolicyConnectionRules": {
            "properties": {
                "rdp": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyConnectionRulesRdp:AccessApplicationPolicyConnectionRulesRdp",
                    "description": "The RDP-specific rules that define clipboard behavior for RDP connections.\n"
                },
                "ssh": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyConnectionRulesSsh:AccessApplicationPolicyConnectionRulesSsh",
                    "description": "The SSH-specific rules that define how users may connect to the targets secured by your application.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyConnectionRulesRdp:AccessApplicationPolicyConnectionRulesRdp": {
            "properties": {
                "allowedClipboardLocalToRemoteFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from local machine to remote RDP session.\n"
                },
                "allowedClipboardRemoteToLocalFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from remote RDP session to local machine.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyConnectionRulesSsh:AccessApplicationPolicyConnectionRulesSsh": {
            "properties": {
                "allowEmailAlias": {
                    "type": "boolean",
                    "description": "Enables using Identity Provider email alias as SSH username.\n"
                },
                "usernames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains the Unix usernames that may be used when connecting over SSH.\n"
                }
            },
            "type": "object",
            "required": [
                "usernames"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExclude:AccessApplicationPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeAnyValidServiceToken:AccessApplicationPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeAuthContext:AccessApplicationPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeAuthMethod:AccessApplicationPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeAzureAd:AccessApplicationPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeCertificate:AccessApplicationPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeCommonName:AccessApplicationPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeDevicePosture:AccessApplicationPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeEmail:AccessApplicationPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeEmailDomain:AccessApplicationPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeEmailList:AccessApplicationPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeEveryone:AccessApplicationPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeExternalEvaluation:AccessApplicationPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeGeo:AccessApplicationPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeGithubOrganization:AccessApplicationPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeGroup:AccessApplicationPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeGsuite:AccessApplicationPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeIp:AccessApplicationPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeIpList:AccessApplicationPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeLinkedAppToken:AccessApplicationPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeLoginMethod:AccessApplicationPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeOidc:AccessApplicationPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeOkta:AccessApplicationPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeSaml:AccessApplicationPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyExcludeServiceToken:AccessApplicationPolicyExcludeServiceToken"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyExcludeAnyValidServiceToken:AccessApplicationPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyExcludeAuthContext:AccessApplicationPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeAuthMethod:AccessApplicationPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeAzureAd:AccessApplicationPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeCertificate:AccessApplicationPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyExcludeCommonName:AccessApplicationPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeDevicePosture:AccessApplicationPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeEmail:AccessApplicationPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeEmailDomain:AccessApplicationPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeEmailList:AccessApplicationPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeEveryone:AccessApplicationPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyExcludeExternalEvaluation:AccessApplicationPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeGeo:AccessApplicationPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeGithubOrganization:AccessApplicationPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeGroup:AccessApplicationPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeGsuite:AccessApplicationPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeIp:AccessApplicationPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeIpList:AccessApplicationPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeLinkedAppToken:AccessApplicationPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeLoginMethod:AccessApplicationPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeOidc:AccessApplicationPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeOkta:AccessApplicationPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeSaml:AccessApplicationPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyExcludeServiceToken:AccessApplicationPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyInclude:AccessApplicationPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeAnyValidServiceToken:AccessApplicationPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeAuthContext:AccessApplicationPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeAuthMethod:AccessApplicationPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeAzureAd:AccessApplicationPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeCertificate:AccessApplicationPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeCommonName:AccessApplicationPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeDevicePosture:AccessApplicationPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeEmail:AccessApplicationPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeEmailDomain:AccessApplicationPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeEmailList:AccessApplicationPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeEveryone:AccessApplicationPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeExternalEvaluation:AccessApplicationPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeGeo:AccessApplicationPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeGithubOrganization:AccessApplicationPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeGroup:AccessApplicationPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeGsuite:AccessApplicationPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeIp:AccessApplicationPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeIpList:AccessApplicationPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeLinkedAppToken:AccessApplicationPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeLoginMethod:AccessApplicationPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeOidc:AccessApplicationPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeOkta:AccessApplicationPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeSaml:AccessApplicationPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyIncludeServiceToken:AccessApplicationPolicyIncludeServiceToken"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyIncludeAnyValidServiceToken:AccessApplicationPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyIncludeAuthContext:AccessApplicationPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeAuthMethod:AccessApplicationPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeAzureAd:AccessApplicationPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeCertificate:AccessApplicationPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyIncludeCommonName:AccessApplicationPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeDevicePosture:AccessApplicationPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeEmail:AccessApplicationPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeEmailDomain:AccessApplicationPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeEmailList:AccessApplicationPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeEveryone:AccessApplicationPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyIncludeExternalEvaluation:AccessApplicationPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeGeo:AccessApplicationPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeGithubOrganization:AccessApplicationPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeGroup:AccessApplicationPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeGsuite:AccessApplicationPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeIp:AccessApplicationPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeIpList:AccessApplicationPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeLinkedAppToken:AccessApplicationPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeLoginMethod:AccessApplicationPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeOidc:AccessApplicationPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeOkta:AccessApplicationPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeSaml:AccessApplicationPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyIncludeServiceToken:AccessApplicationPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyMfaConfig:AccessApplicationPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \"security*key\", \"ssh*piv_key\".\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyRequire:AccessApplicationPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireAnyValidServiceToken:AccessApplicationPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireAuthContext:AccessApplicationPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireAuthMethod:AccessApplicationPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireAzureAd:AccessApplicationPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireCertificate:AccessApplicationPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireCommonName:AccessApplicationPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireDevicePosture:AccessApplicationPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireEmail:AccessApplicationPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireEmailDomain:AccessApplicationPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireEmailList:AccessApplicationPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireEveryone:AccessApplicationPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireExternalEvaluation:AccessApplicationPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireGeo:AccessApplicationPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireGithubOrganization:AccessApplicationPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireGroup:AccessApplicationPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireGsuite:AccessApplicationPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireIp:AccessApplicationPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireIpList:AccessApplicationPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireLinkedAppToken:AccessApplicationPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireLoginMethod:AccessApplicationPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireOidc:AccessApplicationPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireOkta:AccessApplicationPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireSaml:AccessApplicationPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationPolicyRequireServiceToken:AccessApplicationPolicyRequireServiceToken"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyRequireAnyValidServiceToken:AccessApplicationPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyRequireAuthContext:AccessApplicationPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireAuthMethod:AccessApplicationPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireAzureAd:AccessApplicationPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireCertificate:AccessApplicationPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyRequireCommonName:AccessApplicationPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireDevicePosture:AccessApplicationPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireEmail:AccessApplicationPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireEmailDomain:AccessApplicationPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireEmailList:AccessApplicationPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireEveryone:AccessApplicationPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessApplicationPolicyRequireExternalEvaluation:AccessApplicationPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireGeo:AccessApplicationPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireGithubOrganization:AccessApplicationPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireGroup:AccessApplicationPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireGsuite:AccessApplicationPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireIp:AccessApplicationPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireIpList:AccessApplicationPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireLinkedAppToken:AccessApplicationPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireLoginMethod:AccessApplicationPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireOidc:AccessApplicationPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireOkta:AccessApplicationPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireSaml:AccessApplicationPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessApplicationPolicyRequireServiceToken:AccessApplicationPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessApplicationSaasApp:AccessApplicationSaasApp": {
            "properties": {
                "accessTokenLifetime": {
                    "type": "string",
                    "description": "The lifetime of the OIDC Access Token after creation. Valid units are m,h. Must be greater than or equal to 1m and less than or equal to 24h.\n"
                },
                "allowPkceWithoutClientSecret": {
                    "type": "boolean",
                    "description": "If client secret should be required on the token endpoint when authorization*code*with_pkce grant is used.\n"
                },
                "appLauncherUrl": {
                    "type": "string",
                    "description": "The URL where this applications tile redirects users\n"
                },
                "authType": {
                    "type": "string",
                    "description": "Optional identifier indicating the authentication protocol used for the saas app. Required for OIDC. Default if unset is \"saml\"\nAvailable values: \"saml\", \"oidc\".\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The application client id\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The application client secret, only returned on POST request.\n",
                    "secret": true
                },
                "consumerServiceUrl": {
                    "type": "string",
                    "description": "The service provider's endpoint that is responsible for receiving and parsing a SAML assertion.\n"
                },
                "customAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppCustomAttribute:AccessApplicationSaasAppCustomAttribute"
                    }
                },
                "customClaims": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppCustomClaim:AccessApplicationSaasAppCustomClaim"
                    }
                },
                "defaultRelayState": {
                    "type": "string",
                    "description": "The URL that the user will be redirected to after a successful login for IDP initiated logins.\n"
                },
                "grantTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The OIDC flows supported by this application\n"
                },
                "groupFilterRegex": {
                    "type": "string",
                    "description": "A regex to filter Cloudflare groups returned in ID token and userinfo endpoint\n"
                },
                "hybridAndImplicitOptions": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppHybridAndImplicitOptions:AccessApplicationSaasAppHybridAndImplicitOptions"
                },
                "idpEntityId": {
                    "type": "string",
                    "description": "The unique identifier for your SaaS application.\n"
                },
                "nameIdFormat": {
                    "type": "string",
                    "description": "The format of the name identifier sent to the SaaS application.\nAvailable values: \"id\", \"email\".\n"
                },
                "nameIdTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into a NameID value for its SAML assertion. This expression should evaluate to a singular string. The output of this expression can override the \u003cspan pulumi-lang-nodejs=\"`nameIdFormat`\" pulumi-lang-dotnet=\"`NameIdFormat`\" pulumi-lang-go=\"`nameIdFormat`\" pulumi-lang-python=\"`name_id_format`\" pulumi-lang-yaml=\"`nameIdFormat`\" pulumi-lang-java=\"`nameIdFormat`\"\u003e`nameIdFormat`\u003c/span\u003e setting.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The Access public certificate that will be used to verify your identity.\n"
                },
                "redirectUris": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The permitted URL's for Cloudflare to return Authorization codes and Access/ID tokens\n"
                },
                "refreshTokenOptions": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppRefreshTokenOptions:AccessApplicationSaasAppRefreshTokenOptions"
                },
                "samlAttributeTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into attribute assertions in the SAML response. The expression can transform id, email, name, and groups values. It can also transform fields listed in the saml*attributes or oidc*fields of the identity provider used to authenticate. The output of this expression must be a JSON object.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Define the user information shared with access, \u003cspan pulumi-lang-nodejs=\"\"offlineAccess\"\" pulumi-lang-dotnet=\"\"OfflineAccess\"\" pulumi-lang-go=\"\"offlineAccess\"\" pulumi-lang-python=\"\"offline_access\"\" pulumi-lang-yaml=\"\"offlineAccess\"\" pulumi-lang-java=\"\"offlineAccess\"\"\u003e\"offlineAccess\"\u003c/span\u003e scope will be automatically enabled if refresh tokens are enabled\n"
                },
                "spEntityId": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\n"
                },
                "ssoEndpoint": {
                    "type": "string",
                    "description": "The endpoint where your SaaS application will send login requests.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "accessTokenLifetime",
                        "authType",
                        "clientId",
                        "clientSecret",
                        "idpEntityId",
                        "nameIdFormat",
                        "publicKey",
                        "ssoEndpoint"
                    ]
                }
            }
        },
        "cloudflare:index/AccessApplicationSaasAppCustomAttribute:AccessApplicationSaasAppCustomAttribute": {
            "properties": {
                "friendlyName": {
                    "type": "string",
                    "description": "The SAML FriendlyName of the attribute.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the attribute.\n"
                },
                "nameFormat": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\nAvailable values: \"urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:basic\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:uri\".\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the attribute is required when building a SAML assertion.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppCustomAttributeSource:AccessApplicationSaasAppCustomAttributeSource"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationSaasAppCustomAttributeSource:AccessApplicationSaasAppCustomAttributeSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP attribute.\n"
                },
                "nameByIdps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppCustomAttributeSourceNameByIdp:AccessApplicationSaasAppCustomAttributeSourceNameByIdp"
                    },
                    "description": "A mapping from IdP ID to attribute name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationSaasAppCustomAttributeSourceNameByIdp:AccessApplicationSaasAppCustomAttributeSourceNameByIdp": {
            "properties": {
                "idpId": {
                    "type": "string",
                    "description": "The UID of the IdP.\n"
                },
                "sourceName": {
                    "type": "string",
                    "description": "The name of the IdP provided attribute.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationSaasAppCustomClaim:AccessApplicationSaasAppCustomClaim": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the claim.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the claim is required when building an OIDC token.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of the claim.\nAvailable values: \"groups\", \"profile\", \"email\", \"openid\".\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationSaasAppCustomClaimSource:AccessApplicationSaasAppCustomClaimSource"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationSaasAppCustomClaimSource:AccessApplicationSaasAppCustomClaimSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP claim.\n"
                },
                "nameByIdp": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A mapping from IdP ID to claim name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationSaasAppHybridAndImplicitOptions:AccessApplicationSaasAppHybridAndImplicitOptions": {
            "properties": {
                "returnAccessTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an Access Token should be returned from the OIDC Authorization endpoint\n"
                },
                "returnIdTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an ID Token should be returned from the OIDC Authorization endpoint\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationSaasAppRefreshTokenOptions:AccessApplicationSaasAppRefreshTokenOptions": {
            "properties": {
                "lifetime": {
                    "type": "string",
                    "description": "How long a refresh token will be valid for after creation. Valid units are m,h,d. Must be longer than 1m.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationScimConfig:AccessApplicationScimConfig": {
            "properties": {
                "authentication": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationScimConfigAuthentication:AccessApplicationScimConfigAuthentication",
                    "description": "Attributes for configuring HTTP Basic authentication scheme for SCIM provisioning to an application.\n"
                },
                "deactivateOnDelete": {
                    "type": "boolean",
                    "description": "If false, propagates DELETE requests to the target application for SCIM resources. If true, sets 'active' to false on the SCIM resource. Note: Some targets do not support DELETE operations.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether SCIM provisioning is turned on for this application.\n"
                },
                "idpUid": {
                    "type": "string",
                    "description": "The UID of the IdP to use as the source for SCIM resources to provision to this application.\n"
                },
                "mappings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationScimConfigMapping:AccessApplicationScimConfigMapping"
                    },
                    "description": "A list of mappings to apply to SCIM resources before provisioning them in this application. These can transform or filter the resources to be provisioned.\n"
                },
                "remoteUri": {
                    "type": "string",
                    "description": "The base URI for the application's SCIM-compatible API.\n"
                }
            },
            "type": "object",
            "required": [
                "idpUid",
                "remoteUri"
            ]
        },
        "cloudflare:index/AccessApplicationScimConfigAuthentication:AccessApplicationScimConfigAuthentication": {
            "properties": {
                "authorizationUrl": {
                    "type": "string",
                    "description": "URL used to generate the auth code used during token generation.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Client ID used to authenticate when generating a token for authenticating with the remote SCIM service.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Secret used to authenticate when generating a token for authenticating with the remove SCIM service.\n",
                    "secret": true
                },
                "password": {
                    "type": "string",
                    "description": "Password used to authenticate with the remote SCIM service.\n",
                    "secret": true
                },
                "scheme": {
                    "type": "string",
                    "description": "The authentication scheme to use when making SCIM requests to this application.\nAvailable values: \"httpbasic\", \"oauthbearertoken\", \"oauth2\", \"access*service*token\".\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authorization scopes to request when generating the token used to authenticate with the remove SCIM service.\n"
                },
                "token": {
                    "type": "string",
                    "description": "Token used to authenticate with the remote SCIM service.\n",
                    "secret": true
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "URL used to generate the token used to authenticate with the remote SCIM service.\n"
                },
                "user": {
                    "type": "string",
                    "description": "User name used to authenticate with the remote SCIM service.\n"
                }
            },
            "type": "object",
            "required": [
                "scheme"
            ]
        },
        "cloudflare:index/AccessApplicationScimConfigMapping:AccessApplicationScimConfigMapping": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this mapping is enabled.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "A [SCIM filter expression](https://datatracker.ietf.org/doc/html/rfc7644#section-3.4.2.2) that matches resources that should be provisioned to this application.\n"
                },
                "operations": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationScimConfigMappingOperations:AccessApplicationScimConfigMappingOperations",
                    "description": "Whether or not this mapping applies to creates, updates, or deletes.\n"
                },
                "schema": {
                    "type": "string",
                    "description": "Which SCIM resource type this mapping applies to.\n"
                },
                "strictness": {
                    "type": "string",
                    "description": "The level of adherence to outbound resource schemas when provisioning to this mapping. ‘Strict’ removes unknown values, while ‘passthrough’ passes unknown values to the target.\nAvailable values: \"strict\", \"passthrough\".\n"
                },
                "transformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms the resource before provisioning it in the application.\n"
                }
            },
            "type": "object",
            "required": [
                "schema"
            ]
        },
        "cloudflare:index/AccessApplicationScimConfigMappingOperations:AccessApplicationScimConfigMappingOperations": {
            "properties": {
                "create": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to create (POST) operations.\n"
                },
                "delete": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to DELETE operations.\n"
                },
                "update": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to update (PATCH/PUT) operations.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessApplicationTargetCriteria:AccessApplicationTargetCriteria": {
            "properties": {
                "port": {
                    "type": "integer",
                    "description": "The port that the targets use for the chosen communication protocol. A port cannot be assigned to multiple protocols.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The communication protocol your application secures.\nAvailable values: \"SSH\", \"RDP\".\n"
                },
                "targetAttributes": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Contains a map of target attribute keys to target attribute values.\n"
                }
            },
            "type": "object",
            "required": [
                "port",
                "protocol",
                "targetAttributes"
            ]
        },
        "cloudflare:index/AccessGroupExclude:AccessGroupExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeAnyValidServiceToken:AccessGroupExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeAuthContext:AccessGroupExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeAuthMethod:AccessGroupExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeAzureAd:AccessGroupExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeCertificate:AccessGroupExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeCommonName:AccessGroupExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeDevicePosture:AccessGroupExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeEmail:AccessGroupExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeEmailDomain:AccessGroupExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeEmailList:AccessGroupExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeEveryone:AccessGroupExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeExternalEvaluation:AccessGroupExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeGeo:AccessGroupExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeGithubOrganization:AccessGroupExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeGroup:AccessGroupExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeGsuite:AccessGroupExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeIp:AccessGroupExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeIpList:AccessGroupExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeLinkedAppToken:AccessGroupExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeLoginMethod:AccessGroupExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeOidc:AccessGroupExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeOkta:AccessGroupExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeSaml:AccessGroupExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeServiceToken:AccessGroupExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/AccessGroupExcludeUserRiskScore:AccessGroupExcludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessGroupExcludeAnyValidServiceToken:AccessGroupExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupExcludeAuthContext:AccessGroupExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupExcludeAuthMethod:AccessGroupExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessGroupExcludeAzureAd:AccessGroupExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupExcludeCertificate:AccessGroupExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupExcludeCommonName:AccessGroupExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessGroupExcludeDevicePosture:AccessGroupExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessGroupExcludeEmail:AccessGroupExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessGroupExcludeEmailDomain:AccessGroupExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessGroupExcludeEmailList:AccessGroupExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupExcludeEveryone:AccessGroupExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupExcludeExternalEvaluation:AccessGroupExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessGroupExcludeGeo:AccessGroupExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessGroupExcludeGithubOrganization:AccessGroupExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessGroupExcludeGroup:AccessGroupExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupExcludeGsuite:AccessGroupExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupExcludeIp:AccessGroupExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessGroupExcludeIpList:AccessGroupExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupExcludeLinkedAppToken:AccessGroupExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessGroupExcludeLoginMethod:AccessGroupExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupExcludeOidc:AccessGroupExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupExcludeOkta:AccessGroupExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessGroupExcludeSaml:AccessGroupExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupExcludeServiceToken:AccessGroupExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessGroupExcludeUserRiskScore:AccessGroupExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/AccessGroupInclude:AccessGroupInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeAnyValidServiceToken:AccessGroupIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeAuthContext:AccessGroupIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeAuthMethod:AccessGroupIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeAzureAd:AccessGroupIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeCertificate:AccessGroupIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeCommonName:AccessGroupIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeDevicePosture:AccessGroupIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeEmail:AccessGroupIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeEmailDomain:AccessGroupIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeEmailList:AccessGroupIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeEveryone:AccessGroupIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeExternalEvaluation:AccessGroupIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeGeo:AccessGroupIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeGithubOrganization:AccessGroupIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeGroup:AccessGroupIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeGsuite:AccessGroupIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeIp:AccessGroupIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeIpList:AccessGroupIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeLinkedAppToken:AccessGroupIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeLoginMethod:AccessGroupIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeOidc:AccessGroupIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeOkta:AccessGroupIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeSaml:AccessGroupIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeServiceToken:AccessGroupIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/AccessGroupIncludeUserRiskScore:AccessGroupIncludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessGroupIncludeAnyValidServiceToken:AccessGroupIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupIncludeAuthContext:AccessGroupIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupIncludeAuthMethod:AccessGroupIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessGroupIncludeAzureAd:AccessGroupIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupIncludeCertificate:AccessGroupIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupIncludeCommonName:AccessGroupIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessGroupIncludeDevicePosture:AccessGroupIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessGroupIncludeEmail:AccessGroupIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessGroupIncludeEmailDomain:AccessGroupIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessGroupIncludeEmailList:AccessGroupIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupIncludeEveryone:AccessGroupIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupIncludeExternalEvaluation:AccessGroupIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessGroupIncludeGeo:AccessGroupIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessGroupIncludeGithubOrganization:AccessGroupIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessGroupIncludeGroup:AccessGroupIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupIncludeGsuite:AccessGroupIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupIncludeIp:AccessGroupIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessGroupIncludeIpList:AccessGroupIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupIncludeLinkedAppToken:AccessGroupIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessGroupIncludeLoginMethod:AccessGroupIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupIncludeOidc:AccessGroupIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupIncludeOkta:AccessGroupIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessGroupIncludeSaml:AccessGroupIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupIncludeServiceToken:AccessGroupIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessGroupIncludeUserRiskScore:AccessGroupIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/AccessGroupRequire:AccessGroupRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireAnyValidServiceToken:AccessGroupRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireAuthContext:AccessGroupRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireAuthMethod:AccessGroupRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireAzureAd:AccessGroupRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireCertificate:AccessGroupRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireCommonName:AccessGroupRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireDevicePosture:AccessGroupRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireEmail:AccessGroupRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireEmailDomain:AccessGroupRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireEmailList:AccessGroupRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireEveryone:AccessGroupRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireExternalEvaluation:AccessGroupRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireGeo:AccessGroupRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireGithubOrganization:AccessGroupRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireGroup:AccessGroupRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireGsuite:AccessGroupRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireIp:AccessGroupRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireIpList:AccessGroupRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireLinkedAppToken:AccessGroupRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireLoginMethod:AccessGroupRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireOidc:AccessGroupRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireOkta:AccessGroupRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireSaml:AccessGroupRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireServiceToken:AccessGroupRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/AccessGroupRequireUserRiskScore:AccessGroupRequireUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessGroupRequireAnyValidServiceToken:AccessGroupRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupRequireAuthContext:AccessGroupRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupRequireAuthMethod:AccessGroupRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessGroupRequireAzureAd:AccessGroupRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupRequireCertificate:AccessGroupRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupRequireCommonName:AccessGroupRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessGroupRequireDevicePosture:AccessGroupRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessGroupRequireEmail:AccessGroupRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessGroupRequireEmailDomain:AccessGroupRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessGroupRequireEmailList:AccessGroupRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupRequireEveryone:AccessGroupRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessGroupRequireExternalEvaluation:AccessGroupRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessGroupRequireGeo:AccessGroupRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessGroupRequireGithubOrganization:AccessGroupRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessGroupRequireGroup:AccessGroupRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupRequireGsuite:AccessGroupRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupRequireIp:AccessGroupRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessGroupRequireIpList:AccessGroupRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupRequireLinkedAppToken:AccessGroupRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessGroupRequireLoginMethod:AccessGroupRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessGroupRequireOidc:AccessGroupRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupRequireOkta:AccessGroupRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessGroupRequireSaml:AccessGroupRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessGroupRequireServiceToken:AccessGroupRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessGroupRequireUserRiskScore:AccessGroupRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/AccessIdentityProviderConfig:AccessIdentityProviderConfig": {
            "properties": {
                "appsDomain": {
                    "type": "string",
                    "description": "Your companies TLD\n"
                },
                "attributes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of SAML attribute names that will be added to your signed JWT token and can be used in SAML policy rules.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" authorizationEndpoint \" pulumi-lang-dotnet=\" AuthorizationEndpoint \" pulumi-lang-go=\" authorizationEndpoint \" pulumi-lang-python=\" authorization_endpoint \" pulumi-lang-yaml=\" authorizationEndpoint \" pulumi-lang-java=\" authorizationEndpoint \"\u003e authorizationEndpoint \u003c/span\u003eURL of your IdP\n"
                },
                "authorizationServerId": {
                    "type": "string",
                    "description": "Your okta authorization server id\n"
                },
                "centrifyAccount": {
                    "type": "string",
                    "description": "Your centrify account url\n"
                },
                "centrifyAppId": {
                    "type": "string",
                    "description": "Your centrify app id\n"
                },
                "certsUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" jwksUri \" pulumi-lang-dotnet=\" JwksUri \" pulumi-lang-go=\" jwksUri \" pulumi-lang-python=\" jwks_uri \" pulumi-lang-yaml=\" jwksUri \" pulumi-lang-java=\" jwksUri \"\u003e jwksUri \u003c/span\u003eendpoint of your IdP to allow the IdP keys to sign the tokens\n"
                },
                "claims": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom claims\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your OAuth Client ID\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Your OAuth Client Secret\n",
                    "secret": true
                },
                "conditionalAccessEnabled": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load authentication contexts from your account\n"
                },
                "directoryId": {
                    "type": "string",
                    "description": "Your Azure directory uuid\n"
                },
                "emailAttributeName": {
                    "type": "string",
                    "description": "The attribute name for email in the SAML response.\n"
                },
                "emailClaimName": {
                    "type": "string",
                    "description": "The claim name for email in the\u003cspan pulumi-lang-nodejs=\" idToken \" pulumi-lang-dotnet=\" IdToken \" pulumi-lang-go=\" idToken \" pulumi-lang-python=\" id_token \" pulumi-lang-yaml=\" idToken \" pulumi-lang-java=\" idToken \"\u003e idToken \u003c/span\u003eresponse.\n"
                },
                "headerAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessIdentityProviderConfigHeaderAttribute:AccessIdentityProviderConfigHeaderAttribute"
                    },
                    "description": "Add a list of attribute names that will be returned in the response header from the Access callback.\n"
                },
                "idpPublicCerts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "X509 certificate to verify the signature in the SAML authentication response\n"
                },
                "issuerUrl": {
                    "type": "string",
                    "description": "IdP Entity ID or Issuer URL\n"
                },
                "oktaAccount": {
                    "type": "string",
                    "description": "Your okta account url\n"
                },
                "oneloginAccount": {
                    "type": "string",
                    "description": "Your OneLogin account url\n"
                },
                "pingEnvId": {
                    "type": "string",
                    "description": "Your PingOne environment identifier\n"
                },
                "pkceEnabled": {
                    "type": "boolean",
                    "description": "Enable Proof Key for Code Exchange (PKCE)\n"
                },
                "prompt": {
                    "type": "string",
                    "description": "Indicates the type of user interaction that is required. prompt=login forces the user to enter their credentials on that request, negating single-sign on. prompt=none is the opposite. It ensures that the user isn't presented with any interactive prompt. If the request can't be completed silently by using single-sign on, the Microsoft identity platform returns an interaction*required error. prompt=select*account interrupts single sign-on providing account selection experience listing all the accounts either in session or any remembered account or an option to choose to use a different account altogether.\nAvailable values: \"login\", \u003cspan pulumi-lang-nodejs=\"\"selectAccount\"\" pulumi-lang-dotnet=\"\"SelectAccount\"\" pulumi-lang-go=\"\"selectAccount\"\" pulumi-lang-python=\"\"select_account\"\" pulumi-lang-yaml=\"\"selectAccount\"\" pulumi-lang-java=\"\"selectAccount\"\"\u003e\"selectAccount\"\u003c/span\u003e, \"none\".\n"
                },
                "redirectUrl": {
                    "type": "string"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "OAuth scopes\n"
                },
                "signRequest": {
                    "type": "boolean",
                    "description": "Sign the SAML authentication request with Access credentials. To verify the signature, use the public key from the Access certs endpoints.\n"
                },
                "ssoTargetUrl": {
                    "type": "string",
                    "description": "URL to send the SAML authentication requests to\n"
                },
                "supportGroups": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load groups from your account\n"
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" tokenEndpoint \" pulumi-lang-dotnet=\" TokenEndpoint \" pulumi-lang-go=\" tokenEndpoint \" pulumi-lang-python=\" token_endpoint \" pulumi-lang-yaml=\" tokenEndpoint \" pulumi-lang-java=\" tokenEndpoint \"\u003e tokenEndpoint \u003c/span\u003eURL of your IdP\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "redirectUrl"
                    ]
                }
            }
        },
        "cloudflare:index/AccessIdentityProviderConfigHeaderAttribute:AccessIdentityProviderConfigHeaderAttribute": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "attribute name from the IDP\n"
                },
                "headerName": {
                    "type": "string",
                    "description": "header that will be added on the request to the origin\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessIdentityProviderScimConfig:AccessIdentityProviderScimConfig": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "A flag to enable or disable SCIM for the identity provider.\n"
                },
                "identityUpdateBehavior": {
                    "type": "string",
                    "description": "Indicates how a SCIM event updates a user identity used for policy evaluation. Use \"automatic\" to automatically update a user's identity and augment it with fields from the SCIM user resource. Use \"reauth\" to force re-authentication on group membership updates, user identity update will only occur after successful re-authentication. With \"reauth\" identities will not contain fields from the SCIM user resource. With \"no*action\" identities will not be changed by SCIM updates in any way and users will not be prompted to reauthenticate.\nAvailable values: \"automatic\", \"reauth\", \"no*action\".\n"
                },
                "scimBaseUrl": {
                    "type": "string",
                    "description": "The base URL of Cloudflare's SCIM V2.0 API endpoint.\n"
                },
                "seatDeprovision": {
                    "type": "boolean",
                    "description": "A flag to remove a user's seat in Zero Trust when they have been deprovisioned in the Identity Provider.  This cannot be enabled unless\u003cspan pulumi-lang-nodejs=\" userDeprovision \" pulumi-lang-dotnet=\" UserDeprovision \" pulumi-lang-go=\" userDeprovision \" pulumi-lang-python=\" user_deprovision \" pulumi-lang-yaml=\" userDeprovision \" pulumi-lang-java=\" userDeprovision \"\u003e userDeprovision \u003c/span\u003eis also enabled.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "A read-only token generated when the SCIM integration is enabled for the first time.  It is redacted on subsequent requests.  If you lose this you will need to refresh it at /access/identity*providers/:idpID/refresh*scim_secret.\n",
                    "secret": true
                },
                "userDeprovision": {
                    "type": "boolean",
                    "description": "A flag to enable revoking a user's session in Access and Gateway when they have been deprovisioned in the Identity Provider.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "identityUpdateBehavior",
                        "scimBaseUrl",
                        "seatDeprovision",
                        "secret",
                        "userDeprovision"
                    ]
                }
            }
        },
        "cloudflare:index/AccessMutualTlsHostnameSettingsSetting:AccessMutualTlsHostnameSettingsSetting": {
            "properties": {
                "chinaNetwork": {
                    "type": "boolean",
                    "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n"
                },
                "clientCertificateForwarding": {
                    "type": "boolean",
                    "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname that these settings apply to.\n"
                }
            },
            "type": "object",
            "required": [
                "chinaNetwork",
                "clientCertificateForwarding",
                "hostname"
            ]
        },
        "cloudflare:index/AccessOrganizationCustomPages:AccessOrganizationCustomPages": {
            "properties": {
                "forbidden": {
                    "type": "string",
                    "description": "The uid of the custom page to use when a user is denied access after failing a non-identity rule.\n"
                },
                "identityDenied": {
                    "type": "string",
                    "description": "The uid of the custom page to use when a user is denied access.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessOrganizationLoginDesign:AccessOrganizationLoginDesign": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color on your login page.\n"
                },
                "footerText": {
                    "type": "string",
                    "description": "The text at the bottom of your login page.\n"
                },
                "headerText": {
                    "type": "string",
                    "description": "The text at the top of your login page.\n"
                },
                "logoPath": {
                    "type": "string",
                    "description": "The URL of the logo on your login page.\n"
                },
                "textColor": {
                    "type": "string",
                    "description": "The text color on your login page.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessOrganizationMfaConfig:AccessOrganizationMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with. \u003cspan pulumi-lang-nodejs=\"`sshPivKey`\" pulumi-lang-dotnet=\"`SshPivKey`\" pulumi-lang-go=\"`sshPivKey`\" pulumi-lang-python=\"`ssh_piv_key`\" pulumi-lang-yaml=\"`sshPivKey`\" pulumi-lang-java=\"`sshPivKey`\"\u003e`sshPivKey`\u003c/span\u003e is only relevant for infrastructure applications.\n"
                },
                "amrMatchingSessionDuration": {
                    "type": "string",
                    "description": "Allows a user to skip MFA via Authentication Method Reference (AMR) matching when the AMR claim provided by the IdP the user used to authenticate contains \"mfa\". Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days).\n"
                },
                "requiredAaguids": {
                    "type": "string",
                    "description": "Specifies a Cloudflare List of required FIDO2 authenticator device AAGUIDs.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessOrganizationMfaSshPivKeyRequirements:AccessOrganizationMfaSshPivKeyRequirements": {
            "properties": {
                "pinPolicy": {
                    "type": "string",
                    "description": "Defines when a PIN is required to use the SSH key. Valid values: \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e (no PIN required), \u003cspan pulumi-lang-nodejs=\"`once`\" pulumi-lang-dotnet=\"`Once`\" pulumi-lang-go=\"`once`\" pulumi-lang-python=\"`once`\" pulumi-lang-yaml=\"`once`\" pulumi-lang-java=\"`once`\"\u003e`once`\u003c/span\u003e (PIN required once per session), \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e (PIN required for each use).\nAvailable values: \"never\", \"once\", \"always\".\n"
                },
                "requireFipsDevice": {
                    "type": "boolean",
                    "description": "Requires the SSH PIV key to be stored on a FIPS 140-2 Level 1 or higher validated device.\n"
                },
                "sshKeySizes": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Specifies the allowed SSH key sizes in bits. Valid sizes depend on key type. Ed25519 has a fixed key size and does not accept this parameter.\n"
                },
                "sshKeyTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the allowed SSH key types. Valid values are \u003cspan pulumi-lang-nodejs=\"`ecdsa`\" pulumi-lang-dotnet=\"`Ecdsa`\" pulumi-lang-go=\"`ecdsa`\" pulumi-lang-python=\"`ecdsa`\" pulumi-lang-yaml=\"`ecdsa`\" pulumi-lang-java=\"`ecdsa`\"\u003e`ecdsa`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ed25519`\" pulumi-lang-dotnet=\"`Ed25519`\" pulumi-lang-go=\"`ed25519`\" pulumi-lang-python=\"`ed25519`\" pulumi-lang-yaml=\"`ed25519`\" pulumi-lang-java=\"`ed25519`\"\u003e`ed25519`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`rsa`\" pulumi-lang-dotnet=\"`Rsa`\" pulumi-lang-go=\"`rsa`\" pulumi-lang-python=\"`rsa`\" pulumi-lang-yaml=\"`rsa`\" pulumi-lang-java=\"`rsa`\"\u003e`rsa`\u003c/span\u003e.\n"
                },
                "touchPolicy": {
                    "type": "string",
                    "description": "Defines when physical touch is required to use the SSH key. Valid values: \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e (no touch required), \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e (touch required for each use), \u003cspan pulumi-lang-nodejs=\"`cached`\" pulumi-lang-dotnet=\"`Cached`\" pulumi-lang-go=\"`cached`\" pulumi-lang-python=\"`cached`\" pulumi-lang-yaml=\"`cached`\" pulumi-lang-java=\"`cached`\"\u003e`cached`\u003c/span\u003e (touch cached for 15 seconds).\nAvailable values: \"never\", \"always\", \"cached\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyApprovalGroup:AccessPolicyApprovalGroup": {
            "properties": {
                "approvalsNeeded": {
                    "type": "number",
                    "description": "The number of approvals needed to obtain access.\n"
                },
                "emailAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of emails that can approve the access request.\n"
                },
                "emailListUuid": {
                    "type": "string",
                    "description": "The UUID of an re-usable email list.\n"
                }
            },
            "type": "object",
            "required": [
                "approvalsNeeded"
            ]
        },
        "cloudflare:index/AccessPolicyConnectionRules:AccessPolicyConnectionRules": {
            "properties": {
                "rdp": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyConnectionRulesRdp:AccessPolicyConnectionRulesRdp",
                    "description": "The RDP-specific rules that define clipboard behavior for RDP connections.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyConnectionRulesRdp:AccessPolicyConnectionRulesRdp": {
            "properties": {
                "allowedClipboardLocalToRemoteFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from local machine to remote RDP session.\n"
                },
                "allowedClipboardRemoteToLocalFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from remote RDP session to local machine.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyExclude:AccessPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeAnyValidServiceToken:AccessPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeAuthContext:AccessPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeAuthMethod:AccessPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeAzureAd:AccessPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeCertificate:AccessPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeCommonName:AccessPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeDevicePosture:AccessPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeEmail:AccessPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeEmailDomain:AccessPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeEmailList:AccessPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeEveryone:AccessPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeExternalEvaluation:AccessPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeGeo:AccessPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeGithubOrganization:AccessPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeGroup:AccessPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeGsuite:AccessPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeIp:AccessPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeIpList:AccessPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeLinkedAppToken:AccessPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeLoginMethod:AccessPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeOidc:AccessPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeOkta:AccessPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeSaml:AccessPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeServiceToken:AccessPolicyExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyExcludeUserRiskScore:AccessPolicyExcludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyExcludeAnyValidServiceToken:AccessPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyExcludeAuthContext:AccessPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeAuthMethod:AccessPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeAzureAd:AccessPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeCertificate:AccessPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyExcludeCommonName:AccessPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeDevicePosture:AccessPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeEmail:AccessPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeEmailDomain:AccessPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeEmailList:AccessPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeEveryone:AccessPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyExcludeExternalEvaluation:AccessPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeGeo:AccessPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeGithubOrganization:AccessPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeGroup:AccessPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeGsuite:AccessPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeIp:AccessPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeIpList:AccessPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeLinkedAppToken:AccessPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeLoginMethod:AccessPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeOidc:AccessPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeOkta:AccessPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeSaml:AccessPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeServiceToken:AccessPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessPolicyExcludeUserRiskScore:AccessPolicyExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/AccessPolicyInclude:AccessPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeAnyValidServiceToken:AccessPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeAuthContext:AccessPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeAuthMethod:AccessPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeAzureAd:AccessPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeCertificate:AccessPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeCommonName:AccessPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeDevicePosture:AccessPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeEmail:AccessPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeEmailDomain:AccessPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeEmailList:AccessPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeEveryone:AccessPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeExternalEvaluation:AccessPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeGeo:AccessPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeGithubOrganization:AccessPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeGroup:AccessPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeGsuite:AccessPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeIp:AccessPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeIpList:AccessPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeLinkedAppToken:AccessPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeLoginMethod:AccessPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeOidc:AccessPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeOkta:AccessPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeSaml:AccessPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeServiceToken:AccessPolicyIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyIncludeUserRiskScore:AccessPolicyIncludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyIncludeAnyValidServiceToken:AccessPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyIncludeAuthContext:AccessPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeAuthMethod:AccessPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeAzureAd:AccessPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeCertificate:AccessPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyIncludeCommonName:AccessPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeDevicePosture:AccessPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeEmail:AccessPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeEmailDomain:AccessPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeEmailList:AccessPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeEveryone:AccessPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyIncludeExternalEvaluation:AccessPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeGeo:AccessPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeGithubOrganization:AccessPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeGroup:AccessPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeGsuite:AccessPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeIp:AccessPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeIpList:AccessPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeLinkedAppToken:AccessPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeLoginMethod:AccessPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeOidc:AccessPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeOkta:AccessPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeSaml:AccessPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeServiceToken:AccessPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessPolicyIncludeUserRiskScore:AccessPolicyIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/AccessPolicyMfaConfig:AccessPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Indicates whether to disable MFA for this resource. This option is available at the application and policy level.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyRequire:AccessPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireAnyValidServiceToken:AccessPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireAuthContext:AccessPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireAuthMethod:AccessPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireAzureAd:AccessPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireCertificate:AccessPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireCommonName:AccessPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireDevicePosture:AccessPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireEmail:AccessPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireEmailDomain:AccessPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireEmailList:AccessPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireEveryone:AccessPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireExternalEvaluation:AccessPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireGeo:AccessPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireGithubOrganization:AccessPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireGroup:AccessPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireGsuite:AccessPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireIp:AccessPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireIpList:AccessPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireLinkedAppToken:AccessPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireLoginMethod:AccessPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireOidc:AccessPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireOkta:AccessPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireSaml:AccessPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireServiceToken:AccessPolicyRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyRequireUserRiskScore:AccessPolicyRequireUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessPolicyRequireAnyValidServiceToken:AccessPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyRequireAuthContext:AccessPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyRequireAuthMethod:AccessPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/AccessPolicyRequireAzureAd:AccessPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyRequireCertificate:AccessPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyRequireCommonName:AccessPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/AccessPolicyRequireDevicePosture:AccessPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/AccessPolicyRequireEmail:AccessPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/AccessPolicyRequireEmailDomain:AccessPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/AccessPolicyRequireEmailList:AccessPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyRequireEveryone:AccessPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/AccessPolicyRequireExternalEvaluation:AccessPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/AccessPolicyRequireGeo:AccessPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/AccessPolicyRequireGithubOrganization:AccessPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessPolicyRequireGroup:AccessPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyRequireGsuite:AccessPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyRequireIp:AccessPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/AccessPolicyRequireIpList:AccessPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyRequireLinkedAppToken:AccessPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/AccessPolicyRequireLoginMethod:AccessPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccessPolicyRequireOidc:AccessPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyRequireOkta:AccessPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/AccessPolicyRequireSaml:AccessPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/AccessPolicyRequireServiceToken:AccessPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/AccessPolicyRequireUserRiskScore:AccessPolicyRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/AccessRuleConfiguration:AccessRuleConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e when specifying an IP address in the rule.\nAvailable values: \"ip\", \"ip6\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e, \"asn\", \"country\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The IP address to match. This address will be compared to the IP address of incoming requests.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccessRuleScope:AccessRuleScope": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Defines the scope of the rule.\nAvailable values: \"user\", \"organization\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "email",
                        "id",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/AccountDnsSettingsZoneDefaults:AccountDnsSettingsZoneDefaults": {
            "properties": {
                "flattenAllCnames": {
                    "type": "boolean",
                    "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.\n"
                },
                "internalDns": {
                    "$ref": "#/types/cloudflare:index/AccountDnsSettingsZoneDefaultsInternalDns:AccountDnsSettingsZoneDefaultsInternalDns",
                    "description": "Settings for this internal zone.\n"
                },
                "multiProvider": {
                    "type": "boolean",
                    "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.\n"
                },
                "nameservers": {
                    "$ref": "#/types/cloudflare:index/AccountDnsSettingsZoneDefaultsNameservers:AccountDnsSettingsZoneDefaultsNameservers",
                    "description": "Settings determining the nameservers through which the zone should be available.\n"
                },
                "nsTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the zone's nameserver (NS) records.\n"
                },
                "secondaryOverrides": {
                    "type": "boolean",
                    "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.\n"
                },
                "soa": {
                    "$ref": "#/types/cloudflare:index/AccountDnsSettingsZoneDefaultsSoa:AccountDnsSettingsZoneDefaultsSoa",
                    "description": "Components of the zone's SOA record.\n"
                },
                "zoneMode": {
                    "type": "string",
                    "description": "Whether the zone mode is a regular or CDN/DNS only zone.\nAvailable values: \"standard\", \"cdn*only\", \"dns*only\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccountDnsSettingsZoneDefaultsInternalDns:AccountDnsSettingsZoneDefaultsInternalDns": {
            "properties": {
                "referenceZoneId": {
                    "type": "string",
                    "description": "The ID of the zone to fallback to.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccountDnsSettingsZoneDefaultsNameservers:AccountDnsSettingsZoneDefaultsNameservers": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Nameserver type\nAvailable values: \"cloudflare.standard\", \"cloudflare.standard.random\", \"custom.account\", \"custom.tenant\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccountDnsSettingsZoneDefaultsSoa:AccountDnsSettingsZoneDefaultsSoa": {
            "properties": {
                "expire": {
                    "type": "number",
                    "description": "Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.\n"
                },
                "minTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) for negative caching of records within the zone.\n"
                },
                "mname": {
                    "type": "string",
                    "description": "The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.\n"
                },
                "refresh": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.\n"
                },
                "retry": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.\n"
                },
                "rname": {
                    "type": "string",
                    "description": "The email address of the zone administrator, with the first label representing the local part of the email address.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the SOA record itself.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccountManagedBy:AccountManagedBy": {
            "properties": {
                "parentOrgId": {
                    "type": "string",
                    "description": "ID of the parent Organization, if one exists\n"
                },
                "parentOrgName": {
                    "type": "string",
                    "description": "Name of the parent Organization, if one exists\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "parentOrgId",
                        "parentOrgName"
                    ]
                }
            }
        },
        "cloudflare:index/AccountMemberPolicy:AccountMemberPolicy": {
            "properties": {
                "access": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountMemberPolicyPermissionGroup:AccountMemberPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resourceGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountMemberPolicyResourceGroup:AccountMemberPolicyResourceGroup"
                    },
                    "description": "A list of resource groups that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "permissionGroups",
                "resourceGroups"
            ]
        },
        "cloudflare:index/AccountMemberPolicyPermissionGroup:AccountMemberPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccountMemberPolicyResourceGroup:AccountMemberPolicyResourceGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccountMemberUser:AccountMemberUser": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "firstName": {
                    "type": "string",
                    "description": "User's first name\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "lastName": {
                    "type": "string",
                    "description": "User's last name\n"
                },
                "twoFactorAuthenticationEnabled": {
                    "type": "boolean",
                    "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "email",
                        "firstName",
                        "id",
                        "lastName",
                        "twoFactorAuthenticationEnabled"
                    ]
                }
            }
        },
        "cloudflare:index/AccountSettings:AccountSettings": {
            "properties": {
                "abuseContactEmail": {
                    "type": "string",
                    "description": "Sets an abuse contact email to notify for abuse reports.\n"
                },
                "enforceTwofactor": {
                    "type": "boolean",
                    "description": "Indicates whether membership in this account requires that\nTwo-Factor Authentication is enabled\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enforceTwofactor"
                    ]
                }
            }
        },
        "cloudflare:index/AccountSubscriptionRatePlan:AccountSubscriptionRatePlan": {
            "properties": {
                "currency": {
                    "type": "string",
                    "description": "The currency applied to the rate plan subscription.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "Whether this rate plan is managed externally from Cloudflare.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the rate plan.\n"
                },
                "isContract": {
                    "type": "boolean",
                    "description": "Whether a rate plan is enterprise-based (or newly adopted term contract).\n"
                },
                "publicName": {
                    "type": "string",
                    "description": "The full name of the rate plan.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope that this rate plan applies to.\n"
                },
                "sets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of sets this rate plan applies to. Returns array of strings.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "currency",
                        "externallyManaged",
                        "isContract",
                        "publicName",
                        "scope",
                        "sets"
                    ]
                }
            }
        },
        "cloudflare:index/AccountTokenCondition:AccountTokenCondition": {
            "properties": {
                "requestIp": {
                    "$ref": "#/types/cloudflare:index/AccountTokenConditionRequestIp:AccountTokenConditionRequestIp",
                    "description": "Client IP restrictions.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccountTokenConditionRequestIp:AccountTokenConditionRequestIp": {
            "properties": {
                "ins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                },
                "notIns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AccountTokenPolicy:AccountTokenPolicy": {
            "properties": {
                "effect": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountTokenPolicyPermissionGroup:AccountTokenPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resources": {
                    "type": "string",
                    "description": "A json object representing the resources that are specified to the policy.\n"
                }
            },
            "type": "object",
            "required": [
                "effect",
                "permissionGroups",
                "resources"
            ]
        },
        "cloudflare:index/AccountTokenPolicyPermissionGroup:AccountTokenPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AccountUnit:AccountUnit": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Tenant unit ID\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "cloudflare:index/AddressMapMembership:AddressMapMembership": {
            "properties": {
                "identifier": {
                    "type": "string",
                    "description": "The identifier for the membership (eg. a zone or account tag).\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of the membership.\nAvailable values: \"zone\", \"account\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AiGatewayDlp:AiGatewayDlp": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Available values: \"BLOCK\", \"FLAG\".\n"
                },
                "enabled": {
                    "type": "boolean"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDlpPolicy:AiGatewayDlpPolicy"
                    }
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ]
        },
        "cloudflare:index/AiGatewayDlpPolicy:AiGatewayDlpPolicy": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Available values: \"FLAG\", \"BLOCK\".\n"
                },
                "checks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "action",
                "checks",
                "enabled",
                "id",
                "profiles"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingDeployment:AiGatewayDynamicRoutingDeployment": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "deploymentId": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdAt",
                        "deploymentId",
                        "versionId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingElement:AiGatewayDynamicRoutingElement": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "outputs": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementOutputs:AiGatewayDynamicRoutingElementOutputs"
                },
                "properties": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementProperties:AiGatewayDynamicRoutingElementProperties"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"start\", \"conditional\", \"percentage\", \"rate\", \"model\", \"end\".\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "outputs",
                "type"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementOutputs:AiGatewayDynamicRoutingElementOutputs": {
            "properties": {
                "elementId": {
                    "type": "string"
                },
                "fallback": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementOutputsFallback:AiGatewayDynamicRoutingElementOutputsFallback"
                },
                "false": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementOutputsFalse:AiGatewayDynamicRoutingElementOutputsFalse"
                },
                "next": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementOutputsNext:AiGatewayDynamicRoutingElementOutputsNext"
                },
                "success": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementOutputsSuccess:AiGatewayDynamicRoutingElementOutputsSuccess"
                },
                "true": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElementOutputsTrue:AiGatewayDynamicRoutingElementOutputsTrue"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementOutputsFallback:AiGatewayDynamicRoutingElementOutputsFallback": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementOutputsFalse:AiGatewayDynamicRoutingElementOutputsFalse": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementOutputsNext:AiGatewayDynamicRoutingElementOutputsNext": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementOutputsSuccess:AiGatewayDynamicRoutingElementOutputsSuccess": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementOutputsTrue:AiGatewayDynamicRoutingElementOutputsTrue": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ]
        },
        "cloudflare:index/AiGatewayDynamicRoutingElementProperties:AiGatewayDynamicRoutingElementProperties": {
            "properties": {
                "aiGatewayDynamicRoutingProvider": {
                    "type": "string"
                },
                "conditions": {
                    "type": "string"
                },
                "key": {
                    "type": "string"
                },
                "limit": {
                    "type": "number"
                },
                "limitType": {
                    "type": "string",
                    "description": "Available values: \"count\", \"cost\".\n"
                },
                "model": {
                    "type": "string"
                },
                "retries": {
                    "type": "number"
                },
                "timeout": {
                    "type": "number"
                },
                "window": {
                    "type": "number"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AiGatewayDynamicRoutingRoute:AiGatewayDynamicRoutingRoute": {
            "properties": {
                "accountTag": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "deployment": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteDeployment:AiGatewayDynamicRoutingRouteDeployment"
                },
                "elements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElement:AiGatewayDynamicRoutingRouteElement"
                    }
                },
                "gatewayId": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "version": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteVersion:AiGatewayDynamicRoutingRouteVersion"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "accountTag",
                        "createdAt",
                        "deployment",
                        "elements",
                        "gatewayId",
                        "id",
                        "modifiedAt",
                        "name",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteDeployment:AiGatewayDynamicRoutingRouteDeployment": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "deploymentId": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdAt",
                        "deploymentId",
                        "versionId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElement:AiGatewayDynamicRoutingRouteElement": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "outputs": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputs:AiGatewayDynamicRoutingRouteElementOutputs"
                },
                "properties": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementProperties:AiGatewayDynamicRoutingRouteElementProperties"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"start\", \"conditional\", \"percentage\", \"rate\", \"model\", \"end\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "outputs",
                        "properties",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputs:AiGatewayDynamicRoutingRouteElementOutputs": {
            "properties": {
                "elementId": {
                    "type": "string"
                },
                "fallback": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsFallback:AiGatewayDynamicRoutingRouteElementOutputsFallback"
                },
                "false": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsFalse:AiGatewayDynamicRoutingRouteElementOutputsFalse"
                },
                "next": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsNext:AiGatewayDynamicRoutingRouteElementOutputsNext"
                },
                "success": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsSuccess:AiGatewayDynamicRoutingRouteElementOutputsSuccess"
                },
                "true": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsTrue:AiGatewayDynamicRoutingRouteElementOutputsTrue"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "elementId",
                        "fallback",
                        "false",
                        "next",
                        "success",
                        "true"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsFallback:AiGatewayDynamicRoutingRouteElementOutputsFallback": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "elementId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsFalse:AiGatewayDynamicRoutingRouteElementOutputsFalse": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "elementId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsNext:AiGatewayDynamicRoutingRouteElementOutputsNext": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "elementId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsSuccess:AiGatewayDynamicRoutingRouteElementOutputsSuccess": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "elementId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementOutputsTrue:AiGatewayDynamicRoutingRouteElementOutputsTrue": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "elementId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteElementProperties:AiGatewayDynamicRoutingRouteElementProperties": {
            "properties": {
                "aiGatewayDynamicRoutingProvider": {
                    "type": "string"
                },
                "conditions": {
                    "type": "string"
                },
                "key": {
                    "type": "string"
                },
                "limit": {
                    "type": "number"
                },
                "limitType": {
                    "type": "string",
                    "description": "Available values: \"count\", \"cost\".\n"
                },
                "model": {
                    "type": "string"
                },
                "retries": {
                    "type": "number"
                },
                "timeout": {
                    "type": "number"
                },
                "window": {
                    "type": "number"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aiGatewayDynamicRoutingProvider",
                        "conditions",
                        "key",
                        "limit",
                        "limitType",
                        "model",
                        "retries",
                        "timeout",
                        "window"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingRouteVersion:AiGatewayDynamicRoutingRouteVersion": {
            "properties": {
                "active": {
                    "type": "string",
                    "description": "Available values: \"true\", \"false\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "data": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "active",
                        "createdAt",
                        "data",
                        "versionId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayDynamicRoutingVersion:AiGatewayDynamicRoutingVersion": {
            "properties": {
                "active": {
                    "type": "string",
                    "description": "Available values: \"true\", \"false\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "data": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "active",
                        "createdAt",
                        "data",
                        "versionId"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayOtel:AiGatewayOtel": {
            "properties": {
                "authorization": {
                    "type": "string"
                },
                "contentType": {
                    "type": "string",
                    "description": "Available values: \"json\", \"protobuf\".\n"
                },
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "url": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "authorization",
                "headers",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "authorization",
                        "contentType",
                        "headers",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/AiGatewayStripe:AiGatewayStripe": {
            "properties": {
                "authorization": {
                    "type": "string"
                },
                "usageEvents": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayStripeUsageEvent:AiGatewayStripeUsageEvent"
                    }
                }
            },
            "type": "object",
            "required": [
                "authorization",
                "usageEvents"
            ]
        },
        "cloudflare:index/AiGatewayStripeUsageEvent:AiGatewayStripeUsageEvent": {
            "properties": {
                "payload": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "payload"
            ]
        },
        "cloudflare:index/AiSearchInstanceCustomMetadata:AiSearchInstanceCustomMetadata": {
            "properties": {
                "dataType": {
                    "type": "string",
                    "description": "Available values: \"text\", \"number\", \"boolean\", \"datetime\".\n"
                },
                "fieldName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "dataType",
                "fieldName"
            ]
        },
        "cloudflare:index/AiSearchInstanceIndexMethod:AiSearchInstanceIndexMethod": {
            "properties": {
                "keyword": {
                    "type": "boolean",
                    "description": "Enable keyword (BM25) storage backend.\n"
                },
                "vector": {
                    "type": "boolean",
                    "description": "Enable vector (embedding) storage backend.\n"
                }
            },
            "type": "object",
            "required": [
                "keyword",
                "vector"
            ]
        },
        "cloudflare:index/AiSearchInstanceIndexingOptions:AiSearchInstanceIndexingOptions": {
            "properties": {
                "keywordTokenizer": {
                    "type": "string",
                    "description": "Tokenizer used for keyword search indexing. porter provides word-level tokenization with Porter stemming (good for natural language queries). trigram enables character-level substring matching (good for partial matches, code, identifiers). Changing this triggers a full re-index. Defaults to porter.\nAvailable values: \"porter\", \"trigram\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "keywordTokenizer"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceMetadata:AiSearchInstanceMetadata": {
            "properties": {
                "createdFromAisearchWizard": {
                    "type": "boolean"
                },
                "searchForAgents": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceMetadataSearchForAgents:AiSearchInstanceMetadataSearchForAgents"
                },
                "workerDomain": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AiSearchInstanceMetadataSearchForAgents:AiSearchInstanceMetadataSearchForAgents": {
            "properties": {
                "hostname": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string"
                },
                "zoneName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "hostname",
                "zoneId",
                "zoneName"
            ]
        },
        "cloudflare:index/AiSearchInstancePublicEndpointParams:AiSearchInstancePublicEndpointParams": {
            "properties": {
                "authorizedHosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "chatCompletionsEndpoint": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParamsChatCompletionsEndpoint:AiSearchInstancePublicEndpointParamsChatCompletionsEndpoint"
                },
                "enabled": {
                    "type": "boolean"
                },
                "mcp": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParamsMcp:AiSearchInstancePublicEndpointParamsMcp"
                },
                "rateLimit": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParamsRateLimit:AiSearchInstancePublicEndpointParamsRateLimit"
                },
                "searchEndpoint": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParamsSearchEndpoint:AiSearchInstancePublicEndpointParamsSearchEndpoint"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "chatCompletionsEndpoint",
                        "enabled",
                        "mcp",
                        "searchEndpoint"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstancePublicEndpointParamsChatCompletionsEndpoint:AiSearchInstancePublicEndpointParamsChatCompletionsEndpoint": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Disable chat completions endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "disabled"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstancePublicEndpointParamsMcp:AiSearchInstancePublicEndpointParamsMcp": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "Disable MCP endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "disabled"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstancePublicEndpointParamsRateLimit:AiSearchInstancePublicEndpointParamsRateLimit": {
            "properties": {
                "periodMs": {
                    "type": "integer"
                },
                "requests": {
                    "type": "integer"
                },
                "technique": {
                    "type": "string",
                    "description": "Available values: \"fixed\", \"sliding\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/AiSearchInstancePublicEndpointParamsSearchEndpoint:AiSearchInstancePublicEndpointParamsSearchEndpoint": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Disable search endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "disabled"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceRetrievalOptions:AiSearchInstanceRetrievalOptions": {
            "properties": {
                "boostBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceRetrievalOptionsBoostBy:AiSearchInstanceRetrievalOptionsBoostBy"
                    },
                    "description": "Metadata fields to boost search results by. Each entry specifies a metadata field and an optional direction. Direction defaults to 'asc' for numeric fields and 'exists' for text/boolean fields. Fields must match 'timestamp' or a defined custom*metadata field.\n"
                },
                "keywordMatchMode": {
                    "type": "string",
                    "description": "Controls which documents are candidates for BM25 scoring. 'and' restricts candidates to documents containing all query terms; 'or' includes any document containing at least one term, ranked by BM25 relevance. Defaults to 'and'.\nAvailable values: \"and\", \"or\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "keywordMatchMode"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceRetrievalOptionsBoostBy:AiSearchInstanceRetrievalOptionsBoostBy": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Boost direction. 'desc' = higher values rank higher (e.g. newer timestamps). 'asc' = lower values rank higher. 'exists' = boost chunks that have the field. 'not*exists' = boost chunks that lack the field. Optional - defaults to 'asc' for numeric/datetime fields, 'exists' for text/boolean fields.\nAvailable values: \"asc\", \"desc\", \"exists\", \"not*exists\".\n"
                },
                "field": {
                    "type": "string",
                    "description": "Metadata field name to boost by. Use 'timestamp' for document freshness, or any custom*metadata field. Numeric and datetime fields support asc/desc directions; text/boolean fields support exists/not*exists.\n"
                }
            },
            "type": "object",
            "required": [
                "field"
            ]
        },
        "cloudflare:index/AiSearchInstanceSourceParams:AiSearchInstanceSourceParams": {
            "properties": {
                "excludeItems": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of path patterns to exclude. Uses micromatch glob syntax: * matches within a path segment, ** matches across path segments (e.g., /admin/** matches /admin/users and /admin/settings/advanced)\n"
                },
                "includeItems": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of path patterns to include. Uses micromatch glob syntax: * matches within a path segment, ** matches across path segments (e.g., /blog/** matches /blog/post and /blog/2024/post)\n"
                },
                "prefix": {
                    "type": "string"
                },
                "r2Jurisdiction": {
                    "type": "string"
                },
                "webCrawler": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParamsWebCrawler:AiSearchInstanceSourceParamsWebCrawler"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "r2Jurisdiction",
                        "webCrawler"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceSourceParamsWebCrawler:AiSearchInstanceSourceParamsWebCrawler": {
            "properties": {
                "crawlOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerCrawlOptions:AiSearchInstanceSourceParamsWebCrawlerCrawlOptions"
                },
                "parseOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerParseOptions:AiSearchInstanceSourceParamsWebCrawlerParseOptions"
                },
                "parseType": {
                    "type": "string",
                    "description": "Available values: \"sitemap\", \"feed-rss\", \"crawl\".\n"
                },
                "storeOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerStoreOptions:AiSearchInstanceSourceParamsWebCrawlerStoreOptions"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "parseType"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerCrawlOptions:AiSearchInstanceSourceParamsWebCrawlerCrawlOptions": {
            "properties": {
                "depth": {
                    "type": "number"
                },
                "includeExternalLinks": {
                    "type": "boolean"
                },
                "includeSubdomains": {
                    "type": "boolean"
                },
                "maxAge": {
                    "type": "number"
                },
                "source": {
                    "type": "string",
                    "description": "Available values: \"all\", \"sitemaps\", \"links\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "includeExternalLinks",
                        "includeSubdomains",
                        "source"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerParseOptions:AiSearchInstanceSourceParamsWebCrawlerParseOptions": {
            "properties": {
                "contentSelectors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector:AiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector"
                    },
                    "description": "List of path-to-selector mappings for extracting specific content from crawled pages. Each entry pairs a URL glob pattern with a CSS selector. The first matching path wins. Only the matched HTML fragment is stored and indexed.\n"
                },
                "includeHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "includeImages": {
                    "type": "boolean"
                },
                "specificSitemaps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of specific sitemap URLs to use for crawling. Only valid when\u003cspan pulumi-lang-nodejs=\" parseType \" pulumi-lang-dotnet=\" ParseType \" pulumi-lang-go=\" parseType \" pulumi-lang-python=\" parse_type \" pulumi-lang-yaml=\" parseType \" pulumi-lang-java=\" parseType \"\u003e parseType \u003c/span\u003eis 'sitemap'.\n"
                },
                "useBrowserRendering": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "includeImages",
                        "useBrowserRendering"
                    ]
                }
            }
        },
        "cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector:AiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "Glob pattern to match against the page URL path. Uses standard glob syntax: * matches within a segment, ** crosses directories.\n"
                },
                "selector": {
                    "type": "string",
                    "description": "CSS selector to extract content from pages matching the path pattern. Supports standard CSS selectors including class, ID, element, and attribute selectors.\n"
                }
            },
            "type": "object",
            "required": [
                "path",
                "selector"
            ]
        },
        "cloudflare:index/AiSearchInstanceSourceParamsWebCrawlerStoreOptions:AiSearchInstanceSourceParamsWebCrawlerStoreOptions": {
            "properties": {
                "r2Jurisdiction": {
                    "type": "string"
                },
                "storageId": {
                    "type": "string"
                },
                "storageType": {
                    "type": "string",
                    "description": "Available values: \"r2\".\n"
                }
            },
            "type": "object",
            "required": [
                "storageId"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "r2Jurisdiction",
                        "storageId"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldAuthIdCharacteristic:ApiShieldAuthIdCharacteristic": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the characteristic field, i.e., the header or cookie name. When using type \"jwt\", this must be a claim location expressed as `$(token_config_id):$(json_path)`, where \u003cspan pulumi-lang-nodejs=\"`tokenConfigId`\" pulumi-lang-dotnet=\"`TokenConfigId`\" pulumi-lang-go=\"`tokenConfigId`\" pulumi-lang-python=\"`token_config_id`\" pulumi-lang-yaml=\"`tokenConfigId`\" pulumi-lang-java=\"`tokenConfigId`\"\u003e`tokenConfigId`\u003c/span\u003e is the ID of the token configuration used in validating the JWT, and \u003cspan pulumi-lang-nodejs=\"`jsonPath`\" pulumi-lang-dotnet=\"`JsonPath`\" pulumi-lang-go=\"`jsonPath`\" pulumi-lang-python=\"`json_path`\" pulumi-lang-yaml=\"`jsonPath`\" pulumi-lang-java=\"`jsonPath`\"\u003e`jsonPath`\u003c/span\u003e is a RFC 9535 JSONPath expression.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of characteristic.\nAvailable values: \"header\", \"cookie\", \"jwt\".\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ]
        },
        "cloudflare:index/ApiShieldOperationFeatures:ApiShieldOperationFeatures": {
            "properties": {
                "apiRouting": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesApiRouting:ApiShieldOperationFeaturesApiRouting",
                    "description": "API Routing settings on endpoint.\n"
                },
                "confidenceIntervals": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervals:ApiShieldOperationFeaturesConfidenceIntervals"
                },
                "parameterSchemas": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesParameterSchemas:ApiShieldOperationFeaturesParameterSchemas"
                },
                "schemaInfo": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesSchemaInfo:ApiShieldOperationFeaturesSchemaInfo"
                },
                "thresholds": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesThresholds:ApiShieldOperationFeaturesThresholds"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "apiRouting",
                        "confidenceIntervals",
                        "parameterSchemas",
                        "schemaInfo",
                        "thresholds"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesApiRouting:ApiShieldOperationFeaturesApiRouting": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "route": {
                    "type": "string",
                    "description": "Target route.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lastUpdated",
                        "route"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervals:ApiShieldOperationFeaturesConfidenceIntervals": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "suggestedThreshold": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lastUpdated",
                        "suggestedThreshold"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold": {
            "properties": {
                "confidenceIntervals": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals"
                },
                "mean": {
                    "type": "number",
                    "description": "Suggested threshold.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "confidenceIntervals",
                        "mean"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals": {
            "properties": {
                "p90": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90",
                    "description": "Upper and lower bound for percentile estimate\n"
                },
                "p95": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95",
                    "description": "Upper and lower bound for percentile estimate\n"
                },
                "p99": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99",
                    "description": "Upper and lower bound for percentile estimate\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "p90",
                        "p95",
                        "p99"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lower",
                        "upper"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lower",
                        "upper"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99:ApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lower",
                        "upper"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesParameterSchemas:ApiShieldOperationFeaturesParameterSchemas": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "parameterSchemas": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesParameterSchemasParameterSchemas:ApiShieldOperationFeaturesParameterSchemasParameterSchemas",
                    "description": "An operation schema object containing a response.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lastUpdated",
                        "parameterSchemas"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesParameterSchemasParameterSchemas:ApiShieldOperationFeaturesParameterSchemasParameterSchemas": {
            "properties": {
                "parameters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array containing the learned parameter schemas.\n"
                },
                "responses": {
                    "type": "string",
                    "description": "An empty response object. This field is required to yield a valid operation schema.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "parameters",
                        "responses"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesSchemaInfo:ApiShieldOperationFeaturesSchemaInfo": {
            "properties": {
                "activeSchema": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeaturesSchemaInfoActiveSchema:ApiShieldOperationFeaturesSchemaInfoActiveSchema",
                    "description": "Schema active on endpoint.\n"
                },
                "learnedAvailable": {
                    "type": "boolean",
                    "description": "True if a Cloudflare-provided learned schema is available for this endpoint.\n"
                },
                "mitigationAction": {
                    "type": "string",
                    "description": "Action taken on requests failing validation.\nAvailable values: \"none\", \"log\", \"block\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "activeSchema",
                        "learnedAvailable",
                        "mitigationAction"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesSchemaInfoActiveSchema:ApiShieldOperationFeaturesSchemaInfoActiveSchema": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "isLearned": {
                    "type": "boolean",
                    "description": "True if schema is Cloudflare-provided.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Schema file name.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdAt",
                        "id",
                        "isLearned",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldOperationFeaturesThresholds:ApiShieldOperationFeaturesThresholds": {
            "properties": {
                "authIdTokens": {
                    "type": "integer",
                    "description": "The total number of auth-ids seen across this calculation.\n"
                },
                "dataPoints": {
                    "type": "integer",
                    "description": "The number of data points used for the threshold suggestion calculation.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "p50": {
                    "type": "integer",
                    "description": "The p50 quantile of requests (in period_seconds).\n"
                },
                "p90": {
                    "type": "integer",
                    "description": "The p90 quantile of requests (in period_seconds).\n"
                },
                "p99": {
                    "type": "integer",
                    "description": "The p99 quantile of requests (in period_seconds).\n"
                },
                "periodSeconds": {
                    "type": "integer",
                    "description": "The period over which this threshold is suggested.\n"
                },
                "requests": {
                    "type": "integer",
                    "description": "The estimated number of requests covered by these calculations.\n"
                },
                "suggestedThreshold": {
                    "type": "integer",
                    "description": "The suggested threshold in requests done by the same auth*id or period*seconds.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "authIdTokens",
                        "dataPoints",
                        "lastUpdated",
                        "p50",
                        "p90",
                        "p99",
                        "periodSeconds",
                        "requests",
                        "suggestedThreshold"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldSchemaSchema:ApiShieldSchemaSchema": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "kind": {
                    "type": "string",
                    "description": "Kind of schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the schema\n"
                },
                "schemaId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Source of the schema\n"
                },
                "validationEnabled": {
                    "type": "boolean",
                    "description": "Flag whether schema is enabled for validation.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdAt",
                        "kind",
                        "name",
                        "schemaId",
                        "source",
                        "validationEnabled"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldSchemaUploadDetails:ApiShieldSchemaUploadDetails": {
            "properties": {
                "warnings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ApiShieldSchemaUploadDetailsWarning:ApiShieldSchemaUploadDetailsWarning"
                    },
                    "description": "Diagnostic warning events that occurred during processing. These events are non-critical errors found within the schema.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "warnings"
                    ]
                }
            }
        },
        "cloudflare:index/ApiShieldSchemaUploadDetailsWarning:ApiShieldSchemaUploadDetailsWarning": {
            "properties": {
                "code": {
                    "type": "integer",
                    "description": "Code that identifies the event that occurred.\n"
                },
                "locations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "JSONPath location(s) in the schema where these events were encountered.  See [https://goessner.net/articles/JsonPath/](https://goessner.net/articles/JsonPath/) for JSONPath specification.\n"
                },
                "message": {
                    "type": "string",
                    "description": "Diagnostic message that describes the event.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "locations",
                        "message"
                    ]
                }
            }
        },
        "cloudflare:index/ApiTokenCondition:ApiTokenCondition": {
            "properties": {
                "requestIp": {
                    "$ref": "#/types/cloudflare:index/ApiTokenConditionRequestIp:ApiTokenConditionRequestIp",
                    "description": "Client IP restrictions.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ApiTokenConditionRequestIp:ApiTokenConditionRequestIp": {
            "properties": {
                "ins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                },
                "notIns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ApiTokenPolicy:ApiTokenPolicy": {
            "properties": {
                "effect": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ApiTokenPolicyPermissionGroup:ApiTokenPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resources": {
                    "type": "string",
                    "description": "A json object representing the resources that are specified to the policy.\n"
                }
            },
            "type": "object",
            "required": [
                "effect",
                "permissionGroups",
                "resources"
            ]
        },
        "cloudflare:index/ApiTokenPolicyPermissionGroup:ApiTokenPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/AuthenticatedOriginPullsConfig:AuthenticatedOriginPullsConfig": {
            "properties": {
                "certId": {
                    "type": "string",
                    "description": "Certificate identifier tag.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether hostname-level authenticated origin pulls is enabled. A null value voids the association.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname on the origin for which the client certificate uploaded will be used.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/BotManagementStaleZoneConfiguration:BotManagementStaleZoneConfiguration": {
            "properties": {
                "fightMode": {
                    "type": "boolean",
                    "description": "Indicates that the zone's Bot Fight Mode is turned on.\n"
                },
                "optimizeWordpress": {
                    "type": "boolean",
                    "description": "Indicates that the zone's wordpress optimization for SBFM is turned on.\n"
                },
                "sbfmDefinitelyAutomated": {
                    "type": "string",
                    "description": "Indicates that the zone's definitely automated requests are being blocked or challenged.\n"
                },
                "sbfmLikelyAutomated": {
                    "type": "string",
                    "description": "Indicates that the zone's likely automated requests are being blocked or challenged.\n"
                },
                "sbfmStaticResourceProtection": {
                    "type": "string",
                    "description": "Indicates that the zone's static resource protection is turned on.\n"
                },
                "sbfmVerifiedBots": {
                    "type": "string",
                    "description": "Indicates that the zone's verified bot requests are being blocked.\n"
                },
                "suppressSessionScore": {
                    "type": "boolean",
                    "description": "Indicates that the zone's session score tracking is disabled.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "fightMode",
                        "optimizeWordpress",
                        "sbfmDefinitelyAutomated",
                        "sbfmLikelyAutomated",
                        "sbfmStaticResourceProtection",
                        "sbfmVerifiedBots",
                        "suppressSessionScore"
                    ]
                }
            }
        },
        "cloudflare:index/CertificatePackCertificate:CertificatePackCertificate": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "Certificate bundle method.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "geoRestrictions": {
                    "$ref": "#/types/cloudflare:index/CertificatePackCertificateGeoRestrictions:CertificatePackCertificateGeoRestrictions",
                    "description": "Specify the region where your private key can be held locally.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Hostnames covered by this certificate.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Certificate identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The order/priority in which the certificate will be used.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Certificate status.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bundleMethod",
                        "expiresOn",
                        "geoRestrictions",
                        "hosts",
                        "id",
                        "issuer",
                        "modifiedOn",
                        "priority",
                        "signature",
                        "status",
                        "uploadedOn",
                        "zoneId"
                    ]
                }
            }
        },
        "cloudflare:index/CertificatePackCertificateGeoRestrictions:CertificatePackCertificateGeoRestrictions": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Available values: \"us\", \"eu\", \u003cspan pulumi-lang-nodejs=\"\"highestSecurity\"\" pulumi-lang-dotnet=\"\"HighestSecurity\"\" pulumi-lang-go=\"\"highestSecurity\"\" pulumi-lang-python=\"\"highest_security\"\" pulumi-lang-yaml=\"\"highestSecurity\"\" pulumi-lang-java=\"\"highestSecurity\"\"\u003e\"highestSecurity\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "label"
                    ]
                }
            }
        },
        "cloudflare:index/CertificatePackDcvDelegationRecord:CertificatePackDcvDelegationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cname",
                        "cnameTarget",
                        "emails",
                        "httpBody",
                        "httpUrl",
                        "status",
                        "txtName",
                        "txtValue"
                    ]
                }
            }
        },
        "cloudflare:index/CertificatePackValidationError:CertificatePackValidationError": {
            "properties": {
                "message": {
                    "type": "string",
                    "description": "A domain validation error.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "message"
                    ]
                }
            }
        },
        "cloudflare:index/CertificatePackValidationRecord:CertificatePackValidationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cname",
                        "cnameTarget",
                        "emails",
                        "httpBody",
                        "httpUrl",
                        "status",
                        "txtName",
                        "txtValue"
                    ]
                }
            }
        },
        "cloudflare:index/ClientCertificateCertificateAuthority:ClientCertificateCertificateAuthority": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/CloudConnectorRulesRule:CloudConnectorRulesRule": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "expression": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "parameters": {
                    "$ref": "#/types/cloudflare:index/CloudConnectorRulesRuleParameters:CloudConnectorRulesRuleParameters",
                    "description": "Parameters of Cloud Connector Rule\n"
                },
                "provider": {
                    "type": "string",
                    "description": "Cloud Provider type\nAvailable values: \"aws*s3\", \"cloudflare*r2\", \"gcp*storage\", \"azure*storage\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "cloudflare:index/CloudConnectorRulesRuleParameters:CloudConnectorRulesRuleParameters": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "Host to perform Cloud Connection to\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ConnectivityDirectoryServiceHost:ConnectivityDirectoryServiceHost": {
            "properties": {
                "hostname": {
                    "type": "string"
                },
                "ipv4": {
                    "type": "string"
                },
                "ipv6": {
                    "type": "string"
                },
                "network": {
                    "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceHostNetwork:ConnectivityDirectoryServiceHostNetwork"
                },
                "resolverNetwork": {
                    "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceHostResolverNetwork:ConnectivityDirectoryServiceHostResolverNetwork"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ConnectivityDirectoryServiceHostNetwork:ConnectivityDirectoryServiceHostNetwork": {
            "properties": {
                "tunnelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tunnelId"
            ]
        },
        "cloudflare:index/ConnectivityDirectoryServiceHostResolverNetwork:ConnectivityDirectoryServiceHostResolverNetwork": {
            "properties": {
                "resolverIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tunnelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tunnelId"
            ]
        },
        "cloudflare:index/ConnectivityDirectoryServiceTlsSettings:ConnectivityDirectoryServiceTlsSettings": {
            "properties": {
                "certVerificationMode": {
                    "type": "string",
                    "description": "TLS certificate verification mode for the connection to the origin.\n"
                }
            },
            "type": "object",
            "required": [
                "certVerificationMode"
            ]
        },
        "cloudflare:index/ContentScanningExpressionBody:ContentScanningExpressionBody": {
            "properties": {
                "payload": {
                    "type": "string",
                    "description": "Defines the ruleset expression to use in matching content objects.\n"
                }
            },
            "type": "object",
            "required": [
                "payload"
            ]
        },
        "cloudflare:index/CustomHostnameOwnershipVerification:CustomHostnameOwnershipVerification": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "DNS Name for record.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS Record type.\nAvailable values: \"txt\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Content for the record.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "name",
                        "type",
                        "value"
                    ]
                }
            }
        },
        "cloudflare:index/CustomHostnameOwnershipVerificationHttp:CustomHostnameOwnershipVerificationHttp": {
            "properties": {
                "httpBody": {
                    "type": "string",
                    "description": "Token to be served.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The HTTP URL that will be checked during custom hostname verification and where the customer should host the token.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "httpBody",
                        "httpUrl"
                    ]
                }
            }
        },
        "cloudflare:index/CustomHostnameSsl:CustomHostnameSsl": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificateAuthority": {
                    "type": "string",
                    "description": "The Certificate Authority that will issue the certificate\nAvailable values: \"digicert\", \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "cloudflareBranding": {
                    "type": "boolean",
                    "description": "Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true\n"
                },
                "customCertBundles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CustomHostnameSslCustomCertBundle:CustomHostnameSslCustomCertBundle"
                    },
                    "description": "Array of custom certificate and key pairs (1 or 2 pairs allowed)\n"
                },
                "customCertificate": {
                    "type": "string",
                    "description": "If a custom uploaded certificate is used.\n"
                },
                "customCsrId": {
                    "type": "string",
                    "description": "The identifier for the Custom CSR that was used.\n"
                },
                "customKey": {
                    "type": "string",
                    "description": "The key for a custom uploaded certificate.\n",
                    "secret": true
                },
                "method": {
                    "type": "string",
                    "description": "Domain control validation (DCV) method used for this hostname.\nAvailable values: \"http\", \"txt\", \"email\".\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/CustomHostnameSslSettings:CustomHostnameSslSettings",
                    "description": "SSL specific settings.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Level of validation to be used for this hostname. Domain validation (dv) must be used.\nAvailable values: \"dv\".\n"
                },
                "wildcard": {
                    "type": "boolean",
                    "description": "Indicates whether the certificate covers a wildcard.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bundleMethod",
                        "certificateAuthority"
                    ]
                }
            }
        },
        "cloudflare:index/CustomHostnameSslCustomCertBundle:CustomHostnameSslCustomCertBundle": {
            "properties": {
                "customCertificate": {
                    "type": "string",
                    "description": "If a custom uploaded certificate is used.\n"
                },
                "customKey": {
                    "type": "string",
                    "description": "The key for a custom uploaded certificate.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "customCertificate",
                "customKey"
            ]
        },
        "cloudflare:index/CustomHostnameSslSettings:CustomHostnameSslSettings": {
            "properties": {
                "ciphers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n"
                },
                "earlyHints": {
                    "type": "string",
                    "description": "Whether or not Early Hints is enabled.\nAvailable values: \"on\", \"off\".\n"
                },
                "http2": {
                    "type": "string",
                    "description": "Whether or not HTTP2 is enabled.\nAvailable values: \"on\", \"off\".\n"
                },
                "minTlsVersion": {
                    "type": "string",
                    "description": "The minimum TLS version supported.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n"
                },
                "tls13": {
                    "type": "string",
                    "description": "Whether or not TLS 1.3 is enabled.\nAvailable values: \"on\", \"off\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/CustomSslGeoRestrictions:CustomSslGeoRestrictions": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Available values: \"us\", \"eu\", \u003cspan pulumi-lang-nodejs=\"\"highestSecurity\"\" pulumi-lang-dotnet=\"\"HighestSecurity\"\" pulumi-lang-go=\"\"highestSecurity\"\" pulumi-lang-python=\"\"highest_security\"\" pulumi-lang-yaml=\"\"highestSecurity\"\" pulumi-lang-java=\"\"highestSecurity\"\"\u003e\"highestSecurity\"\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/CustomSslKeylessServer:CustomSslKeylessServer": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Keyless SSL is on or off.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Keyless certificate identifier tag.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n"
                },
                "tunnel": {
                    "$ref": "#/types/cloudflare:index/CustomSslKeylessServerTunnel:CustomSslKeylessServerTunnel",
                    "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdOn",
                        "enabled",
                        "host",
                        "id",
                        "modifiedOn",
                        "name",
                        "permissions",
                        "port",
                        "status",
                        "tunnel"
                    ]
                }
            }
        },
        "cloudflare:index/CustomSslKeylessServerTunnel:CustomSslKeylessServerTunnel": {
            "properties": {
                "privateIp": {
                    "type": "string",
                    "description": "Private IP of the Key Server Host\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Cloudflare Tunnel Virtual Network ID\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "privateIp",
                        "vnetId"
                    ]
                }
            }
        },
        "cloudflare:index/D1DatabaseReadReplication:D1DatabaseReadReplication": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The read replication mode for the database. Use 'auto' to create replicas and allow D1 automatically place them around the world, or 'disabled' to not use any database replicas (it can take a few hours for all replicas to be deleted).\nAvailable values: \"auto\", \"disabled\".\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ]
        },
        "cloudflare:index/DeviceManagedNetworksConfig:DeviceManagedNetworksConfig": {
            "properties": {
                "sha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the TLS certificate presented by the host found at tls_sockaddr. If absent, regular certificate verification (trusted roots, valid timestamp, etc) will be used to validate the certificate.\n"
                },
                "tlsSockaddr": {
                    "type": "string",
                    "description": "A network address of the form \"host:port\" that the WARP client will use to detect the presence of a TLS host.\n"
                }
            },
            "type": "object",
            "required": [
                "tlsSockaddr"
            ]
        },
        "cloudflare:index/DevicePostureIntegrationConfig:DevicePostureIntegrationConfig": {
            "properties": {
                "accessClientId": {
                    "type": "string",
                    "description": "If present, this id will be passed in the `CF-Access-Client-ID` header when hitting the \u003cspan pulumi-lang-nodejs=\"`apiUrl`\" pulumi-lang-dotnet=\"`ApiUrl`\" pulumi-lang-go=\"`apiUrl`\" pulumi-lang-python=\"`api_url`\" pulumi-lang-yaml=\"`apiUrl`\" pulumi-lang-java=\"`apiUrl`\"\u003e`apiUrl`\u003c/span\u003e.\n"
                },
                "accessClientSecret": {
                    "type": "string",
                    "description": "If present, this secret will be passed in the `CF-Access-Client-Secret` header when hitting the \u003cspan pulumi-lang-nodejs=\"`apiUrl`\" pulumi-lang-dotnet=\"`ApiUrl`\" pulumi-lang-go=\"`apiUrl`\" pulumi-lang-python=\"`api_url`\" pulumi-lang-yaml=\"`apiUrl`\" pulumi-lang-java=\"`apiUrl`\"\u003e`apiUrl`\u003c/span\u003e.\n",
                    "secret": true
                },
                "apiUrl": {
                    "type": "string",
                    "description": "The Workspace One API URL provided in the Workspace One Admin Dashboard.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The Workspace One Authorization URL depending on your region.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The Workspace One client ID provided in the Workspace One Admin Dashboard.\n"
                },
                "clientKey": {
                    "type": "string",
                    "description": "The Uptycs client secret.\n",
                    "secret": true
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The Workspace One client secret provided in the Workspace One Admin Dashboard.\n",
                    "secret": true
                },
                "customerId": {
                    "type": "string",
                    "description": "The Crowdstrike customer ID.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/DevicePostureRuleInput:DevicePostureRuleInput": {
            "properties": {
                "activeThreats": {
                    "type": "number",
                    "description": "The Number of active threats.\n"
                },
                "authStates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of Kolide device authentication states that pass the posture check. Device must match one of the specified states.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "UUID of Cloudflare managed certificate.\n"
                },
                "checkDisks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of volume names to be checked for encryption.\n"
                },
                "checkPrivateKey": {
                    "type": "boolean",
                    "description": "Confirm the certificate was not imported from another device. We recommend keeping this enabled unless the certificate was deployed without a private key.\n"
                },
                "cn": {
                    "type": "string",
                    "description": "Common Name that is protected by the certificate.\n"
                },
                "complianceStatus": {
                    "type": "string",
                    "description": "Compliance Status.\nAvailable values: \"compliant\", \"noncompliant\", \"unknown\", \"notapplicable\", \"ingraceperiod\", \"error\".\n"
                },
                "connectionId": {
                    "type": "string",
                    "description": "Posture Integration ID.\n"
                },
                "countOperator": {
                    "type": "string",
                    "description": "Count Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Domain.\n"
                },
                "eidLastSeen": {
                    "type": "string",
                    "description": "For more details on eid last seen, refer to the Tanium documentation.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enabled.\n"
                },
                "exists": {
                    "type": "boolean",
                    "description": "Whether or not file exists.\n"
                },
                "extendedKeyUsages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of values indicating purposes for which the certificate public key can be used.\n"
                },
                "id": {
                    "type": "string",
                    "description": "List ID.\n"
                },
                "infected": {
                    "type": "boolean",
                    "description": "Whether device is infected.\n"
                },
                "isActive": {
                    "type": "boolean",
                    "description": "Whether device is active.\n"
                },
                "issueCount": {
                    "type": "string",
                    "description": "The Number of Issues.\n"
                },
                "lastSeen": {
                    "type": "string",
                    "description": "For more details on last seen, please refer to the Crowdstrike documentation.\n"
                },
                "locations": {
                    "$ref": "#/types/cloudflare:index/DevicePostureRuleInputLocations:DevicePostureRuleInputLocations"
                },
                "networkStatus": {
                    "type": "string",
                    "description": "Network status of device.\nAvailable values: \"connected\", \"disconnected\", \"disconnecting\", \"connecting\".\n"
                },
                "operatingSystem": {
                    "type": "string",
                    "description": "Operating system.\nAvailable values: \"windows\", \"linux\", \"mac\", \"android\", \"ios\", \"chromeos\".\n"
                },
                "operationalState": {
                    "type": "string",
                    "description": "Agent operational state.\nAvailable values: \"na\", \"partially*disabled\", \"auto*fully*disabled\", \"fully*disabled\", \"auto*partially*disabled\", \"disabled*error\", \"db*corruption\".\n"
                },
                "operator": {
                    "type": "string",
                    "description": "Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "os": {
                    "type": "string",
                    "description": "Os Version.\n"
                },
                "osDistroName": {
                    "type": "string",
                    "description": "Operating System Distribution Name (linux only).\n"
                },
                "osDistroRevision": {
                    "type": "string",
                    "description": "Version of OS Distribution (linux only).\n"
                },
                "osVersionExtra": {
                    "type": "string",
                    "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version.\n"
                },
                "overall": {
                    "type": "string",
                    "description": "Overall.\n"
                },
                "path": {
                    "type": "string",
                    "description": "File path.\n"
                },
                "requireAll": {
                    "type": "boolean",
                    "description": "Whether to check all disks for encryption.\n"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "For more details on risk level, refer to the Tanium documentation.\nAvailable values: \"low\", \"medium\", \"high\", \"critical\".\n"
                },
                "score": {
                    "type": "number",
                    "description": "A value between 0-100 assigned to devices set by the 3rd party posture provider.\n"
                },
                "scoreOperator": {
                    "type": "string",
                    "description": "Score Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "sensorConfig": {
                    "type": "string",
                    "description": "SensorConfig.\n"
                },
                "sha256": {
                    "type": "string",
                    "description": "SHA-256.\n"
                },
                "state": {
                    "type": "string",
                    "description": "For more details on state, please refer to the Crowdstrike documentation.\nAvailable values: \"online\", \"offline\", \"unknown\".\n"
                },
                "subjectAlternativeNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of certificate Subject Alternative Names.\n"
                },
                "thumbprint": {
                    "type": "string",
                    "description": "Signing certificate thumbprint.\n"
                },
                "totalScore": {
                    "type": "number",
                    "description": "For more details on total score, refer to the Tanium documentation.\n"
                },
                "updateWindowDays": {
                    "type": "number",
                    "description": "Number of days that the antivirus should be updated within.\n"
                },
                "version": {
                    "type": "string",
                    "description": "Version of OS.\n"
                },
                "versionOperator": {
                    "type": "string",
                    "description": "Version Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/DevicePostureRuleInputLocations:DevicePostureRuleInputLocations": {
            "properties": {
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of paths to check for client certificate on linux.\n"
                },
                "trustStores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of trust stores to check for client certificate.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/DevicePostureRuleMatch:DevicePostureRuleMatch": {
            "properties": {
                "platform": {
                    "type": "string",
                    "description": "Available values: \"windows\", \"mac\", \"linux\", \"android\", \"ios\", \"chromeos\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/DlpCustomProfileContextAwareness:DlpCustomProfileContextAwareness": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "If true, scan the context of predefined entries to only return matches surrounded by keywords.\n"
                },
                "skip": {
                    "$ref": "#/types/cloudflare:index/DlpCustomProfileContextAwarenessSkip:DlpCustomProfileContextAwarenessSkip",
                    "description": "Content types to exclude from context analysis and return all matches.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "skip"
                    ]
                }
            }
        },
        "cloudflare:index/DlpCustomProfileContextAwarenessSkip:DlpCustomProfileContextAwarenessSkip": {
            "properties": {
                "files": {
                    "type": "boolean",
                    "description": "If the content type is a file, skip context analysis and return all matches.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "files"
                    ]
                }
            }
        },
        "cloudflare:index/DlpCustomProfileEntry:DlpCustomProfileEntry": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/DlpCustomProfileEntryPattern:DlpCustomProfileEntryPattern"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "name",
                "pattern"
            ]
        },
        "cloudflare:index/DlpCustomProfileEntryPattern:DlpCustomProfileEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex"
            ]
        },
        "cloudflare:index/DlpCustomProfileSensitivityLevel:DlpCustomProfileSensitivityLevel": {
            "properties": {
                "groupId": {
                    "type": "string"
                },
                "levelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "groupId",
                "levelId"
            ]
        },
        "cloudflare:index/DlpCustomProfileSharedEntry:DlpCustomProfileSharedEntry": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "entryType": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\".\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "entryId",
                "entryType"
            ]
        },
        "cloudflare:index/DlpPredefinedProfileEntry:DlpPredefinedProfileEntry": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/DnsFirewallAttackMitigation:DnsFirewallAttackMitigation": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "When enabled, automatically mitigate random-prefix attacks to protect upstream DNS servers\n"
                },
                "onlyWhenUpstreamUnhealthy": {
                    "type": "boolean",
                    "description": "Only mitigate attacks when upstream servers seem unhealthy\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "onlyWhenUpstreamUnhealthy"
                    ]
                }
            }
        },
        "cloudflare:index/DnsRecordData:DnsRecordData": {
            "properties": {
                "algorithm": {
                    "type": "number",
                    "description": "Algorithm.\n"
                },
                "altitude": {
                    "type": "number",
                    "description": "Altitude of location in meters.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "Certificate.\n"
                },
                "digest": {
                    "type": "string",
                    "description": "Digest.\n"
                },
                "digestType": {
                    "type": "number",
                    "description": "Digest Type.\n"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "Fingerprint.\n"
                },
                "flags": {
                    "$ref": "pulumi.json#/Any",
                    "description": "Flags for the CAA record.\n"
                },
                "keyTag": {
                    "type": "number",
                    "description": "Key Tag.\n"
                },
                "latDegrees": {
                    "type": "number",
                    "description": "Degrees of latitude.\n"
                },
                "latDirection": {
                    "type": "string",
                    "description": "Latitude direction.\nAvailable values: \"N\", \"S\".\n"
                },
                "latMinutes": {
                    "type": "number",
                    "description": "Minutes of latitude.\n"
                },
                "latSeconds": {
                    "type": "number",
                    "description": "Seconds of latitude.\n"
                },
                "longDegrees": {
                    "type": "number",
                    "description": "Degrees of longitude.\n"
                },
                "longDirection": {
                    "type": "string",
                    "description": "Longitude direction.\nAvailable values: \"E\", \"W\".\n"
                },
                "longMinutes": {
                    "type": "number",
                    "description": "Minutes of longitude.\n"
                },
                "longSeconds": {
                    "type": "number",
                    "description": "Seconds of longitude.\n"
                },
                "matchingType": {
                    "type": "number",
                    "description": "Matching Type.\n"
                },
                "order": {
                    "type": "number",
                    "description": "Order.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port of the service.\n"
                },
                "precisionHorz": {
                    "type": "number",
                    "description": "Horizontal precision of location.\n"
                },
                "precisionVert": {
                    "type": "number",
                    "description": "Vertical precision of location.\n"
                },
                "preference": {
                    "type": "number",
                    "description": "Preference.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority.\n"
                },
                "protocol": {
                    "type": "number",
                    "description": "Protocol.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "Public Key.\n"
                },
                "regex": {
                    "type": "string",
                    "description": "Regex.\n"
                },
                "replacement": {
                    "type": "string",
                    "description": "Replacement.\n"
                },
                "selector": {
                    "type": "number",
                    "description": "Selector.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Service.\n"
                },
                "size": {
                    "type": "number",
                    "description": "Size of location in meters.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Name of the property controlled by this record (e.g.: issue, issuewild, iodef).\n"
                },
                "target": {
                    "type": "string",
                    "description": "Target.\n"
                },
                "type": {
                    "type": "number",
                    "description": "Type.\n"
                },
                "usage": {
                    "type": "number",
                    "description": "Usage.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the record. This field's semantics depend on the chosen tag.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The record weight.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/DnsRecordSettings:DnsRecordSettings": {
            "properties": {
                "flattenCname": {
                    "type": "boolean",
                    "description": "If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened.\n"
                },
                "ipv4Only": {
                    "type": "boolean",
                    "description": "When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                },
                "ipv6Only": {
                    "type": "boolean",
                    "description": "When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "flattenCname",
                        "ipv4Only",
                        "ipv6Only"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingCatchAllAction:EmailRoutingCatchAllAction": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of action for catch-all rule.\nAvailable values: \"drop\", \"forward\", \"worker\".\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/EmailRoutingCatchAllMatcher:EmailRoutingCatchAllMatcher": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of matcher. Default is 'all'.\nAvailable values: \"all\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/EmailRoutingDnsError:EmailRoutingDnsError": {
            "properties": {
                "code": {
                    "type": "integer"
                },
                "documentationUrl": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/EmailRoutingDnsErrorSource:EmailRoutingDnsErrorSource"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "documentationUrl",
                        "message",
                        "source"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsErrorSource:EmailRoutingDnsErrorSource": {
            "properties": {
                "pointer": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "pointer"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsMessage:EmailRoutingDnsMessage": {
            "properties": {
                "code": {
                    "type": "integer"
                },
                "documentationUrl": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/EmailRoutingDnsMessageSource:EmailRoutingDnsMessageSource"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "documentationUrl",
                        "message",
                        "source"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsMessageSource:EmailRoutingDnsMessageSource": {
            "properties": {
                "pointer": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "pointer"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsResult:EmailRoutingDnsResult": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "DNS record content.\n"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingDnsResultError:EmailRoutingDnsResultError"
                    }
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex).\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.\n"
                },
                "records": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingDnsResultRecord:EmailRoutingDnsResultRecord"
                    }
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"HTTPS\", \"TXT\", \"SRV\", \"LOC\", \"MX\", \"NS\", \"CERT\", \"DNSKEY\", \"DS\", \"NAPTR\", \"SMIMEA\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "content",
                        "errors",
                        "name",
                        "priority",
                        "records",
                        "ttl",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsResultError:EmailRoutingDnsResultError": {
            "properties": {
                "code": {
                    "type": "string"
                },
                "missing": {
                    "$ref": "#/types/cloudflare:index/EmailRoutingDnsResultErrorMissing:EmailRoutingDnsResultErrorMissing",
                    "description": "List of records needed to enable an Email Routing zone.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "missing"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsResultErrorMissing:EmailRoutingDnsResultErrorMissing": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "DNS record content.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex).\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"HTTPS\", \"TXT\", \"SRV\", \"LOC\", \"MX\", \"NS\", \"CERT\", \"DNSKEY\", \"DS\", \"NAPTR\", \"SMIMEA\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "content",
                        "name",
                        "priority",
                        "ttl",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsResultInfo:EmailRoutingDnsResultInfo": {
            "properties": {
                "emailRoutingDnsCount": {
                    "type": "number",
                    "description": "Total number of results for the requested service.\n"
                },
                "page": {
                    "type": "number",
                    "description": "Current page within paginated list of results.\n"
                },
                "perPage": {
                    "type": "number",
                    "description": "Number of results per page of results.\n"
                },
                "totalCount": {
                    "type": "number",
                    "description": "Total results available without any search parameters.\n"
                },
                "totalPages": {
                    "type": "number",
                    "description": "The number of total pages in the entire result set.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "emailRoutingDnsCount",
                        "page",
                        "perPage",
                        "totalCount",
                        "totalPages"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingDnsResultRecord:EmailRoutingDnsResultRecord": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "DNS record content.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex).\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"HTTPS\", \"TXT\", \"SRV\", \"LOC\", \"MX\", \"NS\", \"CERT\", \"DNSKEY\", \"DS\", \"NAPTR\", \"SMIMEA\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "content",
                        "name",
                        "priority",
                        "ttl",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/EmailRoutingRuleAction:EmailRoutingRuleAction": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of supported action.\nAvailable values: \"drop\", \"forward\", \"worker\".\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/EmailRoutingRuleMatcher:EmailRoutingRuleMatcher": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Field for type matcher.\nAvailable values: \"to\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of matcher.\nAvailable values: \"all\", \"literal\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value for matcher.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/EmailSecurityTrustedDomainsBody:EmailSecurityTrustedDomainsBody": {
            "properties": {
                "comments": {
                    "type": "string"
                },
                "isRecent": {
                    "type": "boolean",
                    "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.\n"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "isSimilarity": {
                    "type": "boolean",
                    "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.\n"
                },
                "pattern": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "isRecent",
                "isRegex",
                "isSimilarity",
                "pattern"
            ]
        },
        "cloudflare:index/FilterBody:FilterBody": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "An informative summary of the filter.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the filter.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related filters.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "cloudflare:index/FirewallRuleAction:FirewallRuleAction": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The action to perform.\nAvailable values: \"simulate\", \"ban\", \"challenge\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/FirewallRuleActionResponse:FirewallRuleActionResponse",
                    "description": "A custom content type and reponse to return when the threshold is exceeded. The custom response configured in this object will override the custom error for the zone. This object is optional.\nNotes: If you omit this object, Cloudflare will use the default HTML error page. If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone challenge pages and you should not provide the \"response\" object.\n"
                },
                "timeout": {
                    "type": "number",
                    "description": "The time in seconds during which Cloudflare will perform the mitigation action. Must be an integer value greater than or equal to the period.\nNotes: If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone's Challenge Passage time and you should not provide this value.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/FirewallRuleActionResponse:FirewallRuleActionResponse": {
            "properties": {
                "body": {
                    "type": "string",
                    "description": "The response body to return. The value must conform to the configured content type.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the body. Must be one of the following: `text/plain`, `text/xml`, or `application/json`.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/FirewallRuleFilter:FirewallRuleFilter": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "An informative summary of the filter.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the filter.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related filters.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "cloudflare:index/HealthcheckHttpConfig:HealthcheckHttpConfig": {
            "properties": {
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Do not validate the certificate when the health check uses HTTPS.\n"
                },
                "expectedBody": {
                    "type": "string",
                    "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy.\n"
                },
                "expectedCodes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The expected HTTP response codes (e.g. \"200\") or code ranges (e.g. \"2xx\" for all codes starting with 2) of the health check.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Follow redirects if the origin returns a 3xx status code.\n"
                },
                "header": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method to use for the health check.\nAvailable values: \"GET\", \"HEAD\".\n"
                },
                "path": {
                    "type": "string",
                    "description": "The endpoint path to health check against.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Port number to connect to for the health check. Defaults to 80 if type is HTTP or 443 if type is HTTPS.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "allowInsecure",
                        "expectedBody",
                        "followRedirects",
                        "method",
                        "path",
                        "port"
                    ]
                }
            }
        },
        "cloudflare:index/HealthcheckTcpConfig:HealthcheckTcpConfig": {
            "properties": {
                "method": {
                    "type": "string",
                    "description": "The TCP connection method to use for the health check.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"connectionEstablished\"\" pulumi-lang-dotnet=\"\"ConnectionEstablished\"\" pulumi-lang-go=\"\"connectionEstablished\"\" pulumi-lang-python=\"\"connection_established\"\" pulumi-lang-yaml=\"\"connectionEstablished\"\" pulumi-lang-java=\"\"connectionEstablished\"\"\u003e\"connectionEstablished\"\u003c/span\u003e.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Port number to connect to for the health check. Defaults to 80.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "method",
                        "port"
                    ]
                }
            }
        },
        "cloudflare:index/HyperdriveConfigCaching:HyperdriveConfigCaching": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Set to true to disable caching of SQL responses. Default is false.\n"
                },
                "maxAge": {
                    "type": "integer",
                    "description": "Specify the maximum duration (in seconds) items should persist in the cache. Defaults to 60 seconds if not specified.\n"
                },
                "staleWhileRevalidate": {
                    "type": "integer",
                    "description": "Specify the number of seconds the cache may serve a stale response. Defaults to 15 seconds if not specified.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "disabled"
                    ]
                }
            }
        },
        "cloudflare:index/HyperdriveConfigMtls:HyperdriveConfigMtls": {
            "properties": {
                "caCertificateId": {
                    "type": "string",
                    "description": "Define CA certificate ID obtained after uploading CA cert.\n"
                },
                "mtlsCertificateId": {
                    "type": "string",
                    "description": "Define mTLS certificate ID obtained after uploading client cert.\n"
                },
                "sslmode": {
                    "type": "string",
                    "description": "Set SSL mode to 'require', 'verify-ca', or 'verify-full' to verify the CA.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/HyperdriveConfigOrigin:HyperdriveConfigOrigin": {
            "properties": {
                "accessClientId": {
                    "type": "string",
                    "description": "Defines the Client ID of the Access token to use when connecting to the origin database.\n"
                },
                "accessClientSecret": {
                    "type": "string",
                    "description": "Defines the Client Secret of the Access Token to use when connecting to the origin database. The API never returns this write-only value.\n",
                    "secret": true
                },
                "database": {
                    "type": "string",
                    "description": "Set the name of your origin database.\n"
                },
                "host": {
                    "type": "string",
                    "description": "Defines the host (hostname or IP) of your origin database.\n"
                },
                "password": {
                    "type": "string",
                    "description": "Set the password needed to access your origin database. The API never returns this write-only value.\n",
                    "secret": true
                },
                "port": {
                    "type": "integer",
                    "description": "Defines the port of your origin database. Defaults to 5432 for PostgreSQL or 3306 for MySQL if not specified.\n"
                },
                "scheme": {
                    "type": "string",
                    "description": "Specifies the URL scheme used to connect to your origin database.\nAvailable values: \"postgres\", \"postgresql\", \"mysql\".\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "The identifier of the Workers VPC Service to connect through. Hyperdrive will egress through the specified VPC Service to reach the origin database.\n"
                },
                "user": {
                    "type": "string",
                    "description": "Set the user of your origin database.\n"
                }
            },
            "type": "object",
            "required": [
                "database",
                "password",
                "scheme",
                "user"
            ]
        },
        "cloudflare:index/ImageVariantOptions:ImageVariantOptions": {
            "properties": {
                "fit": {
                    "type": "string",
                    "description": "The fit property describes how the width and height dimensions should be interpreted.\nAvailable values: \"scale-down\", \"contain\", \"cover\", \"crop\", \"pad\".\n"
                },
                "height": {
                    "type": "number",
                    "description": "Maximum height in image pixels.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "What EXIF data should be preserved in the output image.\nAvailable values: \"keep\", \"copyright\", \"none\".\n"
                },
                "width": {
                    "type": "number",
                    "description": "Maximum width in image pixels.\n"
                }
            },
            "type": "object",
            "required": [
                "fit",
                "height",
                "metadata",
                "width"
            ]
        },
        "cloudflare:index/ImageVariantVariant:ImageVariantVariant": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "neverRequireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the variant can access an image without a signature, regardless of image access control.\n"
                },
                "options": {
                    "$ref": "#/types/cloudflare:index/ImageVariantVariantOptions:ImageVariantVariantOptions",
                    "description": "Allows you to define image resizing sizes for different use cases.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "neverRequireSignedUrls",
                        "options"
                    ]
                }
            }
        },
        "cloudflare:index/ImageVariantVariantOptions:ImageVariantVariantOptions": {
            "properties": {
                "fit": {
                    "type": "string",
                    "description": "The fit property describes how the width and height dimensions should be interpreted.\nAvailable values: \"scale-down\", \"contain\", \"cover\", \"crop\", \"pad\".\n"
                },
                "height": {
                    "type": "number",
                    "description": "Maximum height in image pixels.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "What EXIF data should be preserved in the output image.\nAvailable values: \"keep\", \"copyright\", \"none\".\n"
                },
                "width": {
                    "type": "number",
                    "description": "Maximum width in image pixels.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "fit",
                        "height",
                        "metadata",
                        "width"
                    ]
                }
            }
        },
        "cloudflare:index/KeylessCertificateTunnel:KeylessCertificateTunnel": {
            "properties": {
                "privateIp": {
                    "type": "string",
                    "description": "Private IP of the Key Server Host\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Cloudflare Tunnel Virtual Network ID\n"
                }
            },
            "type": "object",
            "required": [
                "privateIp",
                "vnetId"
            ]
        },
        "cloudflare:index/ListItem:ListItem": {
            "properties": {
                "asn": {
                    "type": "integer",
                    "description": "A non-negative 32 bit integer\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An informative summary of the list item.\n"
                },
                "hostname": {
                    "$ref": "#/types/cloudflare:index/ListItemHostname:ListItemHostname",
                    "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                },
                "ip": {
                    "type": "string",
                    "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/ListItemRedirect:ListItemRedirect",
                    "description": "The definition of the redirect.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ListItemHostname:ListItemHostname": {
            "properties": {
                "excludeExactHostname": {
                    "type": "boolean",
                    "description": "Only applies to wildcard hostnames (e.g., *.example.com). When true (default), only subdomains are blocked. When false, both the root domain and subdomains are blocked.\n"
                },
                "urlHostname": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "urlHostname"
            ]
        },
        "cloudflare:index/ListItemRedirect:ListItemRedirect": {
            "properties": {
                "includeSubdomains": {
                    "type": "boolean"
                },
                "preservePathSuffix": {
                    "type": "boolean"
                },
                "preserveQueryString": {
                    "type": "boolean"
                },
                "sourceUrl": {
                    "type": "string"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "Available values: 301, 302, 307, 308.\n"
                },
                "subpathMatching": {
                    "type": "boolean"
                },
                "targetUrl": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "sourceUrl",
                "targetUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "includeSubdomains",
                        "preservePathSuffix",
                        "preserveQueryString",
                        "sourceUrl",
                        "statusCode",
                        "subpathMatching",
                        "targetUrl"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerAdaptiveRouting:LoadBalancerAdaptiveRouting": {
            "properties": {
                "failoverAcrossPools": {
                    "type": "boolean",
                    "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for control over when sessions are broken or reassigned.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "failoverAcrossPools"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerLocationStrategy:LoadBalancerLocationStrategy": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n"
                },
                "preferEcs": {
                    "type": "string",
                    "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "mode",
                        "preferEcs"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerPoolLoadShedding:LoadBalancerPoolLoadShedding": {
            "properties": {
                "defaultPercent": {
                    "type": "number",
                    "description": "The percent of traffic to shed from the pool, according to the default policy. Applies to new sessions and traffic without session affinity.\n"
                },
                "defaultPolicy": {
                    "type": "string",
                    "description": "The default policy to use when load shedding. A random policy randomly sheds a given percent of requests. A hash policy computes a hash over the CF-Connecting-IP address and sheds all requests originating from a percent of IPs.\nAvailable values: \"random\", \"hash\".\n"
                },
                "sessionPercent": {
                    "type": "number",
                    "description": "The percent of existing sessions to shed from the pool, according to the session policy.\n"
                },
                "sessionPolicy": {
                    "type": "string",
                    "description": "Only the hash policy is supported for existing sessions (to avoid exponential decay).\nAvailable values: \"hash\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "defaultPercent",
                        "defaultPolicy",
                        "sessionPercent",
                        "sessionPolicy"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerPoolNotificationFilter:LoadBalancerPoolNotificationFilter": {
            "properties": {
                "origin": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolNotificationFilterOrigin:LoadBalancerPoolNotificationFilterOrigin",
                    "description": "Filter options for a particular resource type (pool or origin). Use null to reset.\n"
                },
                "pool": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolNotificationFilterPool:LoadBalancerPoolNotificationFilterPool",
                    "description": "Filter options for a particular resource type (pool or origin). Use null to reset.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/LoadBalancerPoolNotificationFilterOrigin:LoadBalancerPoolNotificationFilterOrigin": {
            "properties": {
                "disable": {
                    "type": "boolean",
                    "description": "If set true, disable notifications for this type of resource (pool or origin).\n"
                },
                "healthy": {
                    "type": "boolean",
                    "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/LoadBalancerPoolNotificationFilterPool:LoadBalancerPoolNotificationFilterPool": {
            "properties": {
                "disable": {
                    "type": "boolean",
                    "description": "If set true, disable notifications for this type of resource (pool or origin).\n"
                },
                "healthy": {
                    "type": "boolean",
                    "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/LoadBalancerPoolOrigin:LoadBalancerPoolOrigin": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The IP address (IPv4 or IPv6) of the origin, or its publicly addressable hostname. Hostnames entered here should resolve directly to the origin, and not be a hostname proxied by Cloudflare. To set an internal/reserved address, virtual*network*id must also be set.\n"
                },
                "disabledAt": {
                    "type": "string",
                    "description": "This field shows up only if the origin is disabled. This field is set with the time the origin was disabled.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) this origin within the pool. Disabled origins will not receive traffic and are excluded from health checks. The origin will only be disabled for the current pool.\n"
                },
                "flattenCname": {
                    "type": "boolean",
                    "description": "Whether to flatten CNAME records for this origin, resolving them to A/AAAA records before returning to the client. When true (the default), the director resolves CNAME addresses to their underlying A/AAAA records. When false, the origin address is returned as a raw CNAME record without resolution. This setting mirrors the DNS API record\u003cspan pulumi-lang-nodejs=\" flattenCname \" pulumi-lang-dotnet=\" FlattenCname \" pulumi-lang-go=\" flattenCname \" pulumi-lang-python=\" flatten_cname \" pulumi-lang-yaml=\" flattenCname \" pulumi-lang-java=\" flattenCname \"\u003e flattenCname \u003c/span\u003esetting.\n"
                },
                "header": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolOriginHeader:LoadBalancerPoolOriginHeader",
                    "description": "The request header is used to pass additional information with an HTTP request. Currently supported header is 'Host'.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-identifiable name for the origin.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "The port for upstream connections. A value of 0 means the default port for the protocol will be used.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "The virtual network subnet ID the origin belongs in. Virtual network must also belong to the account.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The weight of this origin relative to other origins in the pool. Based on the configured weight the total traffic is distributed among origins within the pool.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "disabledAt",
                        "enabled",
                        "flattenCname",
                        "port",
                        "weight"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerPoolOriginHeader:LoadBalancerPoolOriginHeader": {
            "properties": {
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The 'Host' header allows to override the hostname set in the HTTP request. Current support is 1 'Host' header override per origin.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/LoadBalancerPoolOriginSteering:LoadBalancerPoolOriginSteering": {
            "properties": {
                "policy": {
                    "type": "string",
                    "description": "The type of origin steering policy to use.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "policy"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRandomSteering:LoadBalancerRandomSteering": {
            "properties": {
                "defaultWeight": {
                    "type": "number",
                    "description": "The default weight for pools in the load balancer that are not specified in the\u003cspan pulumi-lang-nodejs=\" poolWeights \" pulumi-lang-dotnet=\" PoolWeights \" pulumi-lang-go=\" poolWeights \" pulumi-lang-python=\" pool_weights \" pulumi-lang-yaml=\" poolWeights \" pulumi-lang-java=\" poolWeights \"\u003e poolWeights \u003c/span\u003emap.\n"
                },
                "poolWeights": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "defaultWeight"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRule:LoadBalancerRule": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition expressions to evaluate. If the condition evaluates to true, the overrides or\u003cspan pulumi-lang-nodejs=\" fixedResponse \" pulumi-lang-dotnet=\" FixedResponse \" pulumi-lang-go=\" fixedResponse \" pulumi-lang-python=\" fixed_response \" pulumi-lang-yaml=\" fixedResponse \" pulumi-lang-java=\" fixedResponse \"\u003e fixedResponse \u003c/span\u003ein this rule will be applied. An empty condition is always true. For more details on condition expressions, please see https://developers.cloudflare.com/load-balancing/understand-basics/load-balancing-rules/expressions.\n"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "Disable this specific rule. It will no longer be evaluated by this load balancer.\n"
                },
                "fixedResponse": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRuleFixedResponse:LoadBalancerRuleFixedResponse",
                    "description": "A collection of fields used to directly respond to the eyeball instead of routing to a pool. If a fixed*response is supplied the rule will be marked as terminates.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of this rule. Only used for human readability.\n"
                },
                "overrides": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRuleOverrides:LoadBalancerRuleOverrides",
                    "description": "A collection of overrides to apply to the load balancer when this rule's condition is true. All fields are optional.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "The order in which rules should be executed in relation to each other. Lower values are executed first. Values do not need to be sequential. If no value is provided for any rule the array order of the rules field will be used to assign a priority.\n"
                },
                "terminates": {
                    "type": "boolean",
                    "description": "If this rule's condition is true, this causes rule evaluation to stop after processing this rule.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "disabled",
                        "overrides",
                        "priority"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRuleFixedResponse:LoadBalancerRuleFixedResponse": {
            "properties": {
                "contentType": {
                    "type": "string",
                    "description": "The http 'Content-Type' header to include in the response.\n"
                },
                "location": {
                    "type": "string",
                    "description": "The http 'Location' header to include in the response.\n"
                },
                "messageBody": {
                    "type": "string",
                    "description": "Text to include as the http body.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The http status code to respond with.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/LoadBalancerRuleOverrides:LoadBalancerRuleOverrides": {
            "properties": {
                "adaptiveRouting": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRuleOverridesAdaptiveRouting:LoadBalancerRuleOverridesAdaptiveRouting",
                    "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                },
                "countryPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                },
                "defaultPools": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                },
                "fallbackPool": {
                    "type": "string",
                    "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                },
                "locationStrategy": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRuleOverridesLocationStrategy:LoadBalancerRuleOverridesLocationStrategy",
                    "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                },
                "popPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                },
                "randomSteering": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRuleOverridesRandomSteering:LoadBalancerRuleOverridesRandomSteering",
                    "description": "Configures pool weights.\n"
                },
                "regionPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                },
                "sessionAffinity": {
                    "type": "string",
                    "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                },
                "sessionAffinityAttributes": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRuleOverridesSessionAffinityAttributes:LoadBalancerRuleOverridesSessionAffinityAttributes",
                    "description": "Configures attributes for session affinity.\n"
                },
                "sessionAffinityTtl": {
                    "type": "number",
                    "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                },
                "steeringPolicy": {
                    "type": "string",
                    "description": "Steering Policy for this load balancer.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "adaptiveRouting",
                        "countryPools",
                        "locationStrategy",
                        "popPools",
                        "randomSteering",
                        "regionPools",
                        "sessionAffinity",
                        "sessionAffinityAttributes",
                        "sessionAffinityTtl",
                        "steeringPolicy",
                        "ttl"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRuleOverridesAdaptiveRouting:LoadBalancerRuleOverridesAdaptiveRouting": {
            "properties": {
                "failoverAcrossPools": {
                    "type": "boolean",
                    "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for control over when sessions are broken or reassigned.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "failoverAcrossPools"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRuleOverridesLocationStrategy:LoadBalancerRuleOverridesLocationStrategy": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n"
                },
                "preferEcs": {
                    "type": "string",
                    "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "mode",
                        "preferEcs"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRuleOverridesRandomSteering:LoadBalancerRuleOverridesRandomSteering": {
            "properties": {
                "defaultWeight": {
                    "type": "number",
                    "description": "The default weight for pools in the load balancer that are not specified in the\u003cspan pulumi-lang-nodejs=\" poolWeights \" pulumi-lang-dotnet=\" PoolWeights \" pulumi-lang-go=\" poolWeights \" pulumi-lang-python=\" pool_weights \" pulumi-lang-yaml=\" poolWeights \" pulumi-lang-java=\" poolWeights \"\u003e poolWeights \u003c/span\u003emap.\n"
                },
                "poolWeights": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "defaultWeight"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerRuleOverridesSessionAffinityAttributes:LoadBalancerRuleOverridesSessionAffinityAttributes": {
            "properties": {
                "drainDuration": {
                    "type": "number",
                    "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configures the names of HTTP headers to base session affinity on when header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:\u003ccookie-name-1\u003e,\u003ccookie-name-2\u003e\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.\n"
                },
                "requireAllHeaders": {
                    "type": "boolean",
                    "description": "When header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created.\n"
                },
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".\nAvailable values: \"Auto\", \"Lax\", \"None\", \"Strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.\nAvailable values: \"Auto\", \"Always\", \"Never\".\n"
                },
                "zeroDowntimeFailover": {
                    "type": "string",
                    "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.\nAvailable values: \"none\", \"temporary\", \"sticky\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "drainDuration",
                        "requireAllHeaders",
                        "samesite",
                        "secure",
                        "zeroDowntimeFailover"
                    ]
                }
            }
        },
        "cloudflare:index/LoadBalancerSessionAffinityAttributes:LoadBalancerSessionAffinityAttributes": {
            "properties": {
                "drainDuration": {
                    "type": "number",
                    "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configures the names of HTTP headers to base session affinity on when header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:\u003ccookie-name-1\u003e,\u003ccookie-name-2\u003e\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.\n"
                },
                "requireAllHeaders": {
                    "type": "boolean",
                    "description": "When header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created.\n"
                },
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".\nAvailable values: \"Auto\", \"Lax\", \"None\", \"Strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.\nAvailable values: \"Auto\", \"Always\", \"Never\".\n"
                },
                "zeroDowntimeFailover": {
                    "type": "string",
                    "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.\nAvailable values: \"none\", \"temporary\", \"sticky\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "drainDuration",
                        "requireAllHeaders",
                        "samesite",
                        "secure",
                        "zeroDowntimeFailover"
                    ]
                }
            }
        },
        "cloudflare:index/LogpushJobOutputOptions:LogpushJobOutputOptions": {
            "properties": {
                "batchPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each batch.\n"
                },
                "batchSuffix": {
                    "type": "string",
                    "description": "String to be appended after each batch.\n"
                },
                "cve202144228": {
                    "type": "boolean",
                    "description": "If set to true, will cause all occurrences of `${` in the generated files to be replaced with `x{`.\n"
                },
                "fieldDelimiter": {
                    "type": "string",
                    "description": "String to join fields. This field be ignored when \u003cspan pulumi-lang-nodejs=\"`recordTemplate`\" pulumi-lang-dotnet=\"`RecordTemplate`\" pulumi-lang-go=\"`recordTemplate`\" pulumi-lang-python=\"`record_template`\" pulumi-lang-yaml=\"`recordTemplate`\" pulumi-lang-java=\"`recordTemplate`\"\u003e`recordTemplate`\u003c/span\u003e is set.\n"
                },
                "fieldNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of field names to be included in the Logpush output. For the moment, there is no option to add all fields at once, so you must specify all the fields names you are interested in.\n"
                },
                "mergeSubrequests": {
                    "type": "boolean",
                    "description": "If set to true, subrequests will be merged into the parent request. Only supported for the \u003cspan pulumi-lang-nodejs=\"`httpRequests`\" pulumi-lang-dotnet=\"`HttpRequests`\" pulumi-lang-go=\"`httpRequests`\" pulumi-lang-python=\"`http_requests`\" pulumi-lang-yaml=\"`httpRequests`\" pulumi-lang-java=\"`httpRequests`\"\u003e`httpRequests`\u003c/span\u003e dataset.\n"
                },
                "outputType": {
                    "type": "string",
                    "description": "Specifies the output type, such as \u003cspan pulumi-lang-nodejs=\"`ndjson`\" pulumi-lang-dotnet=\"`Ndjson`\" pulumi-lang-go=\"`ndjson`\" pulumi-lang-python=\"`ndjson`\" pulumi-lang-yaml=\"`ndjson`\" pulumi-lang-java=\"`ndjson`\"\u003e`ndjson`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`csv`\" pulumi-lang-dotnet=\"`Csv`\" pulumi-lang-go=\"`csv`\" pulumi-lang-python=\"`csv`\" pulumi-lang-yaml=\"`csv`\" pulumi-lang-java=\"`csv`\"\u003e`csv`\u003c/span\u003e. This sets default values for the rest of the settings, depending on the chosen output type. Some formatting rules, like string quoting, are different between output types.\nAvailable values: \"ndjson\", \"csv\".\n"
                },
                "recordDelimiter": {
                    "type": "string",
                    "description": "String to be inserted in-between the records as separator.\n"
                },
                "recordPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each record.\n"
                },
                "recordSuffix": {
                    "type": "string",
                    "description": "String to be appended after each record.\n"
                },
                "recordTemplate": {
                    "type": "string",
                    "description": "String to use as template for each record instead of the default json key value mapping. All fields used in the template must be present in \u003cspan pulumi-lang-nodejs=\"`fieldNames`\" pulumi-lang-dotnet=\"`FieldNames`\" pulumi-lang-go=\"`fieldNames`\" pulumi-lang-python=\"`field_names`\" pulumi-lang-yaml=\"`fieldNames`\" pulumi-lang-java=\"`fieldNames`\"\u003e`fieldNames`\u003c/span\u003e as well, otherwise they will end up as null. Format as a Go `text/template` without any standard functions, like conditionals, loops, sub-templates, etc.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "Floating number to specify sampling rate. Sampling is applied on top of filtering, and regardless of the current \u003cspan pulumi-lang-nodejs=\"`sampleInterval`\" pulumi-lang-dotnet=\"`SampleInterval`\" pulumi-lang-go=\"`sampleInterval`\" pulumi-lang-python=\"`sample_interval`\" pulumi-lang-yaml=\"`sampleInterval`\" pulumi-lang-java=\"`sampleInterval`\"\u003e`sampleInterval`\u003c/span\u003e of the data.\n"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "String to specify the format for timestamps, such as \u003cspan pulumi-lang-nodejs=\"`unixnano`\" pulumi-lang-dotnet=\"`Unixnano`\" pulumi-lang-go=\"`unixnano`\" pulumi-lang-python=\"`unixnano`\" pulumi-lang-yaml=\"`unixnano`\" pulumi-lang-java=\"`unixnano`\"\u003e`unixnano`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`unix`\" pulumi-lang-dotnet=\"`Unix`\" pulumi-lang-go=\"`unix`\" pulumi-lang-python=\"`unix`\" pulumi-lang-yaml=\"`unix`\" pulumi-lang-java=\"`unix`\"\u003e`unix`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339`\" pulumi-lang-dotnet=\"`Rfc3339`\" pulumi-lang-go=\"`rfc3339`\" pulumi-lang-python=\"`rfc3339`\" pulumi-lang-yaml=\"`rfc3339`\" pulumi-lang-java=\"`rfc3339`\"\u003e`rfc3339`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339ms`\" pulumi-lang-dotnet=\"`Rfc3339ms`\" pulumi-lang-go=\"`rfc3339ms`\" pulumi-lang-python=\"`rfc3339ms`\" pulumi-lang-yaml=\"`rfc3339ms`\" pulumi-lang-java=\"`rfc3339ms`\"\u003e`rfc3339ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rfc3339ns`\" pulumi-lang-dotnet=\"`Rfc3339ns`\" pulumi-lang-go=\"`rfc3339ns`\" pulumi-lang-python=\"`rfc3339ns`\" pulumi-lang-yaml=\"`rfc3339ns`\" pulumi-lang-java=\"`rfc3339ns`\"\u003e`rfc3339ns`\u003c/span\u003e.\nAvailable values: \"unixnano\", \"unix\", \"rfc3339\", \"rfc3339ms\", \"rfc3339ns\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cve202144228"
                    ]
                }
            }
        },
        "cloudflare:index/MagicNetworkMonitoringConfigurationWarpDevice:MagicNetworkMonitoringConfigurationWarpDevice": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Unique identifier for the warp device.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the warp device.\n"
                },
                "routerIp": {
                    "type": "string",
                    "description": "IPv4 CIDR of the router sourcing flow data associated with this warp device. Only /32 addresses are currently supported.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "routerIp"
            ]
        },
        "cloudflare:index/MagicTransitConnectorDevice:MagicTransitConnectorDevice": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "provisionLicense": {
                    "type": "boolean",
                    "description": "Set to true to provision a license key for this connector. Only used during resource creation. This is a write-only field that will not be stored in state.\n"
                },
                "serialNumber": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "serialNumber"
                    ]
                }
            }
        },
        "cloudflare:index/MagicTransitSiteAclLan1:MagicTransitSiteAclLan1": {
            "properties": {
                "lanId": {
                    "type": "string",
                    "description": "The identifier for the LAN you want to create an ACL policy with.\n"
                },
                "lanName": {
                    "type": "string",
                    "description": "The name of the LAN based on the provided lan_id.\n"
                },
                "portRanges": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed.\n"
                },
                "ports": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed.\n"
                },
                "subnets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "lanId"
            ]
        },
        "cloudflare:index/MagicTransitSiteAclLan2:MagicTransitSiteAclLan2": {
            "properties": {
                "lanId": {
                    "type": "string",
                    "description": "The identifier for the LAN you want to create an ACL policy with.\n"
                },
                "lanName": {
                    "type": "string",
                    "description": "The name of the LAN based on the provided lan_id.\n"
                },
                "portRanges": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed.\n"
                },
                "ports": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed.\n"
                },
                "subnets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "lanId"
            ]
        },
        "cloudflare:index/MagicTransitSiteLanNat:MagicTransitSiteLanNat": {
            "properties": {
                "staticPrefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/MagicTransitSiteLanRoutedSubnet:MagicTransitSiteLanRoutedSubnet": {
            "properties": {
                "nat": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanRoutedSubnetNat:MagicTransitSiteLanRoutedSubnetNat"
                },
                "nextHop": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "nextHop",
                "prefix"
            ]
        },
        "cloudflare:index/MagicTransitSiteLanRoutedSubnetNat:MagicTransitSiteLanRoutedSubnetNat": {
            "properties": {
                "staticPrefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/MagicTransitSiteLanStaticAddressing:MagicTransitSiteLanStaticAddressing": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "dhcpRelay": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanStaticAddressingDhcpRelay:MagicTransitSiteLanStaticAddressingDhcpRelay"
                },
                "dhcpServer": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanStaticAddressingDhcpServer:MagicTransitSiteLanStaticAddressingDhcpServer"
                },
                "secondaryAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "virtualAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "address"
            ]
        },
        "cloudflare:index/MagicTransitSiteLanStaticAddressingDhcpRelay:MagicTransitSiteLanStaticAddressingDhcpRelay": {
            "properties": {
                "serverAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of DHCP server IPs.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/MagicTransitSiteLanStaticAddressingDhcpServer:MagicTransitSiteLanStaticAddressingDhcpServer": {
            "properties": {
                "dhcpPoolEnd": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dhcpPoolStart": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dnsServer": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "reservations": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Mapping of MAC addresses to IP addresses\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/MagicTransitSiteLocation:MagicTransitSiteLocation": {
            "properties": {
                "lat": {
                    "type": "string",
                    "description": "Latitude\n"
                },
                "lon": {
                    "type": "string",
                    "description": "Longitude\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/MagicTransitSiteWanStaticAddressing:MagicTransitSiteWanStaticAddressing": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "gatewayAddress": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "secondaryAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "gatewayAddress"
            ]
        },
        "cloudflare:index/MagicWanGreTunnelBgp:MagicWanGreTunnelBgp": {
            "properties": {
                "customerAsn": {
                    "type": "integer",
                    "description": "ASN used on the customer end of the BGP session\n"
                },
                "extraPrefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Prefixes in this list will be advertised to the customer device, in addition to the routes in the Magic routing table.\n"
                },
                "md5Key": {
                    "type": "string",
                    "description": "MD5 key to use for session authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "customerAsn"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "customerAsn",
                        "extraPrefixes"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanGreTunnelBgpStatus:MagicWanGreTunnelBgpStatus": {
            "properties": {
                "bgpState": {
                    "type": "string"
                },
                "cfSpeakerIp": {
                    "type": "string"
                },
                "cfSpeakerPort": {
                    "type": "integer"
                },
                "customerSpeakerIp": {
                    "type": "string"
                },
                "customerSpeakerPort": {
                    "type": "integer"
                },
                "state": {
                    "type": "string",
                    "description": "Available values: \"BGP*DOWN\", \"BGP*UP\", \"BGP_ESTABLISHING\".\n"
                },
                "tcpEstablished": {
                    "type": "boolean"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bgpState",
                        "cfSpeakerIp",
                        "cfSpeakerPort",
                        "customerSpeakerIp",
                        "customerSpeakerPort",
                        "state",
                        "tcpEstablished",
                        "updatedAt"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanGreTunnelHealthCheck:MagicWanGreTunnelHealthCheck": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The direction of the flow of the healthcheck. Either unidirectional, where the probe comes to you via the tunnel and the result comes back to Cloudflare via the open Internet, or bidirectional where both the probe and result come and go via the tunnel.\nAvailable values: \"unidirectional\", \"bidirectional\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether to run healthchecks for a tunnel.\n"
                },
                "rate": {
                    "type": "string",
                    "description": "How frequent the health check is run. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/MagicWanGreTunnelHealthCheckTarget:MagicWanGreTunnelHealthCheckTarget",
                    "description": "The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to \u003cspan pulumi-lang-nodejs=\"`customerGreEndpoint \" pulumi-lang-dotnet=\"`CustomerGreEndpoint \" pulumi-lang-go=\"`customerGreEndpoint \" pulumi-lang-python=\"`customer_gre_endpoint \" pulumi-lang-yaml=\"`customerGreEndpoint \" pulumi-lang-java=\"`customerGreEndpoint \"\u003e`customerGreEndpoint \u003c/span\u003eaddress`. This field is ignored for bidirectional healthchecks as the interface*address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of healthcheck to run, reply or request. The default value is \u003cspan pulumi-lang-nodejs=\"`reply`\" pulumi-lang-dotnet=\"`Reply`\" pulumi-lang-go=\"`reply`\" pulumi-lang-python=\"`reply`\" pulumi-lang-yaml=\"`reply`\" pulumi-lang-java=\"`reply`\"\u003e`reply`\u003c/span\u003e.\nAvailable values: \"reply\", \"request\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "direction",
                        "enabled",
                        "rate",
                        "target",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanGreTunnelHealthCheckTarget:MagicWanGreTunnelHealthCheckTarget": {
            "properties": {
                "effective": {
                    "type": "string",
                    "description": "The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.\n"
                },
                "saved": {
                    "type": "string",
                    "description": "The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "effective"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanIpsecTunnelBgp:MagicWanIpsecTunnelBgp": {
            "properties": {
                "customerAsn": {
                    "type": "integer",
                    "description": "ASN used on the customer end of the BGP session\n"
                },
                "extraPrefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Prefixes in this list will be advertised to the customer device, in addition to the routes in the Magic routing table.\n"
                },
                "md5Key": {
                    "type": "string",
                    "description": "MD5 key to use for session authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "customerAsn"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "customerAsn",
                        "extraPrefixes"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanIpsecTunnelBgpStatus:MagicWanIpsecTunnelBgpStatus": {
            "properties": {
                "bgpState": {
                    "type": "string"
                },
                "cfSpeakerIp": {
                    "type": "string"
                },
                "cfSpeakerPort": {
                    "type": "integer"
                },
                "customerSpeakerIp": {
                    "type": "string"
                },
                "customerSpeakerPort": {
                    "type": "integer"
                },
                "state": {
                    "type": "string",
                    "description": "Available values: \"BGP*DOWN\", \"BGP*UP\", \"BGP_ESTABLISHING\".\n"
                },
                "tcpEstablished": {
                    "type": "boolean"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bgpState",
                        "cfSpeakerIp",
                        "cfSpeakerPort",
                        "customerSpeakerIp",
                        "customerSpeakerPort",
                        "state",
                        "tcpEstablished",
                        "updatedAt"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanIpsecTunnelCustomRemoteIdentities:MagicWanIpsecTunnelCustomRemoteIdentities": {
            "properties": {
                "fqdnId": {
                    "type": "string",
                    "description": "A custom IKE ID of type FQDN that may be used to identity the IPsec tunnel. The\ngenerated IKE IDs can still be used even if this custom value is specified.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/MagicWanIpsecTunnelHealthCheck:MagicWanIpsecTunnelHealthCheck": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The direction of the flow of the healthcheck. Either unidirectional, where the probe comes to you via the tunnel and the result comes back to Cloudflare via the open Internet, or bidirectional where both the probe and result come and go via the tunnel.\nAvailable values: \"unidirectional\", \"bidirectional\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether to run healthchecks for a tunnel.\n"
                },
                "rate": {
                    "type": "string",
                    "description": "How frequent the health check is run. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelHealthCheckTarget:MagicWanIpsecTunnelHealthCheckTarget",
                    "description": "The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to \u003cspan pulumi-lang-nodejs=\"`customerGreEndpoint \" pulumi-lang-dotnet=\"`CustomerGreEndpoint \" pulumi-lang-go=\"`customerGreEndpoint \" pulumi-lang-python=\"`customer_gre_endpoint \" pulumi-lang-yaml=\"`customerGreEndpoint \" pulumi-lang-java=\"`customerGreEndpoint \"\u003e`customerGreEndpoint \u003c/span\u003eaddress`. This field is ignored for bidirectional healthchecks as the interface*address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of healthcheck to run, reply or request. The default value is \u003cspan pulumi-lang-nodejs=\"`reply`\" pulumi-lang-dotnet=\"`Reply`\" pulumi-lang-go=\"`reply`\" pulumi-lang-python=\"`reply`\" pulumi-lang-yaml=\"`reply`\" pulumi-lang-java=\"`reply`\"\u003e`reply`\u003c/span\u003e.\nAvailable values: \"reply\", \"request\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "direction",
                        "enabled",
                        "rate",
                        "target",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanIpsecTunnelHealthCheckTarget:MagicWanIpsecTunnelHealthCheckTarget": {
            "properties": {
                "effective": {
                    "type": "string",
                    "description": "The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.\n"
                },
                "saved": {
                    "type": "string",
                    "description": "The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "effective"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanIpsecTunnelPskMetadata:MagicWanIpsecTunnelPskMetadata": {
            "properties": {
                "lastGeneratedOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was last modified.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lastGeneratedOn"
                    ]
                }
            }
        },
        "cloudflare:index/MagicWanStaticRouteScope:MagicWanStaticRouteScope": {
            "properties": {
                "coloNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of colo names for the ECMP scope.\n"
                },
                "coloRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of colo regions for the ECMP scope.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ManagedHeadersManagedRequestHeader:ManagedHeadersManagedRequestHeader": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Managed Transform is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The human-readable identifier of the Managed Transform.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/ManagedHeadersManagedResponseHeader:ManagedHeadersManagedResponseHeader": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Managed Transform is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The human-readable identifier of the Managed Transform.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/ManagedTransformsManagedRequestHeader:ManagedTransformsManagedRequestHeader": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Managed Transform is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The human-readable identifier of the Managed Transform.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/ManagedTransformsManagedResponseHeader:ManagedTransformsManagedResponseHeader": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Managed Transform is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The human-readable identifier of the Managed Transform.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/NotificationPolicyFilters:NotificationPolicyFilters": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "affectedAsns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring radar_notification\n"
                },
                "affectedComponents": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring incident_alert\n"
                },
                "affectedLocations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring radar_notification\n"
                },
                "airportCodes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring maintenance*event*notification\n"
                },
                "alertTriggerPreferences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "alertTriggerPreferencesValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "enableds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*pool*enablement*alert\n"
                },
                "environments": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "eventSources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*health_alert\n"
                },
                "eventTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "healthCheckIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring health*check*status_notification\n"
                },
                "incidentImpacts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring incident_alert\n"
                },
                "inputIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring stream*live*notifications\n"
                },
                "insightClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring security*insights*alert\n"
                },
                "limits": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring billing*usage*alert\n"
                },
                "logoTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring logo*match*alert\n"
                },
                "megabitsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "newHealths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*health_alert\n"
                },
                "newStatuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring tunnel*health*event\n"
                },
                "packetsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "poolIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "popNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring billing*usage*alert\n"
                },
                "projectIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "protocols": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "queryTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "requestsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "selectors": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "services": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring clickhouse*alert*fw*ent*anomaly\n"
                },
                "slos": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "statuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring health*check*status_notification\n"
                },
                "targetHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "targetIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "targetZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "trafficExclusions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring traffic*anomalies*alert\n"
                },
                "tunnelIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring tunnel*health*event\n"
                },
                "tunnelNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "types": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "wheres": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "zones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/NotificationPolicyMechanisms:NotificationPolicyMechanisms": {
            "properties": {
                "emails": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/NotificationPolicyMechanismsEmail:NotificationPolicyMechanismsEmail"
                    }
                },
                "pagerduties": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/NotificationPolicyMechanismsPagerduty:NotificationPolicyMechanismsPagerduty"
                    }
                },
                "webhooks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/NotificationPolicyMechanismsWebhook:NotificationPolicyMechanismsWebhook"
                    }
                }
            },
            "type": "object"
        },
        "cloudflare:index/NotificationPolicyMechanismsEmail:NotificationPolicyMechanismsEmail": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The email address\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/NotificationPolicyMechanismsPagerduty:NotificationPolicyMechanismsPagerduty": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/NotificationPolicyMechanismsWebhook:NotificationPolicyMechanismsWebhook": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ObservatoryScheduledTestSchedule:ObservatoryScheduledTestSchedule": {
            "properties": {
                "frequency": {
                    "type": "string",
                    "description": "The frequency of the test.\nAvailable values: \"DAILY\", \"WEEKLY\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "A URL.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "frequency",
                        "region",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/ObservatoryScheduledTestTest:ObservatoryScheduledTestTest": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "desktopReport": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTestDesktopReport:ObservatoryScheduledTestTestDesktopReport",
                    "description": "The Lighthouse report.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "mobileReport": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTestMobileReport:ObservatoryScheduledTestTestMobileReport",
                    "description": "The Lighthouse report.\n"
                },
                "region": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTestRegion:ObservatoryScheduledTestTestRegion",
                    "description": "A test region with a label.\n"
                },
                "scheduleFrequency": {
                    "type": "string",
                    "description": "The frequency of the test.\nAvailable values: \"DAILY\", \"WEEKLY\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "A URL.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "date",
                        "desktopReport",
                        "id",
                        "mobileReport",
                        "region",
                        "scheduleFrequency",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/ObservatoryScheduledTestTestDesktopReport:ObservatoryScheduledTestTestDesktopReport": {
            "properties": {
                "cls": {
                    "type": "number",
                    "description": "Cumulative Layout Shift.\n"
                },
                "deviceType": {
                    "type": "string",
                    "description": "The type of device.\nAvailable values: \"DESKTOP\", \"MOBILE\".\n"
                },
                "error": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTestDesktopReportError:ObservatoryScheduledTestTestDesktopReportError"
                },
                "fcp": {
                    "type": "number",
                    "description": "First Contentful Paint.\n"
                },
                "jsonReportUrl": {
                    "type": "string",
                    "description": "The URL to the full Lighthouse JSON report.\n"
                },
                "lcp": {
                    "type": "number",
                    "description": "Largest Contentful Paint.\n"
                },
                "performanceScore": {
                    "type": "number",
                    "description": "The Lighthouse performance score.\n"
                },
                "si": {
                    "type": "number",
                    "description": "Speed Index.\n"
                },
                "state": {
                    "type": "string",
                    "description": "The state of the Lighthouse report.\nAvailable values: \"RUNNING\", \"COMPLETE\", \"FAILED\".\n"
                },
                "tbt": {
                    "type": "number",
                    "description": "Total Blocking Time.\n"
                },
                "ttfb": {
                    "type": "number",
                    "description": "Time To First Byte.\n"
                },
                "tti": {
                    "type": "number",
                    "description": "Time To Interactive.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cls",
                        "deviceType",
                        "error",
                        "fcp",
                        "jsonReportUrl",
                        "lcp",
                        "performanceScore",
                        "si",
                        "state",
                        "tbt",
                        "ttfb",
                        "tti"
                    ]
                }
            }
        },
        "cloudflare:index/ObservatoryScheduledTestTestDesktopReportError:ObservatoryScheduledTestTestDesktopReportError": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "The error code of the Lighthouse result.\nAvailable values: \"NOT*REACHABLE\", \"DNS*FAILURE\", \"NOT*HTML\", \"LIGHTHOUSE*TIMEOUT\", \"UNKNOWN\".\n"
                },
                "detail": {
                    "type": "string",
                    "description": "Detailed error message.\n"
                },
                "finalDisplayedUrl": {
                    "type": "string",
                    "description": "The final URL displayed to the user.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "detail",
                        "finalDisplayedUrl"
                    ]
                }
            }
        },
        "cloudflare:index/ObservatoryScheduledTestTestMobileReport:ObservatoryScheduledTestTestMobileReport": {
            "properties": {
                "cls": {
                    "type": "number",
                    "description": "Cumulative Layout Shift.\n"
                },
                "deviceType": {
                    "type": "string",
                    "description": "The type of device.\nAvailable values: \"DESKTOP\", \"MOBILE\".\n"
                },
                "error": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTestMobileReportError:ObservatoryScheduledTestTestMobileReportError"
                },
                "fcp": {
                    "type": "number",
                    "description": "First Contentful Paint.\n"
                },
                "jsonReportUrl": {
                    "type": "string",
                    "description": "The URL to the full Lighthouse JSON report.\n"
                },
                "lcp": {
                    "type": "number",
                    "description": "Largest Contentful Paint.\n"
                },
                "performanceScore": {
                    "type": "number",
                    "description": "The Lighthouse performance score.\n"
                },
                "si": {
                    "type": "number",
                    "description": "Speed Index.\n"
                },
                "state": {
                    "type": "string",
                    "description": "The state of the Lighthouse report.\nAvailable values: \"RUNNING\", \"COMPLETE\", \"FAILED\".\n"
                },
                "tbt": {
                    "type": "number",
                    "description": "Total Blocking Time.\n"
                },
                "ttfb": {
                    "type": "number",
                    "description": "Time To First Byte.\n"
                },
                "tti": {
                    "type": "number",
                    "description": "Time To Interactive.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cls",
                        "deviceType",
                        "error",
                        "fcp",
                        "jsonReportUrl",
                        "lcp",
                        "performanceScore",
                        "si",
                        "state",
                        "tbt",
                        "ttfb",
                        "tti"
                    ]
                }
            }
        },
        "cloudflare:index/ObservatoryScheduledTestTestMobileReportError:ObservatoryScheduledTestTestMobileReportError": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "The error code of the Lighthouse result.\nAvailable values: \"NOT*REACHABLE\", \"DNS*FAILURE\", \"NOT*HTML\", \"LIGHTHOUSE*TIMEOUT\", \"UNKNOWN\".\n"
                },
                "detail": {
                    "type": "string",
                    "description": "Detailed error message.\n"
                },
                "finalDisplayedUrl": {
                    "type": "string",
                    "description": "The final URL displayed to the user.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "detail",
                        "finalDisplayedUrl"
                    ]
                }
            }
        },
        "cloudflare:index/ObservatoryScheduledTestTestRegion:ObservatoryScheduledTestTestRegion": {
            "properties": {
                "label": {
                    "type": "string"
                },
                "value": {
                    "type": "string",
                    "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "label",
                        "value"
                    ]
                }
            }
        },
        "cloudflare:index/OrganizationMeta:OrganizationMeta": {
            "properties": {
                "flags": {
                    "$ref": "#/types/cloudflare:index/OrganizationMetaFlags:OrganizationMetaFlags",
                    "description": "Enable features for Organizations.\n"
                },
                "managedBy": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "flags",
                        "managedBy"
                    ]
                }
            }
        },
        "cloudflare:index/OrganizationMetaFlags:OrganizationMetaFlags": {
            "properties": {
                "accountCreation": {
                    "type": "string"
                },
                "accountDeletion": {
                    "type": "string"
                },
                "accountMigration": {
                    "type": "string"
                },
                "accountMobility": {
                    "type": "string"
                },
                "subOrgCreation": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "accountCreation",
                        "accountDeletion",
                        "accountMigration",
                        "accountMobility",
                        "subOrgCreation"
                    ]
                }
            }
        },
        "cloudflare:index/OrganizationParent:OrganizationParent": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/OrganizationProfile:OrganizationProfile": {
            "properties": {
                "businessAddress": {
                    "type": "string"
                },
                "businessEmail": {
                    "type": "string"
                },
                "businessName": {
                    "type": "string"
                },
                "businessPhone": {
                    "type": "string"
                },
                "externalMetadata": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "businessAddress",
                "businessEmail",
                "businessName",
                "businessPhone",
                "externalMetadata"
            ]
        },
        "cloudflare:index/PageRuleActions:PageRuleActions": {
            "properties": {
                "alwaysUseHttps": {
                    "type": "boolean"
                },
                "automaticHttpsRewrites": {
                    "type": "string"
                },
                "browserCacheTtl": {
                    "type": "integer"
                },
                "browserCheck": {
                    "type": "string"
                },
                "bypassCacheOnCookie": {
                    "type": "string"
                },
                "cacheByDeviceType": {
                    "type": "string"
                },
                "cacheDeceptionArmor": {
                    "type": "string"
                },
                "cacheKeyFields": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsCacheKeyFields:PageRuleActionsCacheKeyFields"
                },
                "cacheLevel": {
                    "type": "string"
                },
                "cacheOnCookie": {
                    "type": "string"
                },
                "cacheTtlByStatus": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "disableApps": {
                    "type": "boolean"
                },
                "disablePerformance": {
                    "type": "boolean"
                },
                "disableSecurity": {
                    "type": "boolean"
                },
                "disableZaraz": {
                    "type": "boolean"
                },
                "edgeCacheTtl": {
                    "type": "integer"
                },
                "emailObfuscation": {
                    "type": "string"
                },
                "explicitCacheControl": {
                    "type": "string"
                },
                "forwardingUrl": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsForwardingUrl:PageRuleActionsForwardingUrl"
                },
                "hostHeaderOverride": {
                    "type": "string"
                },
                "ipGeolocation": {
                    "type": "string"
                },
                "mirage": {
                    "type": "string"
                },
                "opportunisticEncryption": {
                    "type": "string"
                },
                "originErrorPagePassThru": {
                    "type": "string"
                },
                "polish": {
                    "type": "string"
                },
                "resolveOverride": {
                    "type": "string"
                },
                "respectStrongEtag": {
                    "type": "string"
                },
                "responseBuffering": {
                    "type": "string"
                },
                "rocketLoader": {
                    "type": "string"
                },
                "securityLevel": {
                    "type": "string"
                },
                "sortQueryStringForCache": {
                    "type": "string"
                },
                "ssl": {
                    "type": "string"
                },
                "trueClientIpHeader": {
                    "type": "string"
                },
                "waf": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PageRuleActionsCacheKeyFields:PageRuleActionsCacheKeyFields": {
            "properties": {
                "cookie": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsCacheKeyFieldsCookie:PageRuleActionsCacheKeyFieldsCookie"
                },
                "header": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsCacheKeyFieldsHeader:PageRuleActionsCacheKeyFieldsHeader"
                },
                "host": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsCacheKeyFieldsHost:PageRuleActionsCacheKeyFieldsHost"
                },
                "queryString": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsCacheKeyFieldsQueryString:PageRuleActionsCacheKeyFieldsQueryString"
                },
                "user": {
                    "$ref": "#/types/cloudflare:index/PageRuleActionsCacheKeyFieldsUser:PageRuleActionsCacheKeyFieldsUser"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "host",
                        "user"
                    ]
                }
            }
        },
        "cloudflare:index/PageRuleActionsCacheKeyFieldsCookie:PageRuleActionsCacheKeyFieldsCookie": {
            "properties": {
                "checkPresences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "checkPresences",
                        "includes"
                    ]
                }
            }
        },
        "cloudflare:index/PageRuleActionsCacheKeyFieldsHeader:PageRuleActionsCacheKeyFieldsHeader": {
            "properties": {
                "checkPresences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "checkPresences",
                        "excludes",
                        "includes"
                    ]
                }
            }
        },
        "cloudflare:index/PageRuleActionsCacheKeyFieldsHost:PageRuleActionsCacheKeyFieldsHost": {
            "properties": {
                "resolved": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "resolved"
                    ]
                }
            }
        },
        "cloudflare:index/PageRuleActionsCacheKeyFieldsQueryString:PageRuleActionsCacheKeyFieldsQueryString": {
            "properties": {
                "excludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "excludes",
                        "includes"
                    ]
                }
            }
        },
        "cloudflare:index/PageRuleActionsCacheKeyFieldsUser:PageRuleActionsCacheKeyFieldsUser": {
            "properties": {
                "deviceType": {
                    "type": "boolean"
                },
                "geo": {
                    "type": "boolean"
                },
                "lang": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "deviceType",
                        "geo",
                        "lang"
                    ]
                }
            }
        },
        "cloudflare:index/PageRuleActionsForwardingUrl:PageRuleActionsForwardingUrl": {
            "properties": {
                "statusCode": {
                    "type": "integer"
                },
                "url": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "statusCode",
                "url"
            ]
        },
        "cloudflare:index/PagesDomainValidationData:PagesDomainValidationData": {
            "properties": {
                "errorMessage": {
                    "type": "string"
                },
                "method": {
                    "type": "string",
                    "description": "Available values: \"http\", \"txt\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"error\".\n"
                },
                "txtName": {
                    "type": "string"
                },
                "txtValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "errorMessage",
                        "method",
                        "status",
                        "txtName",
                        "txtValue"
                    ]
                }
            }
        },
        "cloudflare:index/PagesDomainVerificationData:PagesDomainVerificationData": {
            "properties": {
                "errorMessage": {
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "errorMessage",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectBuildConfig:PagesProjectBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "buildCaching",
                        "buildCommand",
                        "destinationDir",
                        "rootDir",
                        "webAnalyticsTag",
                        "webAnalyticsToken"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeployment:PagesProjectCanonicalDeployment": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of alias URLs pointing to this deployment.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentBuildConfig:PagesProjectCanonicalDeploymentBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the deployment was created.\n"
                },
                "deploymentTrigger": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentDeploymentTrigger:PagesProjectCanonicalDeploymentDeploymentTrigger",
                    "description": "Info about what caused the deployment.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentEnvVars:PagesProjectCanonicalDeploymentEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Type of deploy.\nAvailable values: \"preview\", \"production\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Id of the deployment.\n"
                },
                "isSkipped": {
                    "type": "boolean",
                    "description": "If the deployment has been skipped.\n"
                },
                "latestStage": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentLatestStage:PagesProjectCanonicalDeploymentLatestStage",
                    "description": "The status of the deployment.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the deployment was last modified.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Id of the project.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "shortId": {
                    "type": "string",
                    "description": "Short Id (8 character) of the deployment.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentSource:PagesProjectCanonicalDeploymentSource",
                    "description": "Configs for the project source control.\n"
                },
                "stages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentStage:PagesProjectCanonicalDeploymentStage"
                    },
                    "description": "List of past stages.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The live URL to view this deployment.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the deployment uses functions.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aliases",
                        "buildConfig",
                        "createdOn",
                        "deploymentTrigger",
                        "envVars",
                        "environment",
                        "id",
                        "isSkipped",
                        "latestStage",
                        "modifiedOn",
                        "projectId",
                        "projectName",
                        "shortId",
                        "source",
                        "stages",
                        "url",
                        "usesFunctions"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentBuildConfig:PagesProjectCanonicalDeploymentBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "buildCaching",
                        "buildCommand",
                        "destinationDir",
                        "rootDir",
                        "webAnalyticsTag",
                        "webAnalyticsToken"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentDeploymentTrigger:PagesProjectCanonicalDeploymentDeploymentTrigger": {
            "properties": {
                "metadata": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentDeploymentTriggerMetadata:PagesProjectCanonicalDeploymentDeploymentTriggerMetadata",
                    "description": "Additional info about the trigger.\n"
                },
                "type": {
                    "type": "string",
                    "description": "What caused the deployment.\nAvailable values: \"github:push\", \"ad*hoc\", \"deploy*hook\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "metadata",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentDeploymentTriggerMetadata:PagesProjectCanonicalDeploymentDeploymentTriggerMetadata": {
            "properties": {
                "branch": {
                    "type": "string",
                    "description": "Where the trigger happened.\n"
                },
                "commitDirty": {
                    "type": "boolean",
                    "description": "Whether the deployment trigger commit was dirty.\n"
                },
                "commitHash": {
                    "type": "string",
                    "description": "Hash of the deployment trigger commit.\n"
                },
                "commitMessage": {
                    "type": "string",
                    "description": "Message of the deployment trigger commit.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "branch",
                        "commitDirty",
                        "commitHash",
                        "commitMessage"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentEnvVars:PagesProjectCanonicalDeploymentEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "type",
                        "value"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentLatestStage:PagesProjectCanonicalDeploymentLatestStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "endedOn",
                        "name",
                        "startedOn",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentSource:PagesProjectCanonicalDeploymentSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeploymentSourceConfig:PagesProjectCanonicalDeploymentSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "config",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentSourceConfig:PagesProjectCanonicalDeploymentSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "deploymentsEnabled",
                        "owner",
                        "ownerId",
                        "pathExcludes",
                        "pathIncludes",
                        "prCommentsEnabled",
                        "previewBranchExcludes",
                        "previewBranchIncludes",
                        "previewDeploymentSetting",
                        "productionBranch",
                        "productionDeploymentsEnabled",
                        "repoId",
                        "repoName"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectCanonicalDeploymentStage:PagesProjectCanonicalDeploymentStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "endedOn",
                        "name",
                        "startedOn",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectDeploymentConfigs:PagesProjectDeploymentConfigs": {
            "properties": {
                "preview": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreview:PagesProjectDeploymentConfigsPreview",
                    "description": "Configs for preview deploys.\n"
                },
                "production": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProduction:PagesProjectDeploymentConfigsProduction",
                    "description": "Configs for production deploys.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "preview",
                        "production"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreview:PagesProjectDeploymentConfigsPreview": {
            "properties": {
                "aiBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewAiBindings:PagesProjectDeploymentConfigsPreviewAiBindings"
                    },
                    "description": "Constellation bindings used for Pages Functions.\n"
                },
                "alwaysUseLatestCompatibilityDate": {
                    "type": "boolean",
                    "description": "Whether to always use the latest compatibility date for Pages Functions.\n"
                },
                "analyticsEngineDatasets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets:PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets"
                    },
                    "description": "Analytics Engine bindings used for Pages Functions.\n"
                },
                "browsers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewBrowsers:PagesProjectDeploymentConfigsPreviewBrowsers"
                    },
                    "description": "Browser bindings used for Pages Functions.\n"
                },
                "buildImageMajorVersion": {
                    "type": "integer",
                    "description": "The major version of the build image to use for Pages Functions.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Compatibility date used for Pages Functions.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Compatibility flags used for Pages Functions.\n"
                },
                "d1Databases": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewD1Databases:PagesProjectDeploymentConfigsPreviewD1Databases"
                    },
                    "description": "D1 databases used for Pages Functions.\n"
                },
                "durableObjectNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewDurableObjectNamespaces:PagesProjectDeploymentConfigsPreviewDurableObjectNamespaces"
                    },
                    "description": "Durable Object namespaces used for Pages Functions.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewEnvVars:PagesProjectDeploymentConfigsPreviewEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "failOpen": {
                    "type": "boolean",
                    "description": "Whether to fail open when the deployment config cannot be applied.\n"
                },
                "hyperdriveBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewHyperdriveBindings:PagesProjectDeploymentConfigsPreviewHyperdriveBindings"
                    },
                    "description": "Hyperdrive bindings used for Pages Functions.\n"
                },
                "kvNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewKvNamespaces:PagesProjectDeploymentConfigsPreviewKvNamespaces"
                    },
                    "description": "KV namespaces used for Pages Functions.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewLimits:PagesProjectDeploymentConfigsPreviewLimits",
                    "description": "Limits for Pages Functions.\n"
                },
                "mtlsCertificates": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewMtlsCertificates:PagesProjectDeploymentConfigsPreviewMtlsCertificates"
                    },
                    "description": "mTLS bindings used for Pages Functions.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewPlacement:PagesProjectDeploymentConfigsPreviewPlacement",
                    "description": "Placement setting used for Pages Functions.\n"
                },
                "queueProducers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewQueueProducers:PagesProjectDeploymentConfigsPreviewQueueProducers"
                    },
                    "description": "Queue Producer bindings used for Pages Functions.\n"
                },
                "r2Buckets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewR2Buckets:PagesProjectDeploymentConfigsPreviewR2Buckets"
                    },
                    "description": "R2 buckets used for Pages Functions.\n"
                },
                "services": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewServices:PagesProjectDeploymentConfigsPreviewServices"
                    },
                    "description": "Services used for Pages Functions.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "The usage model for Pages Functions.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "All new projects now use the Standard usage model."
                },
                "vectorizeBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsPreviewVectorizeBindings:PagesProjectDeploymentConfigsPreviewVectorizeBindings"
                    },
                    "description": "Vectorize bindings used for Pages Functions.\n"
                },
                "wranglerConfigHash": {
                    "type": "string",
                    "description": "Hash of the Wrangler configuration used for the deployment.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "alwaysUseLatestCompatibilityDate",
                        "buildImageMajorVersion",
                        "compatibilityDate",
                        "failOpen",
                        "usageModel"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewAiBindings:PagesProjectDeploymentConfigsPreviewAiBindings": {
            "properties": {
                "projectId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "projectId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets:PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewBrowsers:PagesProjectDeploymentConfigsPreviewBrowsers": {
            "type": "object"
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewD1Databases:PagesProjectDeploymentConfigsPreviewD1Databases": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the D1 database.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewDurableObjectNamespaces:PagesProjectDeploymentConfigsPreviewDurableObjectNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewEnvVars:PagesProjectDeploymentConfigsPreviewEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewHyperdriveBindings:PagesProjectDeploymentConfigsPreviewHyperdriveBindings": {
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewKvNamespaces:PagesProjectDeploymentConfigsPreviewKvNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the KV namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewLimits:PagesProjectDeploymentConfigsPreviewLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewMtlsCertificates:PagesProjectDeploymentConfigsPreviewMtlsCertificates": {
            "properties": {
                "certificateId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewPlacement:PagesProjectDeploymentConfigsPreviewPlacement": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Placement mode.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewQueueProducers:PagesProjectDeploymentConfigsPreviewQueueProducers": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the Queue.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewR2Buckets:PagesProjectDeploymentConfigsPreviewR2Buckets": {
            "properties": {
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the R2 bucket.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the R2 bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewServices:PagesProjectDeploymentConfigsPreviewServices": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "The entrypoint to bind to.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The Service environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The Service name.\n"
                }
            },
            "type": "object",
            "required": [
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "environment",
                        "service"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectDeploymentConfigsPreviewVectorizeBindings:PagesProjectDeploymentConfigsPreviewVectorizeBindings": {
            "properties": {
                "indexName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "indexName"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProduction:PagesProjectDeploymentConfigsProduction": {
            "properties": {
                "aiBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionAiBindings:PagesProjectDeploymentConfigsProductionAiBindings"
                    },
                    "description": "Constellation bindings used for Pages Functions.\n"
                },
                "alwaysUseLatestCompatibilityDate": {
                    "type": "boolean",
                    "description": "Whether to always use the latest compatibility date for Pages Functions.\n"
                },
                "analyticsEngineDatasets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets:PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets"
                    },
                    "description": "Analytics Engine bindings used for Pages Functions.\n"
                },
                "browsers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionBrowsers:PagesProjectDeploymentConfigsProductionBrowsers"
                    },
                    "description": "Browser bindings used for Pages Functions.\n"
                },
                "buildImageMajorVersion": {
                    "type": "integer",
                    "description": "The major version of the build image to use for Pages Functions.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Compatibility date used for Pages Functions.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Compatibility flags used for Pages Functions.\n"
                },
                "d1Databases": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionD1Databases:PagesProjectDeploymentConfigsProductionD1Databases"
                    },
                    "description": "D1 databases used for Pages Functions.\n"
                },
                "durableObjectNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionDurableObjectNamespaces:PagesProjectDeploymentConfigsProductionDurableObjectNamespaces"
                    },
                    "description": "Durable Object namespaces used for Pages Functions.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionEnvVars:PagesProjectDeploymentConfigsProductionEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "failOpen": {
                    "type": "boolean",
                    "description": "Whether to fail open when the deployment config cannot be applied.\n"
                },
                "hyperdriveBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionHyperdriveBindings:PagesProjectDeploymentConfigsProductionHyperdriveBindings"
                    },
                    "description": "Hyperdrive bindings used for Pages Functions.\n"
                },
                "kvNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionKvNamespaces:PagesProjectDeploymentConfigsProductionKvNamespaces"
                    },
                    "description": "KV namespaces used for Pages Functions.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionLimits:PagesProjectDeploymentConfigsProductionLimits",
                    "description": "Limits for Pages Functions.\n"
                },
                "mtlsCertificates": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionMtlsCertificates:PagesProjectDeploymentConfigsProductionMtlsCertificates"
                    },
                    "description": "mTLS bindings used for Pages Functions.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionPlacement:PagesProjectDeploymentConfigsProductionPlacement",
                    "description": "Placement setting used for Pages Functions.\n"
                },
                "queueProducers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionQueueProducers:PagesProjectDeploymentConfigsProductionQueueProducers"
                    },
                    "description": "Queue Producer bindings used for Pages Functions.\n"
                },
                "r2Buckets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionR2Buckets:PagesProjectDeploymentConfigsProductionR2Buckets"
                    },
                    "description": "R2 buckets used for Pages Functions.\n"
                },
                "services": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionServices:PagesProjectDeploymentConfigsProductionServices"
                    },
                    "description": "Services used for Pages Functions.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "The usage model for Pages Functions.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "All new projects now use the Standard usage model."
                },
                "vectorizeBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigsProductionVectorizeBindings:PagesProjectDeploymentConfigsProductionVectorizeBindings"
                    },
                    "description": "Vectorize bindings used for Pages Functions.\n"
                },
                "wranglerConfigHash": {
                    "type": "string",
                    "description": "Hash of the Wrangler configuration used for the deployment.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "alwaysUseLatestCompatibilityDate",
                        "buildImageMajorVersion",
                        "compatibilityDate",
                        "failOpen",
                        "usageModel"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionAiBindings:PagesProjectDeploymentConfigsProductionAiBindings": {
            "properties": {
                "projectId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "projectId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets:PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionBrowsers:PagesProjectDeploymentConfigsProductionBrowsers": {
            "type": "object"
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionD1Databases:PagesProjectDeploymentConfigsProductionD1Databases": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the D1 database.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionDurableObjectNamespaces:PagesProjectDeploymentConfigsProductionDurableObjectNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionEnvVars:PagesProjectDeploymentConfigsProductionEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionHyperdriveBindings:PagesProjectDeploymentConfigsProductionHyperdriveBindings": {
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionKvNamespaces:PagesProjectDeploymentConfigsProductionKvNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the KV namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionLimits:PagesProjectDeploymentConfigsProductionLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionMtlsCertificates:PagesProjectDeploymentConfigsProductionMtlsCertificates": {
            "properties": {
                "certificateId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateId"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionPlacement:PagesProjectDeploymentConfigsProductionPlacement": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Placement mode.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionQueueProducers:PagesProjectDeploymentConfigsProductionQueueProducers": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the Queue.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionR2Buckets:PagesProjectDeploymentConfigsProductionR2Buckets": {
            "properties": {
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the R2 bucket.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the R2 bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionServices:PagesProjectDeploymentConfigsProductionServices": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "The entrypoint to bind to.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The Service environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The Service name.\n"
                }
            },
            "type": "object",
            "required": [
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "environment",
                        "service"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectDeploymentConfigsProductionVectorizeBindings:PagesProjectDeploymentConfigsProductionVectorizeBindings": {
            "properties": {
                "indexName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "indexName"
            ]
        },
        "cloudflare:index/PagesProjectLatestDeployment:PagesProjectLatestDeployment": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of alias URLs pointing to this deployment.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentBuildConfig:PagesProjectLatestDeploymentBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the deployment was created.\n"
                },
                "deploymentTrigger": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentDeploymentTrigger:PagesProjectLatestDeploymentDeploymentTrigger",
                    "description": "Info about what caused the deployment.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentEnvVars:PagesProjectLatestDeploymentEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Type of deploy.\nAvailable values: \"preview\", \"production\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Id of the deployment.\n"
                },
                "isSkipped": {
                    "type": "boolean",
                    "description": "If the deployment has been skipped.\n"
                },
                "latestStage": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentLatestStage:PagesProjectLatestDeploymentLatestStage",
                    "description": "The status of the deployment.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the deployment was last modified.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Id of the project.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "shortId": {
                    "type": "string",
                    "description": "Short Id (8 character) of the deployment.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentSource:PagesProjectLatestDeploymentSource",
                    "description": "Configs for the project source control.\n"
                },
                "stages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentStage:PagesProjectLatestDeploymentStage"
                    },
                    "description": "List of past stages.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The live URL to view this deployment.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the deployment uses functions.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aliases",
                        "buildConfig",
                        "createdOn",
                        "deploymentTrigger",
                        "envVars",
                        "environment",
                        "id",
                        "isSkipped",
                        "latestStage",
                        "modifiedOn",
                        "projectId",
                        "projectName",
                        "shortId",
                        "source",
                        "stages",
                        "url",
                        "usesFunctions"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentBuildConfig:PagesProjectLatestDeploymentBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "buildCaching",
                        "buildCommand",
                        "destinationDir",
                        "rootDir",
                        "webAnalyticsTag",
                        "webAnalyticsToken"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentDeploymentTrigger:PagesProjectLatestDeploymentDeploymentTrigger": {
            "properties": {
                "metadata": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentDeploymentTriggerMetadata:PagesProjectLatestDeploymentDeploymentTriggerMetadata",
                    "description": "Additional info about the trigger.\n"
                },
                "type": {
                    "type": "string",
                    "description": "What caused the deployment.\nAvailable values: \"github:push\", \"ad*hoc\", \"deploy*hook\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "metadata",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentDeploymentTriggerMetadata:PagesProjectLatestDeploymentDeploymentTriggerMetadata": {
            "properties": {
                "branch": {
                    "type": "string",
                    "description": "Where the trigger happened.\n"
                },
                "commitDirty": {
                    "type": "boolean",
                    "description": "Whether the deployment trigger commit was dirty.\n"
                },
                "commitHash": {
                    "type": "string",
                    "description": "Hash of the deployment trigger commit.\n"
                },
                "commitMessage": {
                    "type": "string",
                    "description": "Message of the deployment trigger commit.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "branch",
                        "commitDirty",
                        "commitHash",
                        "commitMessage"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentEnvVars:PagesProjectLatestDeploymentEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "type",
                        "value"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentLatestStage:PagesProjectLatestDeploymentLatestStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "endedOn",
                        "name",
                        "startedOn",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentSource:PagesProjectLatestDeploymentSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeploymentSourceConfig:PagesProjectLatestDeploymentSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "config",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentSourceConfig:PagesProjectLatestDeploymentSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "deploymentsEnabled",
                        "owner",
                        "ownerId",
                        "pathExcludes",
                        "pathIncludes",
                        "prCommentsEnabled",
                        "previewBranchExcludes",
                        "previewBranchIncludes",
                        "previewDeploymentSetting",
                        "productionBranch",
                        "productionDeploymentsEnabled",
                        "repoId",
                        "repoName"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectLatestDeploymentStage:PagesProjectLatestDeploymentStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "endedOn",
                        "name",
                        "startedOn",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/PagesProjectSource:PagesProjectSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/PagesProjectSourceConfig:PagesProjectSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ]
        },
        "cloudflare:index/PagesProjectSourceConfig:PagesProjectSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "deploymentsEnabled",
                        "owner",
                        "ownerId",
                        "pathExcludes",
                        "pathIncludes",
                        "prCommentsEnabled",
                        "previewBranchExcludes",
                        "previewBranchIncludes",
                        "previewDeploymentSetting",
                        "productionBranch",
                        "productionDeploymentsEnabled",
                        "repoId",
                        "repoName"
                    ]
                }
            }
        },
        "cloudflare:index/PipelineSinkConfig:PipelineSinkConfig": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare Account ID for the bucket\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "R2 Bucket to write to\n"
                },
                "credentials": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkConfigCredentials:PipelineSinkConfigCredentials"
                },
                "fileNaming": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkConfigFileNaming:PipelineSinkConfigFileNaming",
                    "description": "Controls filename prefix/suffix and strategy.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction this bucket is hosted in\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "Table namespace\n"
                },
                "partitioning": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkConfigPartitioning:PipelineSinkConfigPartitioning",
                    "description": "Data-layout partitioning for sinks.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Subpath within the bucket to write to\n"
                },
                "rollingPolicy": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkConfigRollingPolicy:PipelineSinkConfigRollingPolicy",
                    "description": "Rolling policy for file sinks (when \u0026 why to close a file and open a new one).\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "Table name\n"
                },
                "token": {
                    "type": "string",
                    "description": "Authentication token\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "accountId",
                "bucket"
            ]
        },
        "cloudflare:index/PipelineSinkConfigCredentials:PipelineSinkConfigCredentials": {
            "properties": {
                "accessKeyId": {
                    "type": "string",
                    "description": "Cloudflare Account ID for the bucket\n"
                },
                "secretAccessKey": {
                    "type": "string",
                    "description": "Cloudflare Account ID for the bucket\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "accessKeyId",
                "secretAccessKey"
            ]
        },
        "cloudflare:index/PipelineSinkConfigFileNaming:PipelineSinkConfigFileNaming": {
            "properties": {
                "prefix": {
                    "type": "string",
                    "description": "The prefix to use in file name. i.e prefix-\\n\\n.parquet\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "Filename generation strategy.\nAvailable values: \"serial\", \"uuid\", \u003cspan pulumi-lang-nodejs=\"\"uuidV7\"\" pulumi-lang-dotnet=\"\"UuidV7\"\" pulumi-lang-go=\"\"uuidV7\"\" pulumi-lang-python=\"\"uuid_v7\"\" pulumi-lang-yaml=\"\"uuidV7\"\" pulumi-lang-java=\"\"uuidV7\"\"\u003e\"uuidV7\"\u003c/span\u003e, \"ulid\".\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "This will overwrite the default file suffix. i.e .parquet, use with caution\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PipelineSinkConfigPartitioning:PipelineSinkConfigPartitioning": {
            "properties": {
                "timePattern": {
                    "type": "string",
                    "description": "The pattern of the date string\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PipelineSinkConfigRollingPolicy:PipelineSinkConfigRollingPolicy": {
            "properties": {
                "fileSizeBytes": {
                    "type": "integer",
                    "description": "Files will be rolled after reaching this number of bytes\n"
                },
                "inactivitySeconds": {
                    "type": "integer",
                    "description": "Number of seconds of inactivity to wait before rolling over to a new file\n"
                },
                "intervalSeconds": {
                    "type": "integer",
                    "description": "Number of seconds to wait before rolling over to a new file\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PipelineSinkFormat:PipelineSinkFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/PipelineSinkSchema:PipelineSinkSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/PipelineSinkSchemaField:PipelineSinkSchemaField"
                    }
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkSchemaFormat:PipelineSinkSchemaFormat"
                },
                "inferred": {
                    "type": "boolean"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PipelineSinkSchemaField:PipelineSinkSchemaField": {
            "properties": {
                "metadataKey": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "required": {
                    "type": "boolean"
                },
                "sqlName": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"int32\", \"int64\", \"float32\", \"float64\", \"bool\", \"string\", \"binary\", \"timestamp\", \"json\".\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Available values: \"second\", \"millisecond\", \"microsecond\", \"nanosecond\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/PipelineSinkSchemaFormat:PipelineSinkSchemaFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/PipelineStreamFormat:PipelineStreamFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/PipelineStreamHttp:PipelineStreamHttp": {
            "properties": {
                "authentication": {
                    "type": "boolean",
                    "description": "Indicates that authentication is required for the HTTP endpoint.\n"
                },
                "cors": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamHttpCors:PipelineStreamHttpCors",
                    "description": "Specifies the CORS options for the HTTP endpoint.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates that the HTTP endpoint is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "authentication",
                "enabled"
            ]
        },
        "cloudflare:index/PipelineStreamHttpCors:PipelineStreamHttpCors": {
            "properties": {
                "origins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object"
        },
        "cloudflare:index/PipelineStreamSchema:PipelineStreamSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/PipelineStreamSchemaField:PipelineStreamSchemaField"
                    }
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamSchemaFormat:PipelineStreamSchemaFormat"
                },
                "inferred": {
                    "type": "boolean"
                }
            },
            "type": "object"
        },
        "cloudflare:index/PipelineStreamSchemaField:PipelineStreamSchemaField": {
            "properties": {
                "metadataKey": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "required": {
                    "type": "boolean"
                },
                "sqlName": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"int32\", \"int64\", \"float32\", \"float64\", \"bool\", \"string\", \"binary\", \"timestamp\", \"json\".\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Available values: \"second\", \"millisecond\", \"microsecond\", \"nanosecond\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/PipelineStreamSchemaFormat:PipelineStreamSchemaFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/PipelineStreamWorkerBinding:PipelineStreamWorkerBinding": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates that the worker binding is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ]
        },
        "cloudflare:index/PipelineTable:PipelineTable": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Unique identifier for the connection (stream or sink).\n"
                },
                "latest": {
                    "type": "integer",
                    "description": "Latest available version of the connection.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the connection.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the connection.\nAvailable values: \"stream\", \"sink\".\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Current version of the connection used by this pipeline.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "latest",
                        "name",
                        "type",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/QueueConsumer:QueueConsumer": {
            "properties": {
                "consumerId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "deadLetterQueue": {
                    "type": "string",
                    "description": "Name of the dead letter queue, or empty string if not configured\n"
                },
                "queueName": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of a Worker\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/QueueConsumerSettings:QueueConsumerSettings"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "consumerId",
                        "createdOn",
                        "deadLetterQueue",
                        "queueName",
                        "scriptName",
                        "settings",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/QueueConsumerSettings:QueueConsumerSettings": {
            "properties": {
                "batchSize": {
                    "type": "number",
                    "description": "The maximum number of messages to include in a batch.\n"
                },
                "maxConcurrency": {
                    "type": "number",
                    "description": "Maximum number of concurrent consumers that may consume from this Queue. Set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e to automatically opt in to the platform's maximum (recommended).\n"
                },
                "maxRetries": {
                    "type": "number",
                    "description": "The maximum number of retries\n"
                },
                "maxWaitTimeMs": {
                    "type": "number",
                    "description": "The number of milliseconds to wait for a batch to fill up before attempting to deliver it\n"
                },
                "retryDelay": {
                    "type": "number",
                    "description": "The number of seconds to delay before making the message available for another attempt.\n"
                },
                "visibilityTimeoutMs": {
                    "type": "number",
                    "description": "The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "batchSize",
                        "maxConcurrency",
                        "maxRetries",
                        "maxWaitTimeMs",
                        "retryDelay",
                        "visibilityTimeoutMs"
                    ]
                }
            }
        },
        "cloudflare:index/QueueProducer:QueueProducer": {
            "properties": {
                "bucketName": {
                    "type": "string"
                },
                "script": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"r2Bucket\"\" pulumi-lang-dotnet=\"\"R2Bucket\"\" pulumi-lang-go=\"\"r2Bucket\"\" pulumi-lang-python=\"\"r2_bucket\"\" pulumi-lang-yaml=\"\"r2Bucket\"\" pulumi-lang-java=\"\"r2Bucket\"\"\u003e\"r2Bucket\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bucketName",
                        "script",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/QueueSettings:QueueSettings": {
            "properties": {
                "deliveryDelay": {
                    "type": "number",
                    "description": "Number of seconds to delay delivery of all messages to consumers.\n"
                },
                "deliveryPaused": {
                    "type": "boolean",
                    "description": "Indicates if message delivery to consumers is currently paused.\n"
                },
                "messageRetentionPeriod": {
                    "type": "number",
                    "description": "Number of seconds after which an unconsumed message will be delayed.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "deliveryDelay",
                        "deliveryPaused",
                        "messageRetentionPeriod"
                    ]
                }
            }
        },
        "cloudflare:index/R2BucketCorsRule:R2BucketCorsRule": {
            "properties": {
                "allowed": {
                    "$ref": "#/types/cloudflare:index/R2BucketCorsRuleAllowed:R2BucketCorsRuleAllowed",
                    "description": "Object specifying allowed origins, methods and headers for this CORS rule.\n"
                },
                "exposeHeaders": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "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.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier for this rule.\n"
                },
                "maxAgeSeconds": {
                    "type": "number",
                    "description": "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.\n"
                }
            },
            "type": "object",
            "required": [
                "allowed"
            ]
        },
        "cloudflare:index/R2BucketCorsRuleAllowed:R2BucketCorsRuleAllowed": {
            "properties": {
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "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.\n"
                },
                "methods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the value for the Access-Control-Allow-Methods header R2 sets when requesting objects in a bucket from a browser.\n"
                },
                "origins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the value for the Access-Control-Allow-Origin header R2 sets when requesting objects in a bucket from a browser.\n"
                }
            },
            "type": "object",
            "required": [
                "methods",
                "origins"
            ]
        },
        "cloudflare:index/R2BucketEventNotificationRule:R2BucketEventNotificationRule": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of R2 object actions that will trigger notifications.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description that can be used to identify the event notification rule after creation.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "Notifications will be sent only for objects with this prefix.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "Notifications will be sent only for objects with this suffix.\n"
                }
            },
            "type": "object",
            "required": [
                "actions"
            ]
        },
        "cloudflare:index/R2BucketLifecycleRule:R2BucketLifecycleRule": {
            "properties": {
                "abortMultipartUploadsTransition": {
                    "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleAbortMultipartUploadsTransition:R2BucketLifecycleRuleAbortMultipartUploadsTransition",
                    "description": "Transition to abort ongoing multipart uploads.\n"
                },
                "conditions": {
                    "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleConditions:R2BucketLifecycleRuleConditions",
                    "description": "Conditions that apply to all transitions of this rule.\n"
                },
                "deleteObjectsTransition": {
                    "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleDeleteObjectsTransition:R2BucketLifecycleRuleDeleteObjectsTransition",
                    "description": "Transition to delete objects.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this rule is in effect.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Unique identifier for this rule.\n"
                },
                "storageClassTransitions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleStorageClassTransition:R2BucketLifecycleRuleStorageClassTransition"
                    },
                    "description": "Transitions to change the storage class of objects.\n"
                }
            },
            "type": "object",
            "required": [
                "conditions",
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/R2BucketLifecycleRuleAbortMultipartUploadsTransition:R2BucketLifecycleRuleAbortMultipartUploadsTransition": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition:R2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition",
                    "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/R2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition:R2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition": {
            "properties": {
                "maxAge": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\".\n"
                }
            },
            "type": "object",
            "required": [
                "maxAge",
                "type"
            ]
        },
        "cloudflare:index/R2BucketLifecycleRuleConditions:R2BucketLifecycleRuleConditions": {
            "properties": {
                "prefix": {
                    "type": "string",
                    "description": "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.\n"
                }
            },
            "type": "object",
            "required": [
                "prefix"
            ]
        },
        "cloudflare:index/R2BucketLifecycleRuleDeleteObjectsTransition:R2BucketLifecycleRuleDeleteObjectsTransition": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleDeleteObjectsTransitionCondition:R2BucketLifecycleRuleDeleteObjectsTransitionCondition",
                    "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/R2BucketLifecycleRuleDeleteObjectsTransitionCondition:R2BucketLifecycleRuleDeleteObjectsTransitionCondition": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "maxAge": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\", \"Date\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/R2BucketLifecycleRuleStorageClassTransition:R2BucketLifecycleRuleStorageClassTransition": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/R2BucketLifecycleRuleStorageClassTransitionCondition:R2BucketLifecycleRuleStorageClassTransitionCondition",
                    "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "Available values: \"InfrequentAccess\".\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "storageClass"
            ]
        },
        "cloudflare:index/R2BucketLifecycleRuleStorageClassTransitionCondition:R2BucketLifecycleRuleStorageClassTransitionCondition": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "maxAge": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\", \"Date\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/R2BucketLockRule:R2BucketLockRule": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/R2BucketLockRuleCondition:R2BucketLockRuleCondition",
                    "description": "Condition to apply a lock rule to an object for how long in seconds.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this rule is in effect.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Unique identifier for this rule.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "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.\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/R2BucketLockRuleCondition:R2BucketLockRuleCondition": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "maxAgeSeconds": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\", \"Date\", \"Indefinite\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "cloudflare:index/R2BucketSippyDestination:R2BucketSippyDestination": {
            "properties": {
                "accessKeyId": {
                    "type": "string",
                    "description": "ID of a Cloudflare API token.\nThis is the value labelled \"Access Key ID\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n"
                },
                "cloudProvider": {
                    "type": "string",
                    "description": "Available values: \"r2\".\n"
                },
                "secretAccessKey": {
                    "type": "string",
                    "description": "Value of a Cloudflare API token.\nThis is the value labelled \"Secret Access Key\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n",
                    "secret": true
                }
            },
            "type": "object"
        },
        "cloudflare:index/R2BucketSippySource:R2BucketSippySource": {
            "properties": {
                "accessKeyId": {
                    "type": "string",
                    "description": "Access Key ID of an IAM credential (ideally scoped to a single S3 bucket).\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "Name of the AWS S3 bucket.\n"
                },
                "bucketUrl": {
                    "type": "string",
                    "description": "URL to the S3-compatible API of the bucket.\n"
                },
                "clientEmail": {
                    "type": "string",
                    "description": "Client email of an IAM credential (ideally scoped to a single GCS bucket).\n"
                },
                "cloudProvider": {
                    "type": "string",
                    "description": "Available values: \"aws\", \"gcs\", \"s3\".\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "Private Key of an IAM credential (ideally scoped to a single GCS bucket).\n",
                    "secret": true
                },
                "region": {
                    "type": "string",
                    "description": "Name of the AWS availability zone.\n"
                },
                "secretAccessKey": {
                    "type": "string",
                    "description": "Secret Access Key of an IAM credential (ideally scoped to a single S3 bucket).\n",
                    "secret": true
                }
            },
            "type": "object"
        },
        "cloudflare:index/R2CustomDomainStatus:R2CustomDomainStatus": {
            "properties": {
                "ownership": {
                    "type": "string",
                    "description": "Ownership status of the domain.\nAvailable values: \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\", \"unknown\".\n"
                },
                "ssl": {
                    "type": "string",
                    "description": "SSL certificate status.\nAvailable values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"error\", \"unknown\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "ownership",
                        "ssl"
                    ]
                }
            }
        },
        "cloudflare:index/R2DataCatalogMaintenanceConfig:R2DataCatalogMaintenanceConfig": {
            "properties": {
                "compaction": {
                    "$ref": "#/types/cloudflare:index/R2DataCatalogMaintenanceConfigCompaction:R2DataCatalogMaintenanceConfigCompaction",
                    "description": "Configures compaction for catalog maintenance.\n"
                },
                "snapshotExpiration": {
                    "$ref": "#/types/cloudflare:index/R2DataCatalogMaintenanceConfigSnapshotExpiration:R2DataCatalogMaintenanceConfigSnapshotExpiration",
                    "description": "Configures snapshot expiration settings.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "compaction",
                        "snapshotExpiration"
                    ]
                }
            }
        },
        "cloudflare:index/R2DataCatalogMaintenanceConfigCompaction:R2DataCatalogMaintenanceConfigCompaction": {
            "properties": {
                "state": {
                    "type": "string",
                    "description": "Specifies the state of maintenance operations.\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "targetSizeMb": {
                    "type": "string",
                    "description": "Sets the target file size for compaction in megabytes. Defaults to \"128\".\nAvailable values: \"64\", \"128\", \"256\", \"512\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "state",
                        "targetSizeMb"
                    ]
                }
            }
        },
        "cloudflare:index/R2DataCatalogMaintenanceConfigSnapshotExpiration:R2DataCatalogMaintenanceConfigSnapshotExpiration": {
            "properties": {
                "maxSnapshotAge": {
                    "type": "string",
                    "description": "Specifies the maximum age for snapshots. The system deletes snapshots older than this age.\nFormat: \\n\\n\\n\\n where unit is d (days), h (hours), m (minutes), or s (seconds).\nExamples: \"7d\" (7 days), \"48h\" (48 hours), \"2880m\" (2,880 minutes).\nDefaults to \"7d\".\n"
                },
                "minSnapshotsToKeep": {
                    "type": "integer",
                    "description": "Specifies the minimum number of snapshots to retain. Defaults to 100.\n"
                },
                "state": {
                    "type": "string",
                    "description": "Specifies the state of maintenance operations.\nAvailable values: \"enabled\", \"disabled\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "maxSnapshotAge",
                        "minSnapshotsToKeep",
                        "state"
                    ]
                }
            }
        },
        "cloudflare:index/RateLimitAction:RateLimitAction": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The action to perform.\nAvailable values: \"simulate\", \"ban\", \"challenge\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/RateLimitActionResponse:RateLimitActionResponse",
                    "description": "A custom content type and reponse to return when the threshold is exceeded. The custom response configured in this object will override the custom error for the zone. This object is optional.\nNotes: If you omit this object, Cloudflare will use the default HTML error page. If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone challenge pages and you should not provide the \"response\" object.\n"
                },
                "timeout": {
                    "type": "number",
                    "description": "The time in seconds during which Cloudflare will perform the mitigation action. Must be an integer value greater than or equal to the period.\nNotes: If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone's Challenge Passage time and you should not provide this value.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RateLimitActionResponse:RateLimitActionResponse": {
            "properties": {
                "body": {
                    "type": "string",
                    "description": "The response body to return. The value must conform to the configured content type.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the body. Must be one of the following: `text/plain`, `text/xml`, or `application/json`.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RateLimitBypass:RateLimitBypass": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Available values: \"url\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The URL to bypass.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "name",
                        "value"
                    ]
                }
            }
        },
        "cloudflare:index/RateLimitMatch:RateLimitMatch": {
            "properties": {
                "headers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RateLimitMatchHeader:RateLimitMatchHeader"
                    }
                },
                "request": {
                    "$ref": "#/types/cloudflare:index/RateLimitMatchRequest:RateLimitMatchRequest"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/RateLimitMatchResponse:RateLimitMatchResponse"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RateLimitMatchHeader:RateLimitMatchHeader": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header to match.\n"
                },
                "op": {
                    "type": "string",
                    "description": "The operator used when matching: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e means \"equal\" and \u003cspan pulumi-lang-nodejs=\"`ne`\" pulumi-lang-dotnet=\"`Ne`\" pulumi-lang-go=\"`ne`\" pulumi-lang-python=\"`ne`\" pulumi-lang-yaml=\"`ne`\" pulumi-lang-java=\"`ne`\"\u003e`ne`\u003c/span\u003e means \"not equal\".\nAvailable values: \"eq\", \"ne\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value of the response header, which must match exactly.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RateLimitMatchRequest:RateLimitMatchRequest": {
            "properties": {
                "methods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The HTTP methods to match. You can specify a subset (for example, `['POST','PUT']`) or all methods (`['_ALL_']`). This field is optional when creating a rate limit.\n"
                },
                "schemes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The HTTP schemes to match. You can specify one scheme (`['HTTPS']`), both schemes (`['HTTP','HTTPS']`), or all schemes (`['_ALL_']`). This field is optional.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL pattern to match, composed of a host and a path such as `example.org/path*`. Normalization is applied before the pattern is matched. `*` wildcards are expanded to match applicable traffic. Query strings are not matched. Set the value to `*` to match all traffic to your zone.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RateLimitMatchResponse:RateLimitMatchResponse": {
            "properties": {
                "originTraffic": {
                    "type": "boolean",
                    "description": "When true, only the uncached traffic served from your origin servers will count towards rate limiting. In this case, any cached traffic served by Cloudflare will not count towards rate limiting. This field is optional.\nNotes: This field is deprecated. Instead, use response headers and set \"origin*traffic\" to \"false\" to avoid legacy behaviour interacting with the \"response*headers\" property.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RecordData:RecordData": {
            "properties": {
                "algorithm": {
                    "type": "number",
                    "description": "Algorithm.\n"
                },
                "altitude": {
                    "type": "number",
                    "description": "Altitude of location in meters.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "Certificate.\n"
                },
                "digest": {
                    "type": "string",
                    "description": "Digest.\n"
                },
                "digestType": {
                    "type": "number",
                    "description": "Digest Type.\n"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "Fingerprint.\n"
                },
                "flags": {
                    "$ref": "pulumi.json#/Any",
                    "description": "Flags for the CAA record.\n"
                },
                "keyTag": {
                    "type": "number",
                    "description": "Key Tag.\n"
                },
                "latDegrees": {
                    "type": "number",
                    "description": "Degrees of latitude.\n"
                },
                "latDirection": {
                    "type": "string",
                    "description": "Latitude direction.\nAvailable values: \"N\", \"S\".\n"
                },
                "latMinutes": {
                    "type": "number",
                    "description": "Minutes of latitude.\n"
                },
                "latSeconds": {
                    "type": "number",
                    "description": "Seconds of latitude.\n"
                },
                "longDegrees": {
                    "type": "number",
                    "description": "Degrees of longitude.\n"
                },
                "longDirection": {
                    "type": "string",
                    "description": "Longitude direction.\nAvailable values: \"E\", \"W\".\n"
                },
                "longMinutes": {
                    "type": "number",
                    "description": "Minutes of longitude.\n"
                },
                "longSeconds": {
                    "type": "number",
                    "description": "Seconds of longitude.\n"
                },
                "matchingType": {
                    "type": "number",
                    "description": "Matching Type.\n"
                },
                "order": {
                    "type": "number",
                    "description": "Order.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port of the service.\n"
                },
                "precisionHorz": {
                    "type": "number",
                    "description": "Horizontal precision of location.\n"
                },
                "precisionVert": {
                    "type": "number",
                    "description": "Vertical precision of location.\n"
                },
                "preference": {
                    "type": "number",
                    "description": "Preference.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority.\n"
                },
                "protocol": {
                    "type": "number",
                    "description": "Protocol.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "Public Key.\n"
                },
                "regex": {
                    "type": "string",
                    "description": "Regex.\n"
                },
                "replacement": {
                    "type": "string",
                    "description": "Replacement.\n"
                },
                "selector": {
                    "type": "number",
                    "description": "Selector.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Service.\n"
                },
                "size": {
                    "type": "number",
                    "description": "Size of location in meters.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Name of the property controlled by this record (e.g.: issue, issuewild, iodef).\n"
                },
                "target": {
                    "type": "string",
                    "description": "Target.\n"
                },
                "type": {
                    "type": "number",
                    "description": "Type.\n"
                },
                "usage": {
                    "type": "number",
                    "description": "Usage.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the record. This field's semantics depend on the chosen tag.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The record weight.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RecordSettings:RecordSettings": {
            "properties": {
                "flattenCname": {
                    "type": "boolean",
                    "description": "If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened.\n"
                },
                "ipv4Only": {
                    "type": "boolean",
                    "description": "When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                },
                "ipv6Only": {
                    "type": "boolean",
                    "description": "When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "flattenCname",
                        "ipv4Only",
                        "ipv6Only"
                    ]
                }
            }
        },
        "cloudflare:index/RiskBehaviorBehaviors:RiskBehaviorBehaviors": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "Available values: \"low\", \"medium\", \"high\".\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "riskLevel"
            ]
        },
        "cloudflare:index/RulesetRule:RulesetRule": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to perform when the rule matches.\nAvailable values: \"block\", \"challenge\", \"compress*response\", \"ddos*dynamic\", \"execute\", \"force*connection*close\", \"js*challenge\", \"log\", \"log*custom*field\", \"managed*challenge\", \"redirect\", \"rewrite\", \"route\", \"score\", \"serve*error\", \"set*cache*control\", \"set*cache*settings\", \"set*cache*tags\", \"set*config\", \"skip\".\n"
                },
                "actionParameters": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParameters:RulesetRuleActionParameters",
                    "description": "The parameters configuring the rule's action.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative description of the rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule should be executed.\n"
                },
                "exposedCredentialCheck": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleExposedCredentialCheck:RulesetRuleExposedCredentialCheck",
                    "description": "Configuration for exposed credential checking.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression defining which traffic will match the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the rule.\n"
                },
                "logging": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleLogging:RulesetRuleLogging",
                    "description": "An object configuring the rule's logging behavior.\n"
                },
                "ratelimit": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleRatelimit:RulesetRuleRatelimit",
                    "description": "An object configuring the rule's rate limit behavior.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "The reference of the rule (the rule's ID by default).\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "expression"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "action",
                        "actionParameters",
                        "description",
                        "enabled",
                        "expression",
                        "id",
                        "logging",
                        "ref"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParameters:RulesetRuleActionParameters": {
            "properties": {
                "additionalCacheablePorts": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of additional ports that caching should be enabled on.\n"
                },
                "algorithms": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersAlgorithm:RulesetRuleActionParametersAlgorithm"
                    },
                    "description": "Custom order for compression algorithms.\n"
                },
                "assetName": {
                    "type": "string",
                    "description": "The name of a custom asset to serve as the response.\n"
                },
                "automaticHttpsRewrites": {
                    "type": "boolean",
                    "description": "Whether to enable Automatic HTTPS Rewrites.\n"
                },
                "autominify": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersAutominify:RulesetRuleActionParametersAutominify",
                    "description": "Which file extensions to minify automatically.\n"
                },
                "bic": {
                    "type": "boolean",
                    "description": "Whether to enable Browser Integrity Check (BIC).\n"
                },
                "browserTtl": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersBrowserTtl:RulesetRuleActionParametersBrowserTtl",
                    "description": "How long client browsers should cache the response. Cloudflare cache purge will not purge content cached on client browsers, so high browser TTLs may lead to stale content.\n"
                },
                "cache": {
                    "type": "boolean",
                    "description": "Whether the request's response from the origin is eligible for caching. Caching itself will still depend on the cache control header and your other caching configurations.\n"
                },
                "cacheKey": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKey:RulesetRuleActionParametersCacheKey",
                    "description": "Which components of the request are included in or excluded from the cache key Cloudflare uses to store the response in cache.\n"
                },
                "cacheReserve": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheReserve:RulesetRuleActionParametersCacheReserve",
                    "description": "Settings to determine whether the request's response from origin is eligible for Cache Reserve (requires a Cache Reserve add-on plan).\n"
                },
                "content": {
                    "type": "string",
                    "description": "The response content.\n"
                },
                "contentConverter": {
                    "type": "boolean",
                    "description": "Whether to enable content conversion (e.g., HTML to Markdown).\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type header to set with the error response.\nAvailable values: \"application/json\", \"text/html\", \"text/plain\", \"text/xml\".\n"
                },
                "cookieFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCookieField:RulesetRuleActionParametersCookieField"
                    },
                    "description": "The cookie fields to log.\n"
                },
                "disableApps": {
                    "type": "boolean",
                    "description": "Whether to disable Cloudflare Apps.\n"
                },
                "disableRum": {
                    "type": "boolean",
                    "description": "Whether to disable Real User Monitoring (RUM).\n"
                },
                "disableZaraz": {
                    "type": "boolean",
                    "description": "Whether to disable Zaraz.\n"
                },
                "edgeTtl": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersEdgeTtl:RulesetRuleActionParametersEdgeTtl",
                    "description": "How long the Cloudflare edge network should cache the response.\n"
                },
                "emailObfuscation": {
                    "type": "boolean",
                    "description": "Whether to enable Email Obfuscation.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "An expression to generate cache tags for set*cache*tags action.\n"
                },
                "fonts": {
                    "type": "boolean",
                    "description": "Whether to enable Cloudflare Fonts.\n"
                },
                "fromList": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersFromList:RulesetRuleActionParametersFromList",
                    "description": "A redirect based on a bulk list lookup.\n"
                },
                "fromValue": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersFromValue:RulesetRuleActionParametersFromValue",
                    "description": "A redirect based on the request properties.\n"
                },
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersHeaders:RulesetRuleActionParametersHeaders"
                    },
                    "description": "A map of headers to rewrite.\n"
                },
                "hostHeader": {
                    "type": "string",
                    "description": "A value to rewrite the HTTP host header to.\n"
                },
                "hotlinkProtection": {
                    "type": "boolean",
                    "description": "Whether to enable Hotlink Protection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the ruleset to execute.\n"
                },
                "immutable": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersImmutable:RulesetRuleActionParametersImmutable",
                    "description": "Set the immutable cache control directive.\n"
                },
                "increment": {
                    "type": "integer",
                    "description": "A delta to change the score by, which can be either positive or negative.\n"
                },
                "matchedData": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersMatchedData:RulesetRuleActionParametersMatchedData",
                    "description": "The configuration to use for matched data logging.\n"
                },
                "maxAge": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersMaxAge:RulesetRuleActionParametersMaxAge",
                    "description": "Set the max-age cache control directive.\n"
                },
                "mirage": {
                    "type": "boolean",
                    "description": "Whether to enable Mirage.\n"
                },
                "mustRevalidate": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersMustRevalidate:RulesetRuleActionParametersMustRevalidate",
                    "description": "Set the must-revalidate cache control directive.\n"
                },
                "mustUnderstand": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersMustUnderstand:RulesetRuleActionParametersMustUnderstand",
                    "description": "Set the must-understand cache control directive.\n"
                },
                "noCache": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersNoCache:RulesetRuleActionParametersNoCache",
                    "description": "Set the no-cache cache control directive.\n"
                },
                "noStore": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersNoStore:RulesetRuleActionParametersNoStore",
                    "description": "Set the no-store cache control directive.\n"
                },
                "noTransform": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersNoTransform:RulesetRuleActionParametersNoTransform",
                    "description": "Set the no-transform cache control directive.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform for set*cache*tags action.\nAvailable values: \"set\", \"add\", \"remove\".\n"
                },
                "opportunisticEncryption": {
                    "type": "boolean",
                    "description": "Whether to enable Opportunistic Encryption.\n"
                },
                "origin": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersOrigin:RulesetRuleActionParametersOrigin",
                    "description": "An origin to route to.\n"
                },
                "originCacheControl": {
                    "type": "boolean",
                    "description": "Whether Cloudflare will aim to strictly adhere to RFC 7234.\n"
                },
                "originErrorPagePassthru": {
                    "type": "boolean",
                    "description": "Whether to generate Cloudflare error pages for issues from the origin server.\n"
                },
                "overrides": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersOverrides:RulesetRuleActionParametersOverrides",
                    "description": "A set of overrides to apply to the target ruleset.\n"
                },
                "phases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of phases to skip the execution of. This option is incompatible with the rulesets option.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*cache*settings\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit*ratelimit\".\n"
                },
                "polish": {
                    "type": "string",
                    "description": "The Polish level to configure.\nAvailable values: \"off\", \"lossless\", \"lossy\", \"webp\".\n"
                },
                "private": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersPrivate:RulesetRuleActionParametersPrivate",
                    "description": "Set the private cache control directive.\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of legacy security products to skip the execution of.\nAvailable values: \"bic\", \"hot\", \"rateLimit\", \"securityLevel\", \"uaBlock\", \"waf\", \"zoneLockdown\".\n"
                },
                "proxyRevalidate": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersProxyRevalidate:RulesetRuleActionParametersProxyRevalidate",
                    "description": "Set the proxy-revalidate cache control directive.\n"
                },
                "public": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersPublic:RulesetRuleActionParametersPublic",
                    "description": "Set the public cache control directive.\n"
                },
                "rawResponseFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersRawResponseField:RulesetRuleActionParametersRawResponseField"
                    },
                    "description": "The raw response fields to log.\n"
                },
                "readTimeout": {
                    "type": "integer",
                    "description": "A timeout value between two successive read operations to use for your origin server. Historically, the timeout value between two read options from Cloudflare to an origin server is 100 seconds. If you are attempting to reduce HTTP 524 errors because of timeouts from an origin server, try increasing this timeout value.\n"
                },
                "redirectsForAiTraining": {
                    "type": "boolean",
                    "description": "Whether to redirect verified AI training crawlers to canonical URLs.\n"
                },
                "requestBodyBuffering": {
                    "type": "string",
                    "description": "The request body buffering mode to configure.\nAvailable values: \"none\", \"standard\", \"full\".\n"
                },
                "requestFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersRequestField:RulesetRuleActionParametersRequestField"
                    },
                    "description": "The raw request fields to log.\n"
                },
                "respectStrongEtags": {
                    "type": "boolean",
                    "description": "Whether Cloudflare should respect strong ETag (entity tag) headers. If false, Cloudflare converts strong ETag headers to weak ETag headers.\n"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersResponse:RulesetRuleActionParametersResponse",
                    "description": "The response to show when the block is applied.\n"
                },
                "responseBodyBuffering": {
                    "type": "string",
                    "description": "The response body buffering mode to configure.\nAvailable values: \"none\", \"standard\".\n"
                },
                "responseFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersResponseField:RulesetRuleActionParametersResponseField"
                    },
                    "description": "The transformed response fields to log.\n"
                },
                "rocketLoader": {
                    "type": "boolean",
                    "description": "Whether to enable Rocket Loader.\n"
                },
                "rules": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of ruleset IDs to a list of rule IDs in that ruleset to skip the execution of. This option is incompatible with the ruleset option.\n"
                },
                "ruleset": {
                    "type": "string",
                    "description": "A ruleset to skip the execution of. This option is incompatible with the rulesets option.\nAvailable values: \"current\".\n"
                },
                "rulesets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of ruleset IDs to skip the execution of. This option is incompatible with the ruleset and phases options.\n"
                },
                "sMaxage": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersSMaxage:RulesetRuleActionParametersSMaxage",
                    "description": "Set the s-maxage cache control directive.\n"
                },
                "securityLevel": {
                    "type": "string",
                    "description": "The Security Level to configure.\nAvailable values: \"off\", \"essentially*off\", \"low\", \"medium\", \"high\", \"under*attack\".\n"
                },
                "serveStale": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersServeStale:RulesetRuleActionParametersServeStale",
                    "description": "When to serve stale content from cache.\n"
                },
                "serverSideExcludes": {
                    "type": "boolean",
                    "description": "Whether to enable Server-Side Excludes.\n"
                },
                "sni": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersSni:RulesetRuleActionParametersSni",
                    "description": "A Server Name Indication (SNI) override.\n"
                },
                "ssl": {
                    "type": "string",
                    "description": "The SSL level to configure.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\", \u003cspan pulumi-lang-nodejs=\"\"originPull\"\" pulumi-lang-dotnet=\"\"OriginPull\"\" pulumi-lang-go=\"\"originPull\"\" pulumi-lang-python=\"\"origin_pull\"\" pulumi-lang-yaml=\"\"originPull\"\" pulumi-lang-java=\"\"originPull\"\"\u003e\"originPull\"\u003c/span\u003e.\n"
                },
                "staleIfError": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersStaleIfError:RulesetRuleActionParametersStaleIfError",
                    "description": "Set the stale-if-error cache control directive.\n"
                },
                "staleWhileRevalidate": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersStaleWhileRevalidate:RulesetRuleActionParametersStaleWhileRevalidate",
                    "description": "Set the stale-while-revalidate cache control directive.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to use for the error.\n"
                },
                "stripEtags": {
                    "type": "boolean",
                    "description": "Whether to strip the ETag header from the response.\n"
                },
                "stripLastModified": {
                    "type": "boolean",
                    "description": "Whether to strip the Last-Modified header from the response.\n"
                },
                "stripSetCookie": {
                    "type": "boolean",
                    "description": "Whether to strip the Set-Cookie header from the response.\n"
                },
                "sxg": {
                    "type": "boolean",
                    "description": "Whether to enable Signed Exchanges (SXG).\n"
                },
                "transformedRequestFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersTransformedRequestField:RulesetRuleActionParametersTransformedRequestField"
                    },
                    "description": "The transformed request fields to log.\n"
                },
                "uri": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersUri:RulesetRuleActionParametersUri",
                    "description": "A URI rewrite.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The cache tag values for set*cache*tags action.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersAlgorithm:RulesetRuleActionParametersAlgorithm": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the compression algorithm to enable.\nAvailable values: \"none\", \"auto\", \"default\", \"gzip\", \"brotli\", \"zstd\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersAutominify:RulesetRuleActionParametersAutominify": {
            "properties": {
                "css": {
                    "type": "boolean",
                    "description": "Whether to minify CSS files.\n"
                },
                "html": {
                    "type": "boolean",
                    "description": "Whether to minify HTML files.\n"
                },
                "js": {
                    "type": "boolean",
                    "description": "Whether to minify JavaScript files.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "css",
                        "html",
                        "js"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersBrowserTtl:RulesetRuleActionParametersBrowserTtl": {
            "properties": {
                "default": {
                    "type": "integer",
                    "description": "The browser TTL (in seconds) if you choose the \u003cspan pulumi-lang-nodejs=\"\"overrideOrigin\"\" pulumi-lang-dotnet=\"\"OverrideOrigin\"\" pulumi-lang-go=\"\"overrideOrigin\"\" pulumi-lang-python=\"\"override_origin\"\" pulumi-lang-yaml=\"\"overrideOrigin\"\" pulumi-lang-java=\"\"overrideOrigin\"\"\u003e\"overrideOrigin\"\u003c/span\u003e mode.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The browser TTL mode.\nAvailable values: \"respect*origin\", \"bypass*by*default\", \"override*origin\", \"bypass\".\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKey:RulesetRuleActionParametersCacheKey": {
            "properties": {
                "cacheByDeviceType": {
                    "type": "boolean",
                    "description": "Whether to separate cached content based on the visitor's device type.\n"
                },
                "cacheDeceptionArmor": {
                    "type": "boolean",
                    "description": "Whether to protect from web cache deception attacks, while allowing static assets to be cached.\n"
                },
                "customKey": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKey:RulesetRuleActionParametersCacheKeyCustomKey",
                    "description": "Which components of the request are included or excluded from the cache key.\n"
                },
                "ignoreQueryStringsOrder": {
                    "type": "boolean",
                    "description": "Whether to treat requests with the same query parameters the same, regardless of the order those query parameters are in.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKey:RulesetRuleActionParametersCacheKeyCustomKey": {
            "properties": {
                "cookie": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyCookie:RulesetRuleActionParametersCacheKeyCustomKeyCookie",
                    "description": "Which cookies to include in the cache key.\n"
                },
                "header": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyHeader:RulesetRuleActionParametersCacheKeyCustomKeyHeader",
                    "description": "Which headers to include in the cache key.\n"
                },
                "host": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyHost:RulesetRuleActionParametersCacheKeyCustomKeyHost",
                    "description": "How to use the host in the cache key.\n"
                },
                "queryString": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyQueryString:RulesetRuleActionParametersCacheKeyCustomKeyQueryString",
                    "description": "Which query string parameters to include in or exclude from the cache key.\n"
                },
                "user": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyUser:RulesetRuleActionParametersCacheKeyCustomKeyUser",
                    "description": "How to use characteristics of the request user agent in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyCookie:RulesetRuleActionParametersCacheKeyCustomKeyCookie": {
            "properties": {
                "checkPresences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of cookies to check for the presence of. The presence of these cookies is included in the cache key.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of cookies to include in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyHeader:RulesetRuleActionParametersCacheKeyCustomKeyHeader": {
            "properties": {
                "checkPresences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of headers to check for the presence of. The presence of these headers is included in the cache key.\n"
                },
                "contains": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of header names to a list of values. If a header is present in the request and contains any of the values provided, its value is included in the cache key.\n"
                },
                "excludeOrigin": {
                    "type": "boolean",
                    "description": "Whether to exclude the origin header in the cache key.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of headers to include in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyHost:RulesetRuleActionParametersCacheKeyCustomKeyHost": {
            "properties": {
                "resolved": {
                    "type": "boolean",
                    "description": "Whether to use the resolved host in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyQueryString:RulesetRuleActionParametersCacheKeyCustomKeyQueryString": {
            "properties": {
                "exclude": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude:RulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude",
                    "description": "Which query string parameters to exclude from the cache key.\n"
                },
                "include": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude:RulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude",
                    "description": "Which query string parameters to include in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude:RulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude": {
            "properties": {
                "all": {
                    "type": "boolean",
                    "description": "Whether to exclude all query string parameters from the cache key.\n"
                },
                "lists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of query string parameters to exclude from the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude:RulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude": {
            "properties": {
                "all": {
                    "type": "boolean",
                    "description": "Whether to include all query string parameters in the cache key.\n"
                },
                "lists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of query string parameters to include in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheKeyCustomKeyUser:RulesetRuleActionParametersCacheKeyCustomKeyUser": {
            "properties": {
                "deviceType": {
                    "type": "boolean",
                    "description": "Whether to use the user agent's device type in the cache key.\n"
                },
                "geo": {
                    "type": "boolean",
                    "description": "Whether to use the user agents's country in the cache key.\n"
                },
                "lang": {
                    "type": "boolean",
                    "description": "Whether to use the user agent's language in the cache key.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersCacheReserve:RulesetRuleActionParametersCacheReserve": {
            "properties": {
                "eligible": {
                    "type": "boolean",
                    "description": "Whether Cache Reserve is enabled. If this is true and a request meets eligibility criteria, Cloudflare will write the resource to Cache Reserve.\n"
                },
                "minimumFileSize": {
                    "type": "integer",
                    "description": "The minimum file size eligible for storage in Cache Reserve.\n"
                }
            },
            "type": "object",
            "required": [
                "eligible"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersCookieField:RulesetRuleActionParametersCookieField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the cookie.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersEdgeTtl:RulesetRuleActionParametersEdgeTtl": {
            "properties": {
                "default": {
                    "type": "integer",
                    "description": "The edge TTL (in seconds) if you choose the \u003cspan pulumi-lang-nodejs=\"\"overrideOrigin\"\" pulumi-lang-dotnet=\"\"OverrideOrigin\"\" pulumi-lang-go=\"\"overrideOrigin\"\" pulumi-lang-python=\"\"override_origin\"\" pulumi-lang-yaml=\"\"overrideOrigin\"\" pulumi-lang-java=\"\"overrideOrigin\"\"\u003e\"overrideOrigin\"\u003c/span\u003e mode.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The edge TTL mode.\nAvailable values: \"respect*origin\", \"bypass*by*default\", \"override*origin\".\n"
                },
                "statusCodeTtls": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersEdgeTtlStatusCodeTtl:RulesetRuleActionParametersEdgeTtlStatusCodeTtl"
                    },
                    "description": "A list of TTLs to apply to specific status codes or status code ranges.\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersEdgeTtlStatusCodeTtl:RulesetRuleActionParametersEdgeTtlStatusCodeTtl": {
            "properties": {
                "statusCode": {
                    "type": "integer",
                    "description": "A single status code to apply the TTL to.\n"
                },
                "statusCodeRange": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange:RulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange",
                    "description": "A range of status codes to apply the TTL to.\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The time to cache the response for (in seconds). A value of 0 is equivalent to setting the cache control header with the value \"no-cache\". A value of -1 is equivalent to setting the cache control header with the value of \"no-store\".\n"
                }
            },
            "type": "object",
            "required": [
                "value"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange:RulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange": {
            "properties": {
                "from": {
                    "type": "integer",
                    "description": "The lower bound of the range.\n"
                },
                "to": {
                    "type": "integer",
                    "description": "The upper bound of the range.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersFromList:RulesetRuleActionParametersFromList": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "An expression that evaluates to the list lookup key.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the list to match against.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "name"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersFromValue:RulesetRuleActionParametersFromValue": {
            "properties": {
                "preserveQueryString": {
                    "type": "boolean",
                    "description": "Whether to keep the query string of the original request.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to use for the redirect.\n"
                },
                "targetUrl": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersFromValueTargetUrl:RulesetRuleActionParametersFromValueTargetUrl",
                    "description": "A URL to redirect the request to.\n"
                }
            },
            "type": "object",
            "required": [
                "targetUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "preserveQueryString",
                        "targetUrl"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersFromValueTargetUrl:RulesetRuleActionParametersFromValueTargetUrl": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a URL to redirect the request to.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A URL to redirect the request to.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersHeaders:RulesetRuleActionParametersHeaders": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a value for the header.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform on the header.\nAvailable values: \"add\", \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "A static value for the header.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersImmutable:RulesetRuleActionParametersImmutable": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersMatchedData:RulesetRuleActionParametersMatchedData": {
            "properties": {
                "publicKey": {
                    "type": "string",
                    "description": "The public key to encrypt matched data logs with.\n"
                }
            },
            "type": "object",
            "required": [
                "publicKey"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersMaxAge:RulesetRuleActionParametersMaxAge": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersMustRevalidate:RulesetRuleActionParametersMustRevalidate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersMustUnderstand:RulesetRuleActionParametersMustUnderstand": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersNoCache:RulesetRuleActionParametersNoCache": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "qualifiers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The qualifiers for the directive.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersNoStore:RulesetRuleActionParametersNoStore": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersNoTransform:RulesetRuleActionParametersNoTransform": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersOrigin:RulesetRuleActionParametersOrigin": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "A resolved host to route to.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "A destination port to route to.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersOverrides:RulesetRuleActionParametersOverrides": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "An action to override all rules with. This option has lower precedence than rule and category overrides.\n"
                },
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersOverridesCategory:RulesetRuleActionParametersOverridesCategory"
                    },
                    "description": "A list of category-level overrides. This option has the second-highest precedence after rule-level overrides.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable execution of all rules. This option has lower precedence than rule and category overrides.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersOverridesRule:RulesetRuleActionParametersOverridesRule"
                    },
                    "description": "A list of rule-level overrides. This option has the highest precedence.\n"
                },
                "sensitivityLevel": {
                    "type": "string",
                    "description": "A sensitivity level to set for all rules. This option has lower precedence than rule and category overrides and is only applicable for DDoS phases.\nAvailable values: \"default\", \"medium\", \"low\", \"eoff\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersOverridesCategory:RulesetRuleActionParametersOverridesCategory": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to override rules in the category with.\n"
                },
                "category": {
                    "type": "string",
                    "description": "The name of the category to override.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable execution of rules in the category.\n"
                },
                "sensitivityLevel": {
                    "type": "string",
                    "description": "The sensitivity level to use for rules in the category. This option is only applicable for DDoS phases.\nAvailable values: \"default\", \"medium\", \"low\", \"eoff\".\n"
                }
            },
            "type": "object",
            "required": [
                "category"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersOverridesRule:RulesetRuleActionParametersOverridesRule": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to override the rule with.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable execution of the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the rule to override.\n"
                },
                "scoreThreshold": {
                    "type": "integer",
                    "description": "The score threshold to use for the rule.\n"
                },
                "sensitivityLevel": {
                    "type": "string",
                    "description": "The sensitivity level to use for the rule. This option is only applicable for DDoS phases.\nAvailable values: \"default\", \"medium\", \"low\", \"eoff\".\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersPrivate:RulesetRuleActionParametersPrivate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "qualifiers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The qualifiers for the directive.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersProxyRevalidate:RulesetRuleActionParametersProxyRevalidate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersPublic:RulesetRuleActionParametersPublic": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersRawResponseField:RulesetRuleActionParametersRawResponseField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header.\n"
                },
                "preserveDuplicates": {
                    "type": "boolean",
                    "description": "Whether to log duplicate values of the same header.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "name",
                        "preserveDuplicates"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersRequestField:RulesetRuleActionParametersRequestField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the header.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersResponse:RulesetRuleActionParametersResponse": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "The content to return.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The type of the content to return.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to return.\n"
                }
            },
            "type": "object",
            "required": [
                "content",
                "contentType",
                "statusCode"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersResponseField:RulesetRuleActionParametersResponseField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header.\n"
                },
                "preserveDuplicates": {
                    "type": "boolean",
                    "description": "Whether to log duplicate values of the same header.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "name",
                        "preserveDuplicates"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersSMaxage:RulesetRuleActionParametersSMaxage": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersServeStale:RulesetRuleActionParametersServeStale": {
            "properties": {
                "disableStaleWhileUpdating": {
                    "type": "boolean",
                    "description": "Whether Cloudflare should disable serving stale content while getting the latest content from the origin.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersSni:RulesetRuleActionParametersSni": {
            "properties": {
                "value": {
                    "type": "string",
                    "description": "A value to override the SNI to.\n"
                }
            },
            "type": "object",
            "required": [
                "value"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersStaleIfError:RulesetRuleActionParametersStaleIfError": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersStaleWhileRevalidate:RulesetRuleActionParametersStaleWhileRevalidate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudflareOnly",
                        "operation"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleActionParametersTransformedRequestField:RulesetRuleActionParametersTransformedRequestField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the header.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/RulesetRuleActionParametersUri:RulesetRuleActionParametersUri": {
            "properties": {
                "path": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersUriPath:RulesetRuleActionParametersUriPath",
                    "description": "A URI path rewrite.\n"
                },
                "query": {
                    "$ref": "#/types/cloudflare:index/RulesetRuleActionParametersUriQuery:RulesetRuleActionParametersUriQuery",
                    "description": "A URI query rewrite.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersUriPath:RulesetRuleActionParametersUriPath": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a value to rewrite the URI path to.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A value to rewrite the URI path to.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleActionParametersUriQuery:RulesetRuleActionParametersUriQuery": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a value to rewrite the URI query to.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A value to rewrite the URI query to.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/RulesetRuleExposedCredentialCheck:RulesetRuleExposedCredentialCheck": {
            "properties": {
                "passwordExpression": {
                    "type": "string",
                    "description": "An expression that selects the password used in the credentials check.\n"
                },
                "usernameExpression": {
                    "type": "string",
                    "description": "An expression that selects the user ID used in the credentials check.\n"
                }
            },
            "type": "object",
            "required": [
                "passwordExpression",
                "usernameExpression"
            ]
        },
        "cloudflare:index/RulesetRuleLogging:RulesetRuleLogging": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to generate a log when the rule matches.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled"
                    ]
                }
            }
        },
        "cloudflare:index/RulesetRuleRatelimit:RulesetRuleRatelimit": {
            "properties": {
                "characteristics": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Characteristics of the request on which the rate limit counter will be incremented.\n"
                },
                "countingExpression": {
                    "type": "string",
                    "description": "An expression that defines when the rate limit counter should be incremented. It defaults to the same as the rule's expression.\n"
                },
                "mitigationTimeout": {
                    "type": "integer",
                    "description": "Period of time in seconds after which the action will be disabled following its first execution.\n"
                },
                "period": {
                    "type": "integer",
                    "description": "Period in seconds over which the counter is being incremented.\n"
                },
                "requestsPerPeriod": {
                    "type": "integer",
                    "description": "The threshold of requests per period after which the action will be executed for the first time.\n"
                },
                "requestsToOrigin": {
                    "type": "boolean",
                    "description": "Whether counting is only performed when an origin is reached.\n"
                },
                "scorePerPeriod": {
                    "type": "integer",
                    "description": "The score threshold per period for which the action will be executed the first time.\n"
                },
                "scoreResponseHeaderName": {
                    "type": "string",
                    "description": "A response header name provided by the origin, which contains the score to increment rate limit counter with.\n"
                }
            },
            "type": "object",
            "required": [
                "characteristics",
                "period"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "characteristics",
                        "mitigationTimeout",
                        "period",
                        "requestsToOrigin"
                    ]
                }
            }
        },
        "cloudflare:index/SnippetFile:SnippetFile": {
            "properties": {
                "content": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "content",
                "name"
            ]
        },
        "cloudflare:index/SnippetMetadata:SnippetMetadata": {
            "properties": {
                "mainModule": {
                    "type": "string",
                    "description": "Specify the name of the file that contains the main module of the snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "mainModule"
            ]
        },
        "cloudflare:index/SnippetRulesRule:SnippetRulesRule": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Provide an informative description of the rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether to execute the rule.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "Define the expression that determines which traffic matches the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Specify the unique ID of the rule.\n"
                },
                "lastUpdated": {
                    "type": "string",
                    "description": "Specify the timestamp of when the rule was last modified.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "Identify the snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "snippetName"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "enabled",
                        "expression",
                        "id",
                        "lastUpdated",
                        "snippetName"
                    ]
                }
            }
        },
        "cloudflare:index/SnippetsMetadata:SnippetsMetadata": {
            "properties": {
                "mainModule": {
                    "type": "string",
                    "description": "Name of the file that contains the main module of the snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "mainModule"
            ]
        },
        "cloudflare:index/SpectrumApplicationDns:SpectrumApplicationDns": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the DNS record associated with the application.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of DNS record associated with the application.\nAvailable values: \"CNAME\", \"ADDRESS\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/SpectrumApplicationEdgeIps:SpectrumApplicationEdgeIps": {
            "properties": {
                "connectivity": {
                    "type": "string",
                    "description": "The IP versions supported for inbound connections on Spectrum anycast IPs.\nAvailable values: \"all\", \"ipv4\", \"ipv6\".\n"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The array of customer owned IPs we broadcast via anycast for this hostname and application.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of edge IP configuration specified. Dynamically allocated edge IPs use Spectrum anycast IPs in accordance with the connectivity you specify. Only valid with CNAME DNS names.\nAvailable values: \"dynamic\", \"static\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "ips"
                    ]
                }
            }
        },
        "cloudflare:index/SpectrumApplicationOriginDns:SpectrumApplicationOriginDns": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the DNS record associated with the origin.\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "The TTL of our resolution of your DNS record in seconds.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of DNS record associated with the origin. \"\" is used to specify a combination of A/AAAA records.\nAvailable values: \"\", \"A\", \"AAAA\", \"SRV\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/SsoConnectorVerification:SsoConnectorVerification": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "DNS verification code. Add this entire string to the DNS TXT record of the email domain to validate ownership.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the verification code from the verification process.\nAvailable values: \"awaiting\", \"pending\", \"failed\", \"verified\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "code",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/StaticRouteScope:StaticRouteScope": {
            "properties": {
                "coloNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of colo names for the ECMP scope.\n"
                },
                "coloRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of colo regions for the ECMP scope.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/StreamAudioTrackAudio:StreamAudioTrackAudio": {
            "properties": {
                "default": {
                    "type": "boolean",
                    "description": "Denotes whether the audio track will be played by default in a player.\n"
                },
                "label": {
                    "type": "string",
                    "description": "A string to uniquely identify the track amongst other audio track labels for the specified video.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Specifies the processing status of the video.\nAvailable values: \"queued\", \"ready\", \"error\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "default",
                        "label",
                        "status",
                        "uid"
                    ]
                }
            }
        },
        "cloudflare:index/StreamDownloadAudio:StreamDownloadAudio": {
            "properties": {
                "percentComplete": {
                    "type": "number",
                    "description": "Indicates the progress as a percentage between 0 and 100.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of a generated download.\nAvailable values: \"ready\", \"inprogress\", \"error\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL to access the generated download.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "percentComplete",
                        "status",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamDownloadDefault:StreamDownloadDefault": {
            "properties": {
                "percentComplete": {
                    "type": "number",
                    "description": "Indicates the progress as a percentage between 0 and 100.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of a generated download.\nAvailable values: \"ready\", \"inprogress\", \"error\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL to access the generated download.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "percentComplete",
                        "status",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamInput:StreamInput": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The video height in pixels. A value of `-1` means the height is unknown. The value becomes available after the upload and before the video is ready.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The video width in pixels. A value of `-1` means the width is unknown. The value becomes available after the upload and before the video is ready.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "height",
                        "width"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputRecording:StreamLiveInputRecording": {
            "properties": {
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the origins allowed to display videos created with this input. Enter allowed origin domains in an array and use `*` for wildcard subdomains. An empty array allows videos to be viewed on any origin.\n"
                },
                "hideLiveViewerCount": {
                    "type": "boolean",
                    "description": "Disables reporting the number of live viewers when this property is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Specifies the recording behavior for the live input. Set this value to \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e to prevent a recording. Set the value to \u003cspan pulumi-lang-nodejs=\"`automatic`\" pulumi-lang-dotnet=\"`Automatic`\" pulumi-lang-go=\"`automatic`\" pulumi-lang-python=\"`automatic`\" pulumi-lang-yaml=\"`automatic`\" pulumi-lang-java=\"`automatic`\"\u003e`automatic`\u003c/span\u003e to begin a recording and transition to on-demand after Stream Live stops receiving input.\nAvailable values: \"off\", \"automatic\".\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates if a video using the live input has the `requireSignedURLs` property set. Also enforces access controls on any video recording of the livestream with the live input.\n"
                },
                "timeoutSeconds": {
                    "type": "integer",
                    "description": "Determines the amount of time a live input configured in \u003cspan pulumi-lang-nodejs=\"`automatic`\" pulumi-lang-dotnet=\"`Automatic`\" pulumi-lang-go=\"`automatic`\" pulumi-lang-python=\"`automatic`\" pulumi-lang-yaml=\"`automatic`\" pulumi-lang-java=\"`automatic`\"\u003e`automatic`\u003c/span\u003e mode should wait before a recording transitions from live to on-demand. \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e is recommended for most use cases and indicates the platform default should be used.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideLiveViewerCount",
                        "mode",
                        "requireSignedUrls",
                        "timeoutSeconds"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputRtmps:StreamLiveInputRtmps": {
            "properties": {
                "streamKey": {
                    "type": "string",
                    "description": "The secret key to use when streaming via RTMPS to a live input.\n",
                    "secret": true
                },
                "url": {
                    "type": "string",
                    "description": "The RTMPS URL you provide to the broadcaster, which they stream live video to.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "streamKey",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputRtmpsPlayback:StreamLiveInputRtmpsPlayback": {
            "properties": {
                "streamKey": {
                    "type": "string",
                    "description": "The secret key to use for playback via RTMPS.\n",
                    "secret": true
                },
                "url": {
                    "type": "string",
                    "description": "The URL used to play live video over RTMPS.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "streamKey",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputSrt:StreamLiveInputSrt": {
            "properties": {
                "passphrase": {
                    "type": "string",
                    "description": "The secret key to use when streaming via SRT to a live input.\n",
                    "secret": true
                },
                "streamId": {
                    "type": "string",
                    "description": "The identifier of the live input to use when streaming via SRT.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The SRT URL you provide to the broadcaster, which they stream live video to.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "passphrase",
                        "streamId",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputSrtPlayback:StreamLiveInputSrtPlayback": {
            "properties": {
                "passphrase": {
                    "type": "string",
                    "description": "The secret key to use for playback via SRT.\n",
                    "secret": true
                },
                "streamId": {
                    "type": "string",
                    "description": "The identifier of the live input to use for playback via SRT.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL used to play live video over SRT.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "passphrase",
                        "streamId",
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputWebRtc:StreamLiveInputWebRtc": {
            "properties": {
                "url": {
                    "type": "string",
                    "description": "The WebRTC URL you provide to the broadcaster, which they stream live video to.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamLiveInputWebRtcPlayback:StreamLiveInputWebRtcPlayback": {
            "properties": {
                "url": {
                    "type": "string",
                    "description": "The URL used to play live video over WebRTC.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "url"
                    ]
                }
            }
        },
        "cloudflare:index/StreamPlayback:StreamPlayback": {
            "properties": {
                "dash": {
                    "type": "string",
                    "description": "DASH Media Presentation Description for the video.\n"
                },
                "hls": {
                    "type": "string",
                    "description": "The HLS manifest for the video.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "dash",
                        "hls"
                    ]
                }
            }
        },
        "cloudflare:index/StreamPublicDetails:StreamPublicDetails": {
            "properties": {
                "channelLink": {
                    "type": "string"
                },
                "logo": {
                    "type": "string"
                },
                "shareLink": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/StreamStatus:StreamStatus": {
            "properties": {
                "errorReasonCode": {
                    "type": "string",
                    "description": "Specifies why the video failed to encode. This field is empty if the video is not in an \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e state. Preferred for programmatic use.\n"
                },
                "errorReasonText": {
                    "type": "string",
                    "description": "Specifies why the video failed to encode using a human readable error message in English. This field is empty if the video is not in an \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e state.\n"
                },
                "pctComplete": {
                    "type": "string",
                    "description": "Indicates the size of the entire upload in bytes. The value must be a non-negative integer.\n"
                },
                "state": {
                    "type": "string",
                    "description": "Specifies the processing status for all quality levels for a video.\nAvailable values: \"pendingupload\", \"downloading\", \"queued\", \"inprogress\", \"ready\", \"error\", \"live-inprogress\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "errorReasonCode",
                        "errorReasonText",
                        "pctComplete",
                        "state"
                    ]
                }
            }
        },
        "cloudflare:index/StreamWatermark:StreamWatermark": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and a time a watermark profile was created.\n"
                },
                "downloadedFrom": {
                    "type": "string",
                    "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n"
                },
                "height": {
                    "type": "integer",
                    "description": "The height of the image in pixels.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of the watermark profile.\n"
                },
                "opacity": {
                    "type": "number",
                    "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                },
                "padding": {
                    "type": "number",
                    "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                },
                "position": {
                    "type": "string",
                    "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                },
                "scale": {
                    "type": "number",
                    "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the image in bytes.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the image in pixels.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "created",
                        "downloadedFrom",
                        "height",
                        "name",
                        "opacity",
                        "padding",
                        "position",
                        "scale",
                        "size",
                        "uid",
                        "width"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsAccountSettings:TeamsAccountSettings": {
            "properties": {
                "activityLog": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsActivityLog:TeamsAccountSettingsActivityLog",
                    "description": "Specify activity log settings.\n"
                },
                "antivirus": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsAntivirus:TeamsAccountSettingsAntivirus",
                    "description": "Specify anti-virus settings.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsBlockPage:TeamsAccountSettingsBlockPage",
                    "description": "Specify block page layout settings.\n"
                },
                "bodyScanning": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsBodyScanning:TeamsAccountSettingsBodyScanning",
                    "description": "Specify the DLP inspection mode.\n"
                },
                "browserIsolation": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsBrowserIsolation:TeamsAccountSettingsBrowserIsolation",
                    "description": "Specify Clientless Browser Isolation settings.\n"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsCertificate:TeamsAccountSettingsCertificate",
                    "description": "Specify certificate settings for Gateway TLS interception. If unset, the Cloudflare Root CA handles interception.\n"
                },
                "customCertificate": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsCustomCertificate:TeamsAccountSettingsCustomCertificate",
                    "description": "Specify custom certificate settings for BYO-PKI. This field is deprecated; use \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "extendedEmailMatching": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsExtendedEmailMatching:TeamsAccountSettingsExtendedEmailMatching",
                    "description": "Configures user email settings for firewall policies. When you enable this, the system standardizes email addresses in the identity portion of the rule to match extended email variants in firewall policies. When you disable this setting, the system matches email addresses exactly as you provide them. Enable this setting if your email uses `.` or `+` modifiers.\n"
                },
                "fips": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsFips:TeamsAccountSettingsFips",
                    "description": "Specify FIPS settings.\n"
                },
                "hostSelector": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsHostSelector:TeamsAccountSettingsHostSelector",
                    "description": "Enable host selection in egress policies.\n"
                },
                "inspection": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsInspection:TeamsAccountSettingsInspection",
                    "description": "Define the proxy inspection mode.\n"
                },
                "protocolDetection": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsProtocolDetection:TeamsAccountSettingsProtocolDetection",
                    "description": "Specify whether to detect protocols from the initial bytes of client traffic.\n"
                },
                "sandbox": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsSandbox:TeamsAccountSettingsSandbox",
                    "description": "Specify whether to enable the sandbox.\n"
                },
                "tlsDecrypt": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsTlsDecrypt:TeamsAccountSettingsTlsDecrypt",
                    "description": "Specify whether to inspect encrypted HTTP traffic.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsActivityLog:TeamsAccountSettingsActivityLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to log activity.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsAntivirus:TeamsAccountSettingsAntivirus": {
            "properties": {
                "enabledDownloadPhase": {
                    "type": "boolean",
                    "description": "Specify whether to enable anti-virus scanning on downloads.\n"
                },
                "enabledUploadPhase": {
                    "type": "boolean",
                    "description": "Specify whether to enable anti-virus scanning on uploads.\n"
                },
                "failClosed": {
                    "type": "boolean",
                    "description": "Specify whether to block requests for unscannable files.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettingsAntivirusNotificationSettings:TeamsAccountSettingsAntivirusNotificationSettings",
                    "description": "Configure the message the user's device shows during an antivirus scan.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabledDownloadPhase",
                        "enabledUploadPhase",
                        "failClosed",
                        "notificationSettings"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsAccountSettingsAntivirusNotificationSettings:TeamsAccountSettingsAntivirusNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable notifications.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to include context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Specify the message to show in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Specify a URL that directs users to more information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsBlockPage:TeamsAccountSettingsBlockPage": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "Specify the block page background color in `#rrggbb` format when the mode is customized*block*page.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable the custom block page.\n"
                },
                "footerText": {
                    "type": "string",
                    "description": "Specify the block page footer text when the mode is customized*block*page.\n"
                },
                "headerText": {
                    "type": "string",
                    "description": "Specify the block page header text when the mode is customized*block*page.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to append context to target*uri as query parameters. This applies only when the mode is redirect*uri.\n"
                },
                "logoPath": {
                    "type": "string",
                    "description": "Specify the full URL to the logo file when the mode is customized*block*page.\n"
                },
                "mailtoAddress": {
                    "type": "string",
                    "description": "Specify the admin email for users to contact when the mode is customized*block*page.\n"
                },
                "mailtoSubject": {
                    "type": "string",
                    "description": "Specify the subject line for emails created from the block page when the mode is customized*block*page.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Specify whether to redirect users to a Cloudflare-hosted block page or a customer-provided URI.\nAvailable values: \"\", \"customized*block*page\", \u003cspan pulumi-lang-nodejs=\"\"redirectUri\"\" pulumi-lang-dotnet=\"\"RedirectUri\"\" pulumi-lang-go=\"\"redirectUri\"\" pulumi-lang-python=\"\"redirect_uri\"\" pulumi-lang-yaml=\"\"redirectUri\"\" pulumi-lang-java=\"\"redirectUri\"\"\u003e\"redirectUri\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the block page title when the mode is customized*block*page.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Indicate the account tag of the account that shared this setting.\n"
                },
                "suppressFooter": {
                    "type": "boolean",
                    "description": "Specify whether to suppress detailed information at the bottom of the block page when the mode is customized*block*page.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to redirect users to when the mode is redirect_uri.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the setting.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "readOnly",
                        "sourceAccount",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsAccountSettingsBodyScanning:TeamsAccountSettingsBodyScanning": {
            "properties": {
                "inspectionMode": {
                    "type": "string",
                    "description": "Specify the inspection mode as either \u003cspan pulumi-lang-nodejs=\"`deep`\" pulumi-lang-dotnet=\"`Deep`\" pulumi-lang-go=\"`deep`\" pulumi-lang-python=\"`deep`\" pulumi-lang-yaml=\"`deep`\" pulumi-lang-java=\"`deep`\"\u003e`deep`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`shallow`\" pulumi-lang-dotnet=\"`Shallow`\" pulumi-lang-go=\"`shallow`\" pulumi-lang-python=\"`shallow`\" pulumi-lang-yaml=\"`shallow`\" pulumi-lang-java=\"`shallow`\"\u003e`shallow`\u003c/span\u003e.\nAvailable values: \"deep\", \"shallow\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsBrowserIsolation:TeamsAccountSettingsBrowserIsolation": {
            "properties": {
                "nonIdentityEnabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable non-identity onramp support for Browser Isolation.\n"
                },
                "urlBrowserIsolationEnabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable Clientless Browser Isolation.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsCertificate:TeamsAccountSettingsCertificate": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Specify the UUID of the certificate used for interception. Ensure the certificate is available at the edge(previously called 'active'). A nil UUID directs Cloudflare to use the Root CA.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/TeamsAccountSettingsCustomCertificate:TeamsAccountSettingsCustomCertificate": {
            "properties": {
                "bindingStatus": {
                    "type": "string",
                    "description": "Indicate the internal certificate status.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable a custom certificate authority for signing Gateway traffic.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Specify the UUID of the certificate (ID from MTLS certificate store).\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bindingStatus",
                        "enabled",
                        "updatedAt"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsAccountSettingsExtendedEmailMatching:TeamsAccountSettingsExtendedEmailMatching": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to match all variants of user emails (with + or . modifiers) used as criteria in Firewall policies.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Indicate the account tag of the account that shared this setting.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the setting.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "readOnly",
                        "sourceAccount",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsAccountSettingsFips:TeamsAccountSettingsFips": {
            "properties": {
                "tls": {
                    "type": "boolean",
                    "description": "Enforce cipher suites and TLS versions compliant with FIPS 140-2.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsHostSelector:TeamsAccountSettingsHostSelector": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable filtering via hosts for egress policies.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsInspection:TeamsAccountSettingsInspection": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Define the proxy inspection mode.   1. static: Gateway applies static inspection to HTTP on TCP(80). With TLS decryption on, Gateway inspects HTTPS traffic on TCP(443) and UDP(443).   2. dynamic: Gateway applies protocol detection to inspect HTTP and HTTPS traffic on any port. TLS decryption must remain on to inspect HTTPS traffic.\nAvailable values: \"static\", \"dynamic\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsProtocolDetection:TeamsAccountSettingsProtocolDetection": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to detect protocols from the initial bytes of client traffic.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsSandbox:TeamsAccountSettingsSandbox": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable the sandbox.\n"
                },
                "fallbackAction": {
                    "type": "string",
                    "description": "Specify the action to take when the system cannot scan the file.\nAvailable values: \"allow\", \"block\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsAccountSettingsTlsDecrypt:TeamsAccountSettingsTlsDecrypt": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to inspect encrypted HTTP traffic.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsListItem:TeamsListItem": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Provide the list item description (optional).\n"
                },
                "value": {
                    "type": "string",
                    "description": "Specify the item value.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsLocationEndpoints:TeamsLocationEndpoints": {
            "properties": {
                "doh": {
                    "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsDoh:TeamsLocationEndpointsDoh"
                },
                "dot": {
                    "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsDot:TeamsLocationEndpointsDot"
                },
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsIpv4:TeamsLocationEndpointsIpv4"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsIpv6:TeamsLocationEndpointsIpv6"
                }
            },
            "type": "object",
            "required": [
                "doh",
                "dot",
                "ipv4",
                "ipv6"
            ]
        },
        "cloudflare:index/TeamsLocationEndpointsDoh:TeamsLocationEndpointsDoh": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOH endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsDohNetwork:TeamsLocationEndpointsDohNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                },
                "requireToken": {
                    "type": "boolean",
                    "description": "Specify whether the DOH endpoint requires user identity authentication.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "networks",
                        "requireToken"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsLocationEndpointsDohNetwork:TeamsLocationEndpointsDohNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/TeamsLocationEndpointsDot:TeamsLocationEndpointsDot": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOT endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsDotNetwork:TeamsLocationEndpointsDotNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "networks"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsLocationEndpointsDotNetwork:TeamsLocationEndpointsDotNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/TeamsLocationEndpointsIpv4:TeamsLocationEndpointsIpv4": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPv4 endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsLocationEndpointsIpv6:TeamsLocationEndpointsIpv6": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPV6 endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsLocationEndpointsIpv6Network:TeamsLocationEndpointsIpv6Network"
                    },
                    "description": "Specify the list of allowed source IPv6 network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "networks"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsLocationEndpointsIpv6Network:TeamsLocationEndpointsIpv6Network": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv6 address or IPv6 CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/TeamsLocationNetwork:TeamsLocationNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv4 address or IPv4 CIDR. Limit IPv4 CIDRs to a maximum of /24.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/TeamsRuleExpiration:TeamsRuleExpiration": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "Defines the default duration a policy active in minutes. Must set in order to use the \u003cspan pulumi-lang-nodejs=\"`resetExpiration`\" pulumi-lang-dotnet=\"`ResetExpiration`\" pulumi-lang-go=\"`resetExpiration`\" pulumi-lang-python=\"`reset_expiration`\" pulumi-lang-yaml=\"`resetExpiration`\" pulumi-lang-java=\"`resetExpiration`\"\u003e`resetExpiration`\u003c/span\u003e endpoint on this rule.\n"
                },
                "expired": {
                    "type": "boolean",
                    "description": "Indicates whether the policy is expired.\n"
                },
                "expiresAt": {
                    "type": "string",
                    "description": "Show the timestamp when the policy expires and stops applying.  The value must follow RFC 3339 and include a UTC offset.  The system accepts non-zero offsets but converts them to the equivalent UTC+00:00  value and returns timestamps with a trailing Z. Expiration policies ignore client  timezones and expire globally at the specified\u003cspan pulumi-lang-nodejs=\" expiresAt \" pulumi-lang-dotnet=\" ExpiresAt \" pulumi-lang-go=\" expiresAt \" pulumi-lang-python=\" expires_at \" pulumi-lang-yaml=\" expiresAt \" pulumi-lang-java=\" expiresAt \"\u003e expiresAt \u003c/span\u003etime.\n"
                }
            },
            "type": "object",
            "required": [
                "expiresAt"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "expired",
                        "expiresAt"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsRuleRuleSettings:TeamsRuleRuleSettings": {
            "properties": {
                "addHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Add custom headers to allowed requests as key-value pairs. Use header names as keys that map to arrays of header values. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "allowChildBypass": {
                    "type": "boolean",
                    "description": "Set to enable MSP children to bypass this rule. Only parent MSP accounts can set this. this rule. Settable for all types of rules.\n"
                },
                "auditSsh": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsAuditSsh:TeamsRuleRuleSettingsAuditSsh",
                    "description": "Define the settings for the Audit SSH action. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with \u003cspan pulumi-lang-nodejs=\"`auditSsh`\" pulumi-lang-dotnet=\"`AuditSsh`\" pulumi-lang-go=\"`auditSsh`\" pulumi-lang-python=\"`audit_ssh`\" pulumi-lang-yaml=\"`auditSsh`\" pulumi-lang-java=\"`auditSsh`\"\u003e`auditSsh`\u003c/span\u003e action.\n"
                },
                "bisoAdminControls": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsBisoAdminControls:TeamsRuleRuleSettingsBisoAdminControls",
                    "description": "Configure browser isolation behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`isolate`\" pulumi-lang-dotnet=\"`Isolate`\" pulumi-lang-go=\"`isolate`\" pulumi-lang-python=\"`isolate`\" pulumi-lang-yaml=\"`isolate`\" pulumi-lang-java=\"`isolate`\"\u003e`isolate`\u003c/span\u003e.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsBlockPage:TeamsRuleRuleSettingsBlockPage",
                    "description": "Configure custom block page settings. If missing or null, use the account settings. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockPageEnabled": {
                    "type": "boolean",
                    "description": "Enable the custom block page. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with action \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockReason": {
                    "type": "string",
                    "description": "Explain why the rule blocks the request. The custom block page shows this text (if enabled). Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules when the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "bypassParentRule": {
                    "type": "boolean",
                    "description": "Set to enable MSP accounts to bypass their parent's rules. Only MSP child accounts can set this. Settable for all types of rules.\n"
                },
                "checkSession": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsCheckSession:TeamsRuleRuleSettingsCheckSession",
                    "description": "Configure session check behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "dnsResolvers": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsDnsResolvers:TeamsRuleRuleSettingsDnsResolvers",
                    "description": "Configure custom resolvers to route queries that match the resolver policy. Unused with 'resolve*dns*through*cloudflare' or 'resolve*dns*internally' settings. DNS queries get routed to the address closest to their origin. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "egress": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsEgress:TeamsRuleRuleSettingsEgress",
                    "description": "Configure how Gateway Proxy traffic egresses. You can enable this setting for rules with Egress actions and filters, or omit it to indicate local egress via WARP IPs. Settable only for \u003cspan pulumi-lang-nodejs=\"`egress`\" pulumi-lang-dotnet=\"`Egress`\" pulumi-lang-go=\"`egress`\" pulumi-lang-python=\"`egress`\" pulumi-lang-yaml=\"`egress`\" pulumi-lang-java=\"`egress`\"\u003e`egress`\u003c/span\u003e rules.\n"
                },
                "forensicCopy": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsForensicCopy:TeamsRuleRuleSettingsForensicCopy",
                    "description": "Configure whether a copy of the HTTP request will be sent to storage when the rule matches.\n"
                },
                "ignoreCnameCategoryMatches": {
                    "type": "boolean",
                    "description": "Ignore category matches at CNAME domains in a response. When off, evaluate categories in this rule against all CNAME domain categories in the response. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "insecureDisableDnssecValidation": {
                    "type": "boolean",
                    "description": "Specify whether to disable DNSSEC validation (for Allow actions) [INSECURE]. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "ipCategories": {
                    "type": "boolean",
                    "description": "Enable IPs in DNS resolver category blocks. The system blocks only domain name categories unless you enable this setting. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "ipIndicatorFeeds": {
                    "type": "boolean",
                    "description": "Indicates whether to include IPs in DNS resolver indicator feed blocks. Default, indicator feeds block only domain names. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "l4override": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsL4override:TeamsRuleRuleSettingsL4override",
                    "description": "Send matching traffic to the supplied destination IP address and port. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`l4Override`\" pulumi-lang-dotnet=\"`L4Override`\" pulumi-lang-go=\"`l4Override`\" pulumi-lang-python=\"`l4_override`\" pulumi-lang-yaml=\"`l4Override`\" pulumi-lang-java=\"`l4Override`\"\u003e`l4Override`\u003c/span\u003e.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsNotificationSettings:TeamsRuleRuleSettingsNotificationSettings",
                    "description": "Configure a notification to display on the user's device when this rule matched. Settable for all types of rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "overrideHost": {
                    "type": "string",
                    "description": "Defines a hostname for override, for the matching DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "overrideIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Defines a an IP or set of IPs for overriding matched DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "payloadLog": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsPayloadLog:TeamsRuleRuleSettingsPayloadLog",
                    "description": "Configure DLP payload logging. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "quarantine": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsQuarantine:TeamsRuleRuleSettingsQuarantine",
                    "description": "Configure settings that apply to quarantine rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsRedirect:TeamsRuleRuleSettingsRedirect",
                    "description": "Apply settings to redirect rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e.\n"
                },
                "resolveDnsInternally": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsResolveDnsInternally:TeamsRuleRuleSettingsResolveDnsInternally",
                    "description": "Configure to forward the query to the internal DNS service, passing the specified 'view*id' as input. Not used when 'dns*resolvers' is specified or 'resolve*dns*through*cloudflare' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "resolveDnsThroughCloudflare": {
                    "type": "boolean",
                    "description": "Enable to send queries that match the policy to Cloudflare's default 1.1.1.1 DNS resolver. Cannot set when 'dns*resolvers' specified or 'resolve*dns_internally' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "untrustedCert": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsUntrustedCert:TeamsRuleRuleSettingsUntrustedCert",
                    "description": "Configure behavior when an upstream certificate is invalid or an SSL error occurs. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "allowChildBypass",
                        "blockPageEnabled",
                        "blockReason",
                        "ignoreCnameCategoryMatches",
                        "insecureDisableDnssecValidation",
                        "ipCategories",
                        "ipIndicatorFeeds",
                        "overrideHost",
                        "overrideIps",
                        "resolveDnsThroughCloudflare"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsRuleRuleSettingsAuditSsh:TeamsRuleRuleSettingsAuditSsh": {
            "properties": {
                "commandLogging": {
                    "type": "boolean",
                    "description": "Enable SSH command logging.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsBisoAdminControls:TeamsRuleRuleSettingsBisoAdminControls": {
            "properties": {
                "copy": {
                    "type": "string",
                    "description": "Configure copy behavior. If set to remote*only, users cannot copy isolated content from the remote browser to the local clipboard. If this field is absent, copying remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dcp": {
                    "type": "boolean",
                    "description": "Set to false to enable copy-pasting. Only applies when `version == \"v1\"`.\n"
                },
                "dd": {
                    "type": "boolean",
                    "description": "Set to false to enable downloading. Only applies when `version == \"v1\"`.\n"
                },
                "dk": {
                    "type": "boolean",
                    "description": "Set to false to enable keyboard usage. Only applies when `version == \"v1\"`.\n"
                },
                "download": {
                    "type": "string",
                    "description": "Configure download behavior. When set to remote*only, users can view downloads but cannot save them. If this field is absent, downloading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dp": {
                    "type": "boolean",
                    "description": "Set to false to enable printing. Only applies when `version == \"v1\"`.\n"
                },
                "du": {
                    "type": "boolean",
                    "description": "Set to false to enable uploading. Only applies when `version == \"v1\"`.\n"
                },
                "keyboard": {
                    "type": "string",
                    "description": "Configure keyboard usage behavior. If this field is absent, keyboard usage remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "paste": {
                    "type": "string",
                    "description": "Configure paste behavior. If set to remote*only, users cannot paste content from the local clipboard into isolated pages. If this field is absent, pasting remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "printing": {
                    "type": "string",
                    "description": "Configure print behavior. Default, Printing is enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "upload": {
                    "type": "string",
                    "description": "Configure upload behavior. If this field is absent, uploading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "version": {
                    "type": "string",
                    "description": "Indicate which version of the browser isolation controls should apply.\nAvailable values: \"v1\", \"v2\".\n"
                },
                "wmId": {
                    "type": "string",
                    "description": "Specify the watermark ID (UUID) to apply to the isolated browser session. When present, enables watermark rendering in the isolated browser.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/TeamsRuleRuleSettingsBlockPage:TeamsRuleRuleSettingsBlockPage": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "targetUri"
            ]
        },
        "cloudflare:index/TeamsRuleRuleSettingsCheckSession:TeamsRuleRuleSettingsCheckSession": {
            "properties": {
                "duration": {
                    "type": "string",
                    "description": "Sets the required session freshness threshold. The API returns a normalized version of this value.\n"
                },
                "enforce": {
                    "type": "boolean",
                    "description": "Enable session enforcement.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsDnsResolvers:TeamsRuleRuleSettingsDnsResolvers": {
            "properties": {
                "ipv4s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsDnsResolversIpv4:TeamsRuleRuleSettingsDnsResolversIpv4"
                    }
                },
                "ipv6s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettingsDnsResolversIpv6:TeamsRuleRuleSettingsDnsResolversIpv6"
                    }
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsDnsResolversIpv4:TeamsRuleRuleSettingsDnsResolversIpv4": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv4 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/TeamsRuleRuleSettingsDnsResolversIpv6:TeamsRuleRuleSettingsDnsResolversIpv6": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv6 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/TeamsRuleRuleSettingsEgress:TeamsRuleRuleSettingsEgress": {
            "properties": {
                "ipv4": {
                    "type": "string",
                    "description": "Specify the IPv4 address to use for egress.\n"
                },
                "ipv4Fallback": {
                    "type": "string",
                    "description": "Specify the fallback IPv4 address to use for egress when the primary IPv4 fails. Set '0.0.0.0' to indicate local egress via WARP IPs.\n"
                },
                "ipv6": {
                    "type": "string",
                    "description": "Specify the IPv6 range to use for egress.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsForensicCopy:TeamsRuleRuleSettingsForensicCopy": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable sending the copy to storage.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsL4override:TeamsRuleRuleSettingsL4override": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Defines the IPv4 or IPv6 address.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Defines a port number to use for TCP/UDP overrides.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsNotificationSettings:TeamsRuleRuleSettingsNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable notification.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Indicates whether to pass the context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Customize the message shown in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Defines an optional URL to direct users to additional information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsPayloadLog:TeamsRuleRuleSettingsPayloadLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable DLP payload logging for this rule.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsQuarantine:TeamsRuleRuleSettingsQuarantine": {
            "properties": {
                "fileTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the types of files to sandbox.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsRedirect:TeamsRuleRuleSettingsRedirect": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "preservePathAndQuery": {
                    "type": "boolean",
                    "description": "Specify whether to append the path and query parameters from the original request to target_uri.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "targetUri"
            ]
        },
        "cloudflare:index/TeamsRuleRuleSettingsResolveDnsInternally:TeamsRuleRuleSettingsResolveDnsInternally": {
            "properties": {
                "fallback": {
                    "type": "string",
                    "description": "Specify the fallback behavior to apply when the internal DNS response code differs from 'NOERROR' or when the response data contains only CNAME records for 'A' or 'AAAA' queries.\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"publicDns\"\" pulumi-lang-dotnet=\"\"PublicDns\"\" pulumi-lang-go=\"\"publicDns\"\" pulumi-lang-python=\"\"public_dns\"\" pulumi-lang-yaml=\"\"publicDns\"\" pulumi-lang-java=\"\"publicDns\"\"\u003e\"publicDns\"\u003c/span\u003e.\n"
                },
                "viewId": {
                    "type": "string",
                    "description": "Specify the internal DNS view identifier to pass to the internal DNS service.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleRuleSettingsUntrustedCert:TeamsRuleRuleSettingsUntrustedCert": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Defines the action performed when an untrusted certificate seen. The default action an error with HTTP code 526.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"passThrough\"\" pulumi-lang-dotnet=\"\"PassThrough\"\" pulumi-lang-go=\"\"passThrough\"\" pulumi-lang-python=\"\"pass_through\"\" pulumi-lang-yaml=\"\"passThrough\"\" pulumi-lang-java=\"\"passThrough\"\"\u003e\"passThrough\"\u003c/span\u003e, \"block\", \"error\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TeamsRuleSchedule:TeamsRuleSchedule": {
            "properties": {
                "fri": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Fridays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Fridays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "mon": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Mondays, in the increasing order from 00:00-24:00(capped at maximum of 6 time splits). If this parameter omitted, the rule is deactivated on Mondays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sat": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Saturdays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Saturdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sun": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Sundays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Sundays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "thu": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Thursdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Thursdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "Specify the time zone for rule evaluation. When a [valid time zone city name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) is provided, Gateway always uses the current time for that time zone. When this parameter is omitted, Gateway uses the time zone determined from the user's IP address. Colo time zone is used when the user's IP address does not resolve to a location.\n"
                },
                "tue": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Tuesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Tuesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "wed": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Wednesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Wednesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TokenValidationConfigCredentials:TokenValidationConfigCredentials": {
            "properties": {
                "keys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TokenValidationConfigCredentialsKey:TokenValidationConfigCredentialsKey"
                    }
                }
            },
            "type": "object",
            "required": [
                "keys"
            ]
        },
        "cloudflare:index/TokenValidationConfigCredentialsKey:TokenValidationConfigCredentialsKey": {
            "properties": {
                "alg": {
                    "type": "string",
                    "description": "Algorithm\nAvailable values: \"RS256\", \"RS384\", \"RS512\", \"PS256\", \"PS384\", \"PS512\", \"ES256\", \"ES384\".\n"
                },
                "crv": {
                    "type": "string",
                    "description": "Curve\nAvailable values: \"P-256\", \"P-384\".\n"
                },
                "e": {
                    "type": "string",
                    "description": "RSA exponent\n"
                },
                "kid": {
                    "type": "string",
                    "description": "Key ID\n"
                },
                "kty": {
                    "type": "string",
                    "description": "Key Type\nAvailable values: \"RSA\", \"EC\".\n"
                },
                "n": {
                    "type": "string",
                    "description": "RSA modulus\n"
                },
                "x": {
                    "type": "string",
                    "description": "X EC coordinate\n"
                },
                "y": {
                    "type": "string",
                    "description": "Y EC coordinate\n"
                }
            },
            "type": "object",
            "required": [
                "alg",
                "kid",
                "kty"
            ]
        },
        "cloudflare:index/TokenValidationRulesPosition:TokenValidationRulesPosition": {
            "properties": {
                "after": {
                    "type": "string",
                    "description": "Move rule to after rule with this ID.\n"
                },
                "before": {
                    "type": "string",
                    "description": "Move rule to before rule with this ID.\n"
                },
                "index": {
                    "type": "integer",
                    "description": "Move rule to this position\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TokenValidationRulesSelector:TokenValidationRulesSelector": {
            "properties": {
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TokenValidationRulesSelectorExclude:TokenValidationRulesSelectorExclude"
                    },
                    "description": "Ignore operations that were otherwise included by \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TokenValidationRulesSelectorInclude:TokenValidationRulesSelectorInclude"
                    },
                    "description": "Select all matching operations.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TokenValidationRulesSelectorExclude:TokenValidationRulesSelectorExclude": {
            "properties": {
                "operationIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Excluded operation IDs.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TokenValidationRulesSelectorInclude:TokenValidationRulesSelectorInclude": {
            "properties": {
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Included hostnames.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TunnelConfigConfig:TunnelConfigConfig": {
            "properties": {
                "ingresses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TunnelConfigConfigIngress:TunnelConfigConfigIngress"
                    },
                    "description": "List of public hostname definitions. At least one ingress rule needs to be defined for the tunnel.\n"
                },
                "originRequest": {
                    "$ref": "#/types/cloudflare:index/TunnelConfigConfigOriginRequest:TunnelConfigConfigOriginRequest",
                    "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TunnelConfigConfigIngress:TunnelConfigConfigIngress": {
            "properties": {
                "hostname": {
                    "type": "string",
                    "description": "Public hostname for this service.\n"
                },
                "originRequest": {
                    "$ref": "#/types/cloudflare:index/TunnelConfigConfigIngressOriginRequest:TunnelConfigConfigIngressOriginRequest",
                    "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Requests with this path route to this public hostname.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Protocol and address of destination server. Supported protocols: http://, https://, unix://, tcp://, ssh://, rdp://, unix+tls://, smb://. Alternatively can return a HTTP status code http*status:[code] e.g. 'http*status:404'.\n"
                }
            },
            "type": "object",
            "required": [
                "service"
            ]
        },
        "cloudflare:index/TunnelConfigConfigIngressOriginRequest:TunnelConfigConfigIngressOriginRequest": {
            "properties": {
                "access": {
                    "$ref": "#/types/cloudflare:index/TunnelConfigConfigIngressOriginRequestAccess:TunnelConfigConfigIngressOriginRequestAccess",
                    "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header.\n"
                },
                "caPool": {
                    "type": "string",
                    "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare.\n"
                },
                "connectTimeout": {
                    "type": "integer",
                    "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout.\n"
                },
                "disableChunkedEncoding": {
                    "type": "boolean",
                    "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server.\n"
                },
                "http2Origin": {
                    "type": "boolean",
                    "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https.\n"
                },
                "httpHostHeader": {
                    "type": "string",
                    "description": "Sets the HTTP Host header on requests sent to the local service.\n"
                },
                "keepAliveConnections": {
                    "type": "integer",
                    "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections.\n"
                },
                "keepAliveTimeout": {
                    "type": "integer",
                    "description": "Timeout after which an idle keepalive connection can be discarded.\n"
                },
                "matchSnItoHost": {
                    "type": "boolean",
                    "description": "Auto configure the Hostname on the origin server certificate.\n"
                },
                "noHappyEyeballs": {
                    "type": "boolean",
                    "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols.\n"
                },
                "noTlsVerify": {
                    "type": "boolean",
                    "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted.\n"
                },
                "originServerName": {
                    "type": "string",
                    "description": "Hostname that cloudflared should expect from your origin server certificate.\n"
                },
                "proxyType": {
                    "type": "string",
                    "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
                },
                "tcpKeepAlive": {
                    "type": "integer",
                    "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server.\n"
                },
                "tlsTimeout": {
                    "type": "integer",
                    "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TunnelConfigConfigIngressOriginRequestAccess:TunnelConfigConfigIngressOriginRequestAccess": {
            "properties": {
                "audTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "Deny traffic that has not fulfilled Access authorization.\n"
                },
                "teamName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "audTags",
                "teamName"
            ]
        },
        "cloudflare:index/TunnelConfigConfigOriginRequest:TunnelConfigConfigOriginRequest": {
            "properties": {
                "access": {
                    "$ref": "#/types/cloudflare:index/TunnelConfigConfigOriginRequestAccess:TunnelConfigConfigOriginRequestAccess",
                    "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header.\n"
                },
                "caPool": {
                    "type": "string",
                    "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare.\n"
                },
                "connectTimeout": {
                    "type": "integer",
                    "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout.\n"
                },
                "disableChunkedEncoding": {
                    "type": "boolean",
                    "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server.\n"
                },
                "http2Origin": {
                    "type": "boolean",
                    "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https.\n"
                },
                "httpHostHeader": {
                    "type": "string",
                    "description": "Sets the HTTP Host header on requests sent to the local service.\n"
                },
                "keepAliveConnections": {
                    "type": "integer",
                    "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections.\n"
                },
                "keepAliveTimeout": {
                    "type": "integer",
                    "description": "Timeout after which an idle keepalive connection can be discarded.\n"
                },
                "matchSnItoHost": {
                    "type": "boolean",
                    "description": "Auto configure the Hostname on the origin server certificate.\n"
                },
                "noHappyEyeballs": {
                    "type": "boolean",
                    "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols.\n"
                },
                "noTlsVerify": {
                    "type": "boolean",
                    "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted.\n"
                },
                "originServerName": {
                    "type": "string",
                    "description": "Hostname that cloudflared should expect from your origin server certificate.\n"
                },
                "proxyType": {
                    "type": "string",
                    "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
                },
                "tcpKeepAlive": {
                    "type": "integer",
                    "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server.\n"
                },
                "tlsTimeout": {
                    "type": "integer",
                    "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/TunnelConfigConfigOriginRequestAccess:TunnelConfigConfigOriginRequestAccess": {
            "properties": {
                "audTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "Deny traffic that has not fulfilled Access authorization.\n"
                },
                "teamName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "audTags",
                "teamName"
            ]
        },
        "cloudflare:index/TunnelConnection:TunnelConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "clientId",
                        "clientVersion",
                        "coloName",
                        "id",
                        "isPendingReconnect",
                        "openedAt",
                        "originIp",
                        "uuid"
                    ]
                }
            }
        },
        "cloudflare:index/UserAgentBlockingRuleConfiguration:UserAgentBlockingRuleConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ua`\" pulumi-lang-dotnet=\"`Ua`\" pulumi-lang-go=\"`ua`\" pulumi-lang-python=\"`ua`\" pulumi-lang-yaml=\"`ua`\" pulumi-lang-java=\"`ua`\"\u003e`ua`\u003c/span\u003e when specifying a user agent in the rule.\nAvailable values: \"ua\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "the user agent to exactly match\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/UserGroupMembersMember:UserGroupMembersMember": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The identifier of an existing account Member.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/UserGroupPolicy:UserGroupPolicy": {
            "properties": {
                "access": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserGroupPolicyPermissionGroup:UserGroupPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resourceGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserGroupPolicyResourceGroup:UserGroupPolicyResourceGroup"
                    },
                    "description": "A set of resource groups that are specified to the policy.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "permissionGroups",
                "resourceGroups"
            ]
        },
        "cloudflare:index/UserGroupPolicyPermissionGroup:UserGroupPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Permission Group identifier tag.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/UserGroupPolicyResourceGroup:UserGroupPolicyResourceGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Resource Group identifier tag.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/UserOrganization:UserOrganization": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "Organization name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access permissions for this User.\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of roles that a user has within an organization.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Whether the user is a member of the organization or has an invitation pending.\nAvailable values: \"member\", \"invited\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name",
                        "permissions",
                        "roles",
                        "status"
                    ]
                }
            }
        },
        "cloudflare:index/VulnerabilityScannerTargetEnvironmentTarget:VulnerabilityScannerTargetEnvironmentTarget": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"zone\".\n"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "Cloudflare zone tag. The zone must belong to the account.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "zoneTag"
            ]
        },
        "cloudflare:index/WaitingRoomAdditionalRoute:WaitingRoomAdditionalRoute": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).\n"
                },
                "path": {
                    "type": "string",
                    "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "path"
                    ]
                }
            }
        },
        "cloudflare:index/WaitingRoomCookieAttributes:WaitingRoomCookieAttributes": {
            "properties": {
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on the waiting room cookie. Value \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e will be translated to \u003cspan pulumi-lang-nodejs=\"`lax`\" pulumi-lang-dotnet=\"`Lax`\" pulumi-lang-go=\"`lax`\" pulumi-lang-python=\"`lax`\" pulumi-lang-yaml=\"`lax`\" pulumi-lang-java=\"`lax`\"\u003e`lax`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e depending if **Always Use HTTPS** is enabled. Note that when using value \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, the secure attribute cannot be set to \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e.\nAvailable values: \"auto\", \"lax\", \"none\", \"strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on the waiting room cookie. Value \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e indicates that the Secure attribute will be set in the Set-Cookie header, \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e indicates that the Secure attribute will not be set, and \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e will set the Secure attribute depending if **Always Use HTTPS** is enabled.\nAvailable values: \"auto\", \"always\", \"never\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "samesite",
                        "secure"
                    ]
                }
            }
        },
        "cloudflare:index/WaitingRoomRulesRule:WaitingRoomRulesRule": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to take when the expression matches.\nAvailable values: \"bypass*waiting*room\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "When set to true, the rule is enabled.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "Criteria defining when there is a match for the current rule.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "expression"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "action",
                        "description",
                        "enabled",
                        "expression"
                    ]
                }
            }
        },
        "cloudflare:index/WebAnalyticsSiteRule:WebAnalyticsSiteRule": {
            "properties": {
                "created": {
                    "type": "string"
                },
                "host": {
                    "type": "string",
                    "description": "The hostname the rule will be applied to.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics rule identifier.\n"
                },
                "inclusive": {
                    "type": "boolean",
                    "description": "Whether the rule includes or excludes traffic from being measured.\n"
                },
                "isPaused": {
                    "type": "boolean",
                    "description": "Whether the rule is paused or not.\n"
                },
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The paths the rule will be applied to.\n"
                },
                "priority": {
                    "type": "number"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "created",
                        "host",
                        "id",
                        "inclusive",
                        "isPaused",
                        "paths",
                        "priority"
                    ]
                }
            }
        },
        "cloudflare:index/WebAnalyticsSiteRuleset:WebAnalyticsSiteRuleset": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the ruleset is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics ruleset identifier.\n"
                },
                "zoneName": {
                    "type": "string"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "The zone identifier.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "id",
                        "zoneName",
                        "zoneTag"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerCronTriggerSchedule:WorkerCronTriggerSchedule": {
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "cron": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "cron"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdOn",
                        "cron",
                        "modifiedOn"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerObservability:WorkerObservability": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether observability is enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for observability. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/WorkerObservabilityLogs:WorkerObservabilityLogs",
                    "description": "Log settings for the Worker.\n"
                },
                "traces": {
                    "$ref": "#/types/cloudflare:index/WorkerObservabilityTraces:WorkerObservabilityTraces",
                    "description": "Trace settings for the Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "headSamplingRate",
                        "logs",
                        "traces"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerObservabilityLogs:WorkerObservabilityLogs": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where logs will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "invocationLogs": {
                    "type": "boolean",
                    "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether log persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "destinations",
                        "enabled",
                        "headSamplingRate",
                        "invocationLogs",
                        "persist"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerObservabilityTraces:WorkerObservabilityTraces": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where traces will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether traces are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether trace persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "destinations",
                        "enabled",
                        "headSamplingRate",
                        "persist"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerReferences:WorkerReferences": {
            "properties": {
                "dispatchNamespaceOutbounds": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerReferencesDispatchNamespaceOutbound:WorkerReferencesDispatchNamespaceOutbound"
                    },
                    "description": "Other Workers that reference the Worker as an outbound for a dispatch namespace.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerReferencesDomain:WorkerReferencesDomain"
                    },
                    "description": "Custom domains connected to the Worker.\n"
                },
                "durableObjects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerReferencesDurableObject:WorkerReferencesDurableObject"
                    },
                    "description": "Other Workers that reference Durable Object classes implemented by the Worker.\n"
                },
                "queues": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerReferencesQueue:WorkerReferencesQueue"
                    },
                    "description": "Queues that send messages to the Worker.\n"
                },
                "workers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerReferencesWorker:WorkerReferencesWorker"
                    },
                    "description": "Other Workers that reference the Worker using [service bindings](https://developers.cloudflare.com/workers/runtime-apis/bindings/service-bindings/).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "dispatchNamespaceOutbounds",
                        "domains",
                        "durableObjects",
                        "queues",
                        "workers"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerReferencesDispatchNamespaceOutbound:WorkerReferencesDispatchNamespaceOutbound": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the dispatch namespace.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the dispatch namespace.\n"
                },
                "workerId": {
                    "type": "string",
                    "description": "ID of the Worker using the dispatch namespace.\n"
                },
                "workerName": {
                    "type": "string",
                    "description": "Name of the Worker using the dispatch namespace.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "namespaceId",
                        "namespaceName",
                        "workerId",
                        "workerName"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerReferencesDomain:WorkerReferencesDomain": {
            "properties": {
                "certificateId": {
                    "type": "string",
                    "description": "ID of the TLS certificate issued for the custom domain.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "Full hostname of the custom domain, including the zone name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the custom domain.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "certificateId",
                        "hostname",
                        "id",
                        "zoneId",
                        "zoneName"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerReferencesDurableObject:WorkerReferencesDurableObject": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace being used.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the Durable Object namespace being used.\n"
                },
                "workerId": {
                    "type": "string",
                    "description": "ID of the Worker using the Durable Object implementation.\n"
                },
                "workerName": {
                    "type": "string",
                    "description": "Name of the Worker using the Durable Object implementation.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "namespaceId",
                        "namespaceName",
                        "workerId",
                        "workerName"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerReferencesQueue:WorkerReferencesQueue": {
            "properties": {
                "queueConsumerId": {
                    "type": "string",
                    "description": "ID of the queue consumer configuration.\n"
                },
                "queueId": {
                    "type": "string",
                    "description": "ID of the queue.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the queue.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "queueConsumerId",
                        "queueId",
                        "queueName"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerReferencesWorker:WorkerReferencesWorker": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the referencing Worker.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the referencing Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptAnnotations:WorkerScriptAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the version. Truncated to 1000 bytes if longer.\n"
                },
                "workersTag": {
                    "type": "string",
                    "description": "User-provided identifier for the version. Maximum 100 bytes.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Indicates the trigger that created this version. Server-set value.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "workersTriggeredBy"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptAssets:WorkerScriptAssets": {
            "properties": {
                "assetManifestSha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the asset manifest of files to upload.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptAssetsConfig:WorkerScriptAssetsConfig",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "directory": {
                    "type": "string",
                    "description": "Path to the directory containing asset files to upload.\n"
                },
                "jwt": {
                    "type": "string",
                    "description": "Token provided upon successful upload of all files from a registered manifest.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "assetManifestSha256"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptAssetsConfig:WorkerScriptAssetsConfig": {
            "properties": {
                "headers": {
                    "type": "string",
                    "description": "The contents of a _headers file (used to attach custom headers on asset responses).\n"
                },
                "htmlHandling": {
                    "type": "string",
                    "description": "Determines the redirects and rewrites of requests for HTML content.\nAvailable values: \"auto-trailing-slash\", \"force-trailing-slash\", \"drop-trailing-slash\", \"none\".\n"
                },
                "notFoundHandling": {
                    "type": "string",
                    "description": "Determines the response when a request does not match a static asset, and there is no Worker script.\nAvailable values: \"none\", \"404-page\", \"single-page-application\".\n"
                },
                "redirects": {
                    "type": "string",
                    "description": "The contents of a _redirects file (used to apply redirects or proxy paths ahead of asset serving).\n"
                },
                "runWorkerFirst": {
                    "$ref": "pulumi.json#/Any",
                    "description": "When a boolean true, requests will always invoke the Worker script. Otherwise, attempt to serve an asset matching the request, falling back to the Worker script. When a list of strings, contains path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules.\n"
                },
                "serveDirectly": {
                    "type": "boolean",
                    "description": "When true and the incoming request matches an asset, that will be served instead of invoking the Worker script. When false, requests will always invoke the Worker script.\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptBinding:WorkerScriptBinding": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm).\n"
                },
                "allowedDestinationAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed destination addresses.\n"
                },
                "allowedSenderAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed sender addresses.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "ID of the Flagship app to bind to for feature flag evaluation.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "R2 bucket to bind to.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "Identifier of the certificate to bind to.\n"
                },
                "className": {
                    "type": "string",
                    "description": "The exported class name of the Durable Object.\n"
                },
                "databaseId": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "The name of the dataset to bind to.\n"
                },
                "destinationAddress": {
                    "type": "string",
                    "description": "Destination address for the email.\n"
                },
                "dispatchNamespace": {
                    "type": "string",
                    "description": "The dispatch namespace the Durable Object script belongs to.\n"
                },
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the target Worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The environment of the\u003cspan pulumi-lang-nodejs=\" scriptName \" pulumi-lang-dotnet=\" ScriptName \" pulumi-lang-go=\" scriptName \" pulumi-lang-python=\" script_name \" pulumi-lang-yaml=\" scriptName \" pulumi-lang-java=\" scriptName \"\u003e scriptName \u003c/span\u003eto bind to.\n"
                },
                "format": {
                    "type": "string",
                    "description": "Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format).\nAvailable values: \"raw\", \"pkcs8\", \"spki\", \"jwk\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "indexName": {
                    "type": "string",
                    "description": "Name of the Vectorize index to bind to.\n"
                },
                "instanceName": {
                    "type": "string",
                    "description": "The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance.\n"
                },
                "json": {
                    "type": "string",
                    "description": "JSON data to use.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket.\nAvailable values: \"eu\", \"fedramp\", \"fedramp-high\".\n"
                },
                "keyBase64": {
                    "type": "string",
                    "description": "Base64-encoded key data. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"raw\", \"pkcs8\", or \"spki\".\n",
                    "secret": true
                },
                "keyJwk": {
                    "type": "string",
                    "description": "Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"jwk\".\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "A JavaScript variable name for the binding.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The namespace the instance belongs to. Defaults to \"default\" if omitted. Customers who don't use namespaces can simply omit this field.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "Identifier of the network to bind to. Only \"cf1:network\" is currently supported. Mutually exclusive with tunnel_id.\n"
                },
                "oldName": {
                    "type": "string",
                    "description": "The old name of the inherited binding. If set, the binding will be renamed from \u003cspan pulumi-lang-nodejs=\"`oldName`\" pulumi-lang-dotnet=\"`OldName`\" pulumi-lang-go=\"`oldName`\" pulumi-lang-python=\"`old_name`\" pulumi-lang-yaml=\"`oldName`\" pulumi-lang-java=\"`oldName`\"\u003e`oldName`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in the new version. If not set, the binding will keep the same name between versions.\n"
                },
                "outbound": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptBindingOutbound:WorkerScriptBindingOutbound",
                    "description": "Outbound worker.\n"
                },
                "part": {
                    "type": "string",
                    "description": "The name of the file containing the data content. Only accepted for `service worker syntax` Workers.\n"
                },
                "pipeline": {
                    "type": "string",
                    "description": "Name of the Pipeline to bind to.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the Queue to bind to.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "The script where the Durable Object is defined, if it is external to this Worker.\n"
                },
                "secretName": {
                    "type": "string",
                    "description": "Name of the secret in the store.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker to bind to.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "Identifier of the VPC service to bind to.\n"
                },
                "simple": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptBindingSimple:WorkerScriptBindingSimple",
                    "description": "A simple rate limit.\n"
                },
                "storeId": {
                    "type": "string",
                    "description": "ID of the store containing the secret.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text value to use.\n",
                    "secret": true
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The kind of resource that the binding provides.\nAvailable values: \"ai\", \"ai*search\", \"ai*search*namespace\", \"analytics*engine\", \"assets\", \"browser\", \"d1\", \"data*blob\", \"dispatch*namespace\", \"durable*object*namespace\", \"hyperdrive\", \"inherit\", \"images\", \"json\", \"kv*namespace\", \"media\", \"mtls*certificate\", \"plain*text\", \"pipelines\", \"queue\", \"ratelimit\", \"r2*bucket\", \"secret*text\", \"send*email\", \"service\", \"text*blob\", \"vectorize\", \"version*metadata\", \"secrets*store*secret\", \"secret*key\", \"workflow\", \"wasm*module\", \"vpc*service\", \"vpc*network\".\n"
                },
                "usages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages).\n"
                },
                "versionId": {
                    "type": "string",
                    "description": "Identifier for the version to inherit the binding from, which can be the version ID or the literal \"latest\" to inherit from the latest version. Defaults to inheriting the binding from the latest version.\n"
                },
                "workflowName": {
                    "type": "string",
                    "description": "Name of the Workflow to bind to.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "className",
                        "name",
                        "namespaceId",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptBindingOutbound:WorkerScriptBindingOutbound": {
            "properties": {
                "params": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Pass information from the Dispatch Worker to the Outbound Worker through the parameters.\n"
                },
                "worker": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptBindingOutboundWorker:WorkerScriptBindingOutboundWorker",
                    "description": "Outbound worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptBindingOutboundWorker:WorkerScriptBindingOutboundWorker": {
            "properties": {
                "environment": {
                    "type": "string",
                    "description": "Environment of the outbound worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the outbound worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptBindingSimple:WorkerScriptBindingSimple": {
            "properties": {
                "limit": {
                    "type": "number",
                    "description": "The rate limit value.\n"
                },
                "period": {
                    "type": "integer",
                    "description": "The rate limit period in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "limit",
                "period"
            ]
        },
        "cloudflare:index/WorkerScriptLimits:WorkerScriptLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "The amount of CPU time this Worker can use in milliseconds.\n"
                },
                "subrequests": {
                    "type": "integer",
                    "description": "The number of subrequests this Worker can make per request.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptMigrations:WorkerScriptMigrations": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "newTag": {
                    "type": "string",
                    "description": "Tag to set as the latest migration tag.\n"
                },
                "oldTag": {
                    "type": "string",
                    "description": "Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptMigrationsRenamedClass:WorkerScriptMigrationsRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptMigrationsStep:WorkerScriptMigrationsStep"
                    },
                    "description": "Migrations to apply in order.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptMigrationsTransferredClass:WorkerScriptMigrationsTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptMigrationsRenamedClass:WorkerScriptMigrationsRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptMigrationsStep:WorkerScriptMigrationsStep": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptMigrationsStepRenamedClass:WorkerScriptMigrationsStepRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptMigrationsStepTransferredClass:WorkerScriptMigrationsStepTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptMigrationsStepRenamedClass:WorkerScriptMigrationsStepRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptMigrationsStepTransferredClass:WorkerScriptMigrationsStepTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptMigrationsTransferredClass:WorkerScriptMigrationsTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerScriptNamedHandler:WorkerScriptNamedHandler": {
            "properties": {
                "handlers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The names of handlers exported as part of the named export.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the export.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "handlers",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptObservability:WorkerScriptObservability": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether observability is enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptObservabilityLogs:WorkerScriptObservabilityLogs",
                    "description": "Log settings for the Worker.\n"
                },
                "traces": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptObservabilityTraces:WorkerScriptObservabilityTraces",
                    "description": "Trace settings for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ]
        },
        "cloudflare:index/WorkerScriptObservabilityLogs:WorkerScriptObservabilityLogs": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where logs will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "invocationLogs": {
                    "type": "boolean",
                    "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether log persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "invocationLogs"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "invocationLogs",
                        "persist"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptObservabilityTraces:WorkerScriptObservabilityTraces": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where traces will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether traces are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether trace persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "persist"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptPlacement:WorkerScriptPlacement": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host and port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "lastAnalyzedAt": {
                    "type": "string",
                    "description": "The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"smart\", \"targeted\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region for targeted placement in format 'provider:region'.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptPlacementTarget:WorkerScriptPlacementTarget"
                    },
                    "description": "Array of placement targets (currently limited to single target).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "host",
                        "hostname",
                        "lastAnalyzedAt",
                        "region",
                        "status",
                        "targets"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptPlacementTarget:WorkerScriptPlacementTarget": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host:port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region in format 'provider:region'.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "host",
                        "hostname",
                        "region"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerScriptTailConsumer:WorkerScriptTailConsumer": {
            "properties": {
                "environment": {
                    "type": "string",
                    "description": "Optional environment if the Worker utilizes one.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "Optional dispatch namespace the script belongs to.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker that is to be the consumer.\n"
                }
            },
            "type": "object",
            "required": [
                "service"
            ]
        },
        "cloudflare:index/WorkerSubdomain:WorkerSubdomain": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the *.workers.dev subdomain is enabled for the Worker.\n"
                },
                "previewsEnabled": {
                    "type": "boolean",
                    "description": "Whether [preview URLs](https://developers.cloudflare.com/workers/configuration/previews/) are enabled for the Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "previewsEnabled"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerTailConsumer:WorkerTailConsumer": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the consumer Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/WorkerVersionAnnotations:WorkerVersionAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the version. Truncated to 1000 bytes if longer.\n"
                },
                "workersTag": {
                    "type": "string",
                    "description": "User-provided identifier for the version. Maximum 100 bytes.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Operation that triggered the creation of the version.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "workersTriggeredBy"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerVersionAssets:WorkerVersionAssets": {
            "properties": {
                "assetManifestSha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the asset manifest of files to upload.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionAssetsConfig:WorkerVersionAssetsConfig",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "directory": {
                    "type": "string",
                    "description": "Path to the directory containing asset files to upload.\n"
                },
                "jwt": {
                    "type": "string",
                    "description": "Token provided upon successful upload of all files from a registered manifest.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "assetManifestSha256"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerVersionAssetsConfig:WorkerVersionAssetsConfig": {
            "properties": {
                "htmlHandling": {
                    "type": "string",
                    "description": "Determines the redirects and rewrites of requests for HTML content.\nAvailable values: \"auto-trailing-slash\", \"force-trailing-slash\", \"drop-trailing-slash\", \"none\".\n"
                },
                "notFoundHandling": {
                    "type": "string",
                    "description": "Determines the response when a request does not match a static asset, and there is no Worker script.\nAvailable values: \"none\", \"404-page\", \"single-page-application\".\n"
                },
                "runWorkerFirst": {
                    "$ref": "pulumi.json#/Any",
                    "description": "When a boolean true, requests will always invoke the Worker script. Otherwise, attempt to serve an asset matching the request, falling back to the Worker script. When a list of strings, contains path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionBinding:WorkerVersionBinding": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm).\n"
                },
                "allowedDestinationAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed destination addresses.\n"
                },
                "allowedSenderAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed sender addresses.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "ID of the Flagship app to bind to for feature flag evaluation.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "R2 bucket to bind to.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "Identifier of the certificate to bind to.\n"
                },
                "className": {
                    "type": "string",
                    "description": "The exported class name of the Durable Object.\n"
                },
                "databaseId": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "The name of the dataset to bind to.\n"
                },
                "destinationAddress": {
                    "type": "string",
                    "description": "Destination address for the email.\n"
                },
                "dispatchNamespace": {
                    "type": "string",
                    "description": "The dispatch namespace the Durable Object script belongs to.\n"
                },
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the target Worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The environment of the\u003cspan pulumi-lang-nodejs=\" scriptName \" pulumi-lang-dotnet=\" ScriptName \" pulumi-lang-go=\" scriptName \" pulumi-lang-python=\" script_name \" pulumi-lang-yaml=\" scriptName \" pulumi-lang-java=\" scriptName \"\u003e scriptName \u003c/span\u003eto bind to.\n"
                },
                "format": {
                    "type": "string",
                    "description": "Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format).\nAvailable values: \"raw\", \"pkcs8\", \"spki\", \"jwk\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "indexName": {
                    "type": "string",
                    "description": "Name of the Vectorize index to bind to.\n"
                },
                "instanceName": {
                    "type": "string",
                    "description": "The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance.\n"
                },
                "json": {
                    "type": "string",
                    "description": "JSON data to use.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket.\nAvailable values: \"eu\", \"fedramp\", \"fedramp-high\".\n"
                },
                "keyBase64": {
                    "type": "string",
                    "description": "Base64-encoded key data. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"raw\", \"pkcs8\", or \"spki\".\n",
                    "secret": true
                },
                "keyJwk": {
                    "type": "string",
                    "description": "Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"jwk\".\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "A JavaScript variable name for the binding.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The namespace the instance belongs to. Defaults to \"default\" if omitted. Customers who don't use namespaces can simply omit this field.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "Identifier of the network to bind to. Only \"cf1:network\" is currently supported. Mutually exclusive with tunnel_id.\n"
                },
                "oldName": {
                    "type": "string",
                    "description": "The old name of the inherited binding. If set, the binding will be renamed from \u003cspan pulumi-lang-nodejs=\"`oldName`\" pulumi-lang-dotnet=\"`OldName`\" pulumi-lang-go=\"`oldName`\" pulumi-lang-python=\"`old_name`\" pulumi-lang-yaml=\"`oldName`\" pulumi-lang-java=\"`oldName`\"\u003e`oldName`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in the new version. If not set, the binding will keep the same name between versions.\n"
                },
                "outbound": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionBindingOutbound:WorkerVersionBindingOutbound",
                    "description": "Outbound worker.\n"
                },
                "part": {
                    "type": "string",
                    "description": "The name of the file containing the data content. Only accepted for `service worker syntax` Workers.\n"
                },
                "pipeline": {
                    "type": "string",
                    "description": "Name of the Pipeline to bind to.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the Queue to bind to.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "The script where the Durable Object is defined, if it is external to this Worker.\n"
                },
                "secretName": {
                    "type": "string",
                    "description": "Name of the secret in the store.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker to bind to.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "Identifier of the VPC service to bind to.\n"
                },
                "simple": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionBindingSimple:WorkerVersionBindingSimple",
                    "description": "The rate limit configuration.\n"
                },
                "storeId": {
                    "type": "string",
                    "description": "ID of the store containing the secret.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text value to use.\n",
                    "secret": true
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The kind of resource that the binding provides.\nAvailable values: \"ai\", \"ai*search\", \"ai*search*namespace\", \"analytics*engine\", \"assets\", \"browser\", \"d1\", \"data*blob\", \"dispatch*namespace\", \"durable*object*namespace\", \"hyperdrive\", \"inherit\", \"images\", \"json\", \"kv*namespace\", \"media\", \"mtls*certificate\", \"plain*text\", \"pipelines\", \"queue\", \"ratelimit\", \"r2*bucket\", \"secret*text\", \"send*email\", \"service\", \"text*blob\", \"vectorize\", \"version*metadata\", \"secrets*store*secret\", \"flagship\", \"secret*key\", \"workflow\", \"wasm*module\", \"vpc*service\", \"vpc*network\".\n"
                },
                "usages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages).\n"
                },
                "versionId": {
                    "type": "string",
                    "description": "Identifier for the version to inherit the binding from, which can be the version ID or the literal \"latest\" to inherit from the latest version. Defaults to inheriting the binding from the latest version.\n"
                },
                "workflowName": {
                    "type": "string",
                    "description": "Name of the Workflow to bind to.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "className",
                        "databaseId",
                        "name",
                        "namespaceId",
                        "scriptName",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerVersionBindingOutbound:WorkerVersionBindingOutbound": {
            "properties": {
                "params": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionBindingOutboundParam:WorkerVersionBindingOutboundParam"
                    },
                    "description": "Pass information from the Dispatch Worker to the Outbound Worker through the parameters.\n"
                },
                "worker": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionBindingOutboundWorker:WorkerVersionBindingOutboundWorker",
                    "description": "Outbound worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionBindingOutboundParam:WorkerVersionBindingOutboundParam": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the parameter.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/WorkerVersionBindingOutboundWorker:WorkerVersionBindingOutboundWorker": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the outbound worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Environment of the outbound worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the outbound worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionBindingSimple:WorkerVersionBindingSimple": {
            "properties": {
                "limit": {
                    "type": "number",
                    "description": "The limit (requests per period).\n"
                },
                "period": {
                    "type": "integer",
                    "description": "The period in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "limit",
                "period"
            ]
        },
        "cloudflare:index/WorkerVersionContainer:WorkerVersionContainer": {
            "properties": {
                "className": {
                    "type": "string",
                    "description": "Select which Durable Object class should get this container attached.\n"
                }
            },
            "type": "object",
            "required": [
                "className"
            ]
        },
        "cloudflare:index/WorkerVersionLimits:WorkerVersionLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                },
                "subrequests": {
                    "type": "integer",
                    "description": "Subrequest limit per request.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionMigrations:WorkerVersionMigrations": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "newTag": {
                    "type": "string",
                    "description": "Tag to set as the latest migration tag.\n"
                },
                "oldTag": {
                    "type": "string",
                    "description": "Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionMigrationsRenamedClass:WorkerVersionMigrationsRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionMigrationsStep:WorkerVersionMigrationsStep"
                    },
                    "description": "Migrations to apply in order.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionMigrationsTransferredClass:WorkerVersionMigrationsTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionMigrationsRenamedClass:WorkerVersionMigrationsRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionMigrationsStep:WorkerVersionMigrationsStep": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionMigrationsStepRenamedClass:WorkerVersionMigrationsStepRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionMigrationsStepTransferredClass:WorkerVersionMigrationsStepTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionMigrationsStepRenamedClass:WorkerVersionMigrationsStepRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionMigrationsStepTransferredClass:WorkerVersionMigrationsStepTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionMigrationsTransferredClass:WorkerVersionMigrationsTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionModule:WorkerVersionModule": {
            "properties": {
                "contentBase64": {
                    "type": "string",
                    "description": "The base64-encoded module content.\n"
                },
                "contentFile": {
                    "type": "string",
                    "description": "The file path of the module content.\n"
                },
                "contentSha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the module content.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the module.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the module.\n"
                }
            },
            "type": "object",
            "required": [
                "contentType",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "contentSha256",
                        "contentType",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/WorkerVersionPlacement:WorkerVersionPlacement": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host and port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"smart\", \"targeted\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region for targeted placement in format 'provider:region'.\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionPlacementTarget:WorkerVersionPlacementTarget"
                    },
                    "description": "Array of placement targets (currently limited to single target).\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkerVersionPlacementTarget:WorkerVersionPlacementTarget": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host:port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region in format 'provider:region'.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersCronTriggerSchedule:WorkersCronTriggerSchedule": {
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "cron": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "cron"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "createdOn",
                        "cron",
                        "modifiedOn"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersDeploymentAnnotations:WorkersDeploymentAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the deployment. Truncated to 1000 bytes if longer.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Operation that triggered the creation of the deployment.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "workersTriggeredBy"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersDeploymentVersion:WorkersDeploymentVersion": {
            "properties": {
                "percentage": {
                    "type": "number"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "percentage",
                "versionId"
            ]
        },
        "cloudflare:index/WorkersScriptAnnotations:WorkersScriptAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the version. Truncated to 1000 bytes if longer.\n"
                },
                "workersTag": {
                    "type": "string",
                    "description": "User-provided identifier for the version. Maximum 100 bytes.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Indicates the trigger that created this version. Server-set value.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "workersTriggeredBy"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptAssets:WorkersScriptAssets": {
            "properties": {
                "assetManifestSha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the asset manifest of files to upload.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptAssetsConfig:WorkersScriptAssetsConfig",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "directory": {
                    "type": "string",
                    "description": "Path to the directory containing asset files to upload.\n"
                },
                "jwt": {
                    "type": "string",
                    "description": "Token provided upon successful upload of all files from a registered manifest.\n",
                    "secret": true
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "assetManifestSha256"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptAssetsConfig:WorkersScriptAssetsConfig": {
            "properties": {
                "headers": {
                    "type": "string",
                    "description": "The contents of a _headers file (used to attach custom headers on asset responses).\n"
                },
                "htmlHandling": {
                    "type": "string",
                    "description": "Determines the redirects and rewrites of requests for HTML content.\nAvailable values: \"auto-trailing-slash\", \"force-trailing-slash\", \"drop-trailing-slash\", \"none\".\n"
                },
                "notFoundHandling": {
                    "type": "string",
                    "description": "Determines the response when a request does not match a static asset, and there is no Worker script.\nAvailable values: \"none\", \"404-page\", \"single-page-application\".\n"
                },
                "redirects": {
                    "type": "string",
                    "description": "The contents of a _redirects file (used to apply redirects or proxy paths ahead of asset serving).\n"
                },
                "runWorkerFirst": {
                    "$ref": "pulumi.json#/Any",
                    "description": "When a boolean true, requests will always invoke the Worker script. Otherwise, attempt to serve an asset matching the request, falling back to the Worker script. When a list of strings, contains path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules.\n"
                },
                "serveDirectly": {
                    "type": "boolean",
                    "description": "When true and the incoming request matches an asset, that will be served instead of invoking the Worker script. When false, requests will always invoke the Worker script.\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptBinding:WorkersScriptBinding": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm).\n"
                },
                "allowedDestinationAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed destination addresses.\n"
                },
                "allowedSenderAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed sender addresses.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "ID of the Flagship app to bind to for feature flag evaluation.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "R2 bucket to bind to.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "Identifier of the certificate to bind to.\n"
                },
                "className": {
                    "type": "string",
                    "description": "The exported class name of the Durable Object.\n"
                },
                "databaseId": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "The name of the dataset to bind to.\n"
                },
                "destinationAddress": {
                    "type": "string",
                    "description": "Destination address for the email.\n"
                },
                "dispatchNamespace": {
                    "type": "string",
                    "description": "The dispatch namespace the Durable Object script belongs to.\n"
                },
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the target Worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The environment of the\u003cspan pulumi-lang-nodejs=\" scriptName \" pulumi-lang-dotnet=\" ScriptName \" pulumi-lang-go=\" scriptName \" pulumi-lang-python=\" script_name \" pulumi-lang-yaml=\" scriptName \" pulumi-lang-java=\" scriptName \"\u003e scriptName \u003c/span\u003eto bind to.\n"
                },
                "format": {
                    "type": "string",
                    "description": "Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format).\nAvailable values: \"raw\", \"pkcs8\", \"spki\", \"jwk\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "indexName": {
                    "type": "string",
                    "description": "Name of the Vectorize index to bind to.\n"
                },
                "instanceName": {
                    "type": "string",
                    "description": "The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance.\n"
                },
                "json": {
                    "type": "string",
                    "description": "JSON data to use.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket.\nAvailable values: \"eu\", \"fedramp\", \"fedramp-high\".\n"
                },
                "keyBase64": {
                    "type": "string",
                    "description": "Base64-encoded key data. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"raw\", \"pkcs8\", or \"spki\".\n",
                    "secret": true
                },
                "keyJwk": {
                    "type": "string",
                    "description": "Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"jwk\".\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "A JavaScript variable name for the binding.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The namespace the instance belongs to. Defaults to \"default\" if omitted. Customers who don't use namespaces can simply omit this field.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "Identifier of the network to bind to. Only \"cf1:network\" is currently supported. Mutually exclusive with tunnel_id.\n"
                },
                "oldName": {
                    "type": "string",
                    "description": "The old name of the inherited binding. If set, the binding will be renamed from \u003cspan pulumi-lang-nodejs=\"`oldName`\" pulumi-lang-dotnet=\"`OldName`\" pulumi-lang-go=\"`oldName`\" pulumi-lang-python=\"`old_name`\" pulumi-lang-yaml=\"`oldName`\" pulumi-lang-java=\"`oldName`\"\u003e`oldName`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in the new version. If not set, the binding will keep the same name between versions.\n"
                },
                "outbound": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptBindingOutbound:WorkersScriptBindingOutbound",
                    "description": "Outbound worker.\n"
                },
                "part": {
                    "type": "string",
                    "description": "The name of the file containing the data content. Only accepted for `service worker syntax` Workers.\n"
                },
                "pipeline": {
                    "type": "string",
                    "description": "Name of the Pipeline to bind to.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the Queue to bind to.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "The script where the Durable Object is defined, if it is external to this Worker.\n"
                },
                "secretName": {
                    "type": "string",
                    "description": "Name of the secret in the store.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker to bind to.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "Identifier of the VPC service to bind to.\n"
                },
                "simple": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptBindingSimple:WorkersScriptBindingSimple",
                    "description": "A simple rate limit.\n"
                },
                "storeId": {
                    "type": "string",
                    "description": "ID of the store containing the secret.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text value to use.\n",
                    "secret": true
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The kind of resource that the binding provides.\nAvailable values: \"ai\", \"ai*search\", \"ai*search*namespace\", \"analytics*engine\", \"assets\", \"browser\", \"d1\", \"data*blob\", \"dispatch*namespace\", \"durable*object*namespace\", \"hyperdrive\", \"inherit\", \"images\", \"json\", \"kv*namespace\", \"media\", \"mtls*certificate\", \"plain*text\", \"pipelines\", \"queue\", \"ratelimit\", \"r2*bucket\", \"secret*text\", \"send*email\", \"service\", \"text*blob\", \"vectorize\", \"version*metadata\", \"secrets*store*secret\", \"secret*key\", \"workflow\", \"wasm*module\", \"vpc*service\", \"vpc*network\".\n"
                },
                "usages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages).\n"
                },
                "versionId": {
                    "type": "string",
                    "description": "Identifier for the version to inherit the binding from, which can be the version ID or the literal \"latest\" to inherit from the latest version. Defaults to inheriting the binding from the latest version.\n"
                },
                "workflowName": {
                    "type": "string",
                    "description": "Name of the Workflow to bind to.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "className",
                        "name",
                        "namespaceId",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptBindingOutbound:WorkersScriptBindingOutbound": {
            "properties": {
                "params": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Pass information from the Dispatch Worker to the Outbound Worker through the parameters.\n"
                },
                "worker": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptBindingOutboundWorker:WorkersScriptBindingOutboundWorker",
                    "description": "Outbound worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptBindingOutboundWorker:WorkersScriptBindingOutboundWorker": {
            "properties": {
                "environment": {
                    "type": "string",
                    "description": "Environment of the outbound worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the outbound worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptBindingSimple:WorkersScriptBindingSimple": {
            "properties": {
                "limit": {
                    "type": "number",
                    "description": "The rate limit value.\n"
                },
                "period": {
                    "type": "integer",
                    "description": "The rate limit period in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "limit",
                "period"
            ]
        },
        "cloudflare:index/WorkersScriptLimits:WorkersScriptLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "The amount of CPU time this Worker can use in milliseconds.\n"
                },
                "subrequests": {
                    "type": "integer",
                    "description": "The number of subrequests this Worker can make per request.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptMigrations:WorkersScriptMigrations": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "newTag": {
                    "type": "string",
                    "description": "Tag to set as the latest migration tag.\n"
                },
                "oldTag": {
                    "type": "string",
                    "description": "Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptMigrationsRenamedClass:WorkersScriptMigrationsRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptMigrationsStep:WorkersScriptMigrationsStep"
                    },
                    "description": "Migrations to apply in order.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptMigrationsTransferredClass:WorkersScriptMigrationsTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptMigrationsRenamedClass:WorkersScriptMigrationsRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptMigrationsStep:WorkersScriptMigrationsStep": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptMigrationsStepRenamedClass:WorkersScriptMigrationsStepRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptMigrationsStepTransferredClass:WorkersScriptMigrationsStepTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptMigrationsStepRenamedClass:WorkersScriptMigrationsStepRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptMigrationsStepTransferredClass:WorkersScriptMigrationsStepTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptMigrationsTransferredClass:WorkersScriptMigrationsTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/WorkersScriptNamedHandler:WorkersScriptNamedHandler": {
            "properties": {
                "handlers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The names of handlers exported as part of the named export.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the export.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "handlers",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptObservability:WorkersScriptObservability": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether observability is enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptObservabilityLogs:WorkersScriptObservabilityLogs",
                    "description": "Log settings for the Worker.\n"
                },
                "traces": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptObservabilityTraces:WorkersScriptObservabilityTraces",
                    "description": "Trace settings for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ]
        },
        "cloudflare:index/WorkersScriptObservabilityLogs:WorkersScriptObservabilityLogs": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where logs will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "invocationLogs": {
                    "type": "boolean",
                    "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether log persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "invocationLogs"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "invocationLogs",
                        "persist"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptObservabilityTraces:WorkersScriptObservabilityTraces": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where traces will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether traces are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether trace persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "persist"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptPlacement:WorkersScriptPlacement": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host and port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "lastAnalyzedAt": {
                    "type": "string",
                    "description": "The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"smart\", \"targeted\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region for targeted placement in format 'provider:region'.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptPlacementTarget:WorkersScriptPlacementTarget"
                    },
                    "description": "Array of placement targets (currently limited to single target).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "host",
                        "hostname",
                        "lastAnalyzedAt",
                        "region",
                        "status",
                        "targets"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptPlacementTarget:WorkersScriptPlacementTarget": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host:port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region in format 'provider:region'.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "host",
                        "hostname",
                        "region"
                    ]
                }
            }
        },
        "cloudflare:index/WorkersScriptTailConsumer:WorkersScriptTailConsumer": {
            "properties": {
                "environment": {
                    "type": "string",
                    "description": "Optional environment if the Worker utilizes one.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "Optional dispatch namespace the script belongs to.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker that is to be the consumer.\n"
                }
            },
            "type": "object",
            "required": [
                "service"
            ]
        },
        "cloudflare:index/WorkflowInstances:WorkflowInstances": {
            "properties": {
                "complete": {
                    "type": "number"
                },
                "errored": {
                    "type": "number"
                },
                "paused": {
                    "type": "number"
                },
                "queued": {
                    "type": "number"
                },
                "running": {
                    "type": "number"
                },
                "terminated": {
                    "type": "number"
                },
                "waiting": {
                    "type": "number"
                },
                "waitingForPause": {
                    "type": "number"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "complete",
                        "errored",
                        "paused",
                        "queued",
                        "running",
                        "terminated",
                        "waiting",
                        "waitingForPause"
                    ]
                }
            }
        },
        "cloudflare:index/WorkflowLimits:WorkflowLimits": {
            "properties": {
                "steps": {
                    "type": "integer"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServer:ZeroTrustAccessAiControlsMcpPortalServer": {
            "properties": {
                "defaultDisabled": {
                    "type": "boolean"
                },
                "onBehalf": {
                    "type": "boolean"
                },
                "serverId": {
                    "type": "string",
                    "description": "server id\n"
                },
                "updatedPrompts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt:ZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt"
                    }
                },
                "updatedTools": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServerUpdatedTool:ZeroTrustAccessAiControlsMcpPortalServerUpdatedTool"
                    }
                }
            },
            "type": "object",
            "required": [
                "serverId"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "defaultDisabled",
                        "onBehalf",
                        "serverId"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt:ZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServerUpdatedTool:ZeroTrustAccessAiControlsMcpPortalServerUpdatedTool": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedPrompt:ZeroTrustAccessAiControlsMcpServerUpdatedPrompt": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedTool:ZeroTrustAccessAiControlsMcpServerUpdatedTool": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationCorsHeaders:ZeroTrustAccessApplicationCorsHeaders": {
            "properties": {
                "allowAllHeaders": {
                    "type": "boolean",
                    "description": "Allows all HTTP request headers.\n"
                },
                "allowAllMethods": {
                    "type": "boolean",
                    "description": "Allows all HTTP request methods.\n"
                },
                "allowAllOrigins": {
                    "type": "boolean",
                    "description": "Allows all origins.\n"
                },
                "allowCredentials": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, includes credentials (cookies, authorization headers, or TLS client certificates) with requests.\n"
                },
                "allowedHeaders": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request headers.\n"
                },
                "allowedMethods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request methods.\n"
                },
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed origins.\n"
                },
                "maxAge": {
                    "type": "number",
                    "description": "The maximum number of seconds the results of a preflight request can be cached.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationDestination:ZeroTrustAccessApplicationDestination": {
            "properties": {
                "cidr": {
                    "type": "string",
                    "description": "The CIDR range of the destination. Single IPs will be computed as /32.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the destination. Matches a valid SNI served by an HTTPS origin.\n"
                },
                "l4Protocol": {
                    "type": "string",
                    "description": "The L4 protocol of the destination. When omitted, both UDP and TCP traffic will match.\nAvailable values: \"tcp\", \"udp\".\n"
                },
                "mcpServerId": {
                    "type": "string",
                    "description": "A MCP server id configured in ai-controls. Access will secure the MCP server if accessed through a MCP portal.\n"
                },
                "portRange": {
                    "type": "string",
                    "description": "The port range of the destination. Can be a single port or a range of ports. When omitted, all ports will match.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"public\", \"private\".\n"
                },
                "uri": {
                    "type": "string",
                    "description": "The URI of the destination. Public destinations' URIs can include a domain and path with [wildcards](https://developers.cloudflare.com/cloudflare-one/policies/access/app-paths/).\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "The VNET ID to match the destination. When omitted, all VNETs will match.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessApplicationFooterLink:ZeroTrustAccessApplicationFooterLink": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The hypertext in the footer link.\n"
                },
                "url": {
                    "type": "string",
                    "description": "the hyperlink in the footer link.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "url"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationLandingPageDesign:ZeroTrustAccessApplicationLandingPageDesign": {
            "properties": {
                "buttonColor": {
                    "type": "string",
                    "description": "The background color of the log in button on the landing page.\n"
                },
                "buttonTextColor": {
                    "type": "string",
                    "description": "The color of the text in the log in button on the landing page.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "The URL of the image shown on the landing page.\n"
                },
                "message": {
                    "type": "string",
                    "description": "The message shown on the landing page.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title shown on the landing page.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "title"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessApplicationMfaConfig:ZeroTrustAccessApplicationMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \u003cspan pulumi-lang-nodejs=\"\"securityKey\"\" pulumi-lang-dotnet=\"\"SecurityKey\"\" pulumi-lang-go=\"\"securityKey\"\" pulumi-lang-python=\"\"security_key\"\" pulumi-lang-yaml=\"\"securityKey\"\" pulumi-lang-java=\"\"securityKey\"\"\u003e\"securityKey\"\u003c/span\u003e.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this application.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationOauthConfiguration:ZeroTrustAccessApplicationOauthConfiguration": {
            "properties": {
                "dynamicClientRegistration": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationOauthConfigurationDynamicClientRegistration:ZeroTrustAccessApplicationOauthConfigurationDynamicClientRegistration",
                    "description": "Settings for OAuth dynamic client registration.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the OAuth configuration is enabled for this application. When set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, Access will not handle OAuth for this application. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e if omitted.\n"
                },
                "grant": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationOauthConfigurationGrant:ZeroTrustAccessApplicationOauthConfigurationGrant",
                    "description": "Settings for OAuth grant behavior.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationOauthConfigurationDynamicClientRegistration:ZeroTrustAccessApplicationOauthConfigurationDynamicClientRegistration": {
            "properties": {
                "allowAnyOnLocalhost": {
                    "type": "boolean",
                    "description": "Allows any client with redirect URIs on localhost.\n"
                },
                "allowAnyOnLoopback": {
                    "type": "boolean",
                    "description": "Allows any client with redirect URIs on 127.0.0.1.\n"
                },
                "allowedUris": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The URIs that are allowed as redirect URIs for dynamically registered clients. Must use the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Paths may end in `/*` to match all sub-paths.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether dynamic client registration is enabled.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationOauthConfigurationGrant:ZeroTrustAccessApplicationOauthConfigurationGrant": {
            "properties": {
                "accessTokenLifetime": {
                    "type": "string",
                    "description": "The lifetime of the access token. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are ns, us (or µs), ms, s, m, h.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The duration of the OAuth session. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are ns, us (or µs), ms, s, m, h.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicy:ZeroTrustAccessApplicationPolicy": {
            "properties": {
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyConnectionRules:ZeroTrustAccessApplicationPolicyConnectionRules",
                    "description": "The rules that define how users may connect to the targets secured by your application.\n"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExclude:ZeroTrustAccessApplicationPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The UUID of the policy\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyInclude:ZeroTrustAccessApplicationPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyMfaConfig:ZeroTrustAccessApplicationPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for this policy. For infrastructure applications only \u003cspan pulumi-lang-nodejs=\"`sshPivKey`\" pulumi-lang-dotnet=\"`SshPivKey`\" pulumi-lang-go=\"`sshPivKey`\" pulumi-lang-python=\"`ssh_piv_key`\" pulumi-lang-yaml=\"`sshPivKey`\" pulumi-lang-java=\"`sshPivKey`\"\u003e`sshPivKey`\u003c/span\u003e is a supported authenticator; for other application types use \u003cspan pulumi-lang-nodejs=\"`totp`\" pulumi-lang-dotnet=\"`Totp`\" pulumi-lang-go=\"`totp`\" pulumi-lang-python=\"`totp`\" pulumi-lang-yaml=\"`totp`\" pulumi-lang-java=\"`totp`\"\u003e`totp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`biometrics`\" pulumi-lang-dotnet=\"`Biometrics`\" pulumi-lang-go=\"`biometrics`\" pulumi-lang-python=\"`biometrics`\" pulumi-lang-yaml=\"`biometrics`\" pulumi-lang-java=\"`biometrics`\"\u003e`biometrics`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`securityKey`\" pulumi-lang-dotnet=\"`SecurityKey`\" pulumi-lang-go=\"`securityKey`\" pulumi-lang-python=\"`security_key`\" pulumi-lang-yaml=\"`securityKey`\" pulumi-lang-java=\"`securityKey`\"\u003e`securityKey`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The order of execution for this policy. Must be unique for each policy within an app.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequire:ZeroTrustAccessApplicationPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "precedence"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyConnectionRules:ZeroTrustAccessApplicationPolicyConnectionRules": {
            "properties": {
                "rdp": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyConnectionRulesRdp:ZeroTrustAccessApplicationPolicyConnectionRulesRdp",
                    "description": "The RDP-specific rules that define clipboard behavior for RDP connections.\n"
                },
                "ssh": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyConnectionRulesSsh:ZeroTrustAccessApplicationPolicyConnectionRulesSsh",
                    "description": "The SSH-specific rules that define how users may connect to the targets secured by your application.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyConnectionRulesRdp:ZeroTrustAccessApplicationPolicyConnectionRulesRdp": {
            "properties": {
                "allowedClipboardLocalToRemoteFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from local machine to remote RDP session.\n"
                },
                "allowedClipboardRemoteToLocalFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from remote RDP session to local machine.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyConnectionRulesSsh:ZeroTrustAccessApplicationPolicyConnectionRulesSsh": {
            "properties": {
                "allowEmailAlias": {
                    "type": "boolean",
                    "description": "Enables using Identity Provider email alias as SSH username.\n"
                },
                "usernames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains the Unix usernames that may be used when connecting over SSH.\n"
                }
            },
            "type": "object",
            "required": [
                "usernames"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExclude:ZeroTrustAccessApplicationPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken:ZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAuthContext:ZeroTrustAccessApplicationPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAuthMethod:ZeroTrustAccessApplicationPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAzureAd:ZeroTrustAccessApplicationPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeCertificate:ZeroTrustAccessApplicationPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeCommonName:ZeroTrustAccessApplicationPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeDevicePosture:ZeroTrustAccessApplicationPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEmail:ZeroTrustAccessApplicationPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEmailDomain:ZeroTrustAccessApplicationPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEmailList:ZeroTrustAccessApplicationPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEveryone:ZeroTrustAccessApplicationPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeExternalEvaluation:ZeroTrustAccessApplicationPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGeo:ZeroTrustAccessApplicationPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGithubOrganization:ZeroTrustAccessApplicationPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGroup:ZeroTrustAccessApplicationPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGsuite:ZeroTrustAccessApplicationPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeIp:ZeroTrustAccessApplicationPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeIpList:ZeroTrustAccessApplicationPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeLinkedAppToken:ZeroTrustAccessApplicationPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeLoginMethod:ZeroTrustAccessApplicationPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeOidc:ZeroTrustAccessApplicationPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeOkta:ZeroTrustAccessApplicationPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeSaml:ZeroTrustAccessApplicationPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeServiceToken:ZeroTrustAccessApplicationPolicyExcludeServiceToken"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken:ZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAuthContext:ZeroTrustAccessApplicationPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAuthMethod:ZeroTrustAccessApplicationPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeAzureAd:ZeroTrustAccessApplicationPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeCertificate:ZeroTrustAccessApplicationPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeCommonName:ZeroTrustAccessApplicationPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeDevicePosture:ZeroTrustAccessApplicationPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEmail:ZeroTrustAccessApplicationPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEmailDomain:ZeroTrustAccessApplicationPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEmailList:ZeroTrustAccessApplicationPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeEveryone:ZeroTrustAccessApplicationPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeExternalEvaluation:ZeroTrustAccessApplicationPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGeo:ZeroTrustAccessApplicationPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGithubOrganization:ZeroTrustAccessApplicationPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGroup:ZeroTrustAccessApplicationPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeGsuite:ZeroTrustAccessApplicationPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeIp:ZeroTrustAccessApplicationPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeIpList:ZeroTrustAccessApplicationPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeLinkedAppToken:ZeroTrustAccessApplicationPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeLoginMethod:ZeroTrustAccessApplicationPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeOidc:ZeroTrustAccessApplicationPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeOkta:ZeroTrustAccessApplicationPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeSaml:ZeroTrustAccessApplicationPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyExcludeServiceToken:ZeroTrustAccessApplicationPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyInclude:ZeroTrustAccessApplicationPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken:ZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAuthContext:ZeroTrustAccessApplicationPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAuthMethod:ZeroTrustAccessApplicationPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAzureAd:ZeroTrustAccessApplicationPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeCertificate:ZeroTrustAccessApplicationPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeCommonName:ZeroTrustAccessApplicationPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeDevicePosture:ZeroTrustAccessApplicationPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEmail:ZeroTrustAccessApplicationPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEmailDomain:ZeroTrustAccessApplicationPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEmailList:ZeroTrustAccessApplicationPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEveryone:ZeroTrustAccessApplicationPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeExternalEvaluation:ZeroTrustAccessApplicationPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGeo:ZeroTrustAccessApplicationPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGithubOrganization:ZeroTrustAccessApplicationPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGroup:ZeroTrustAccessApplicationPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGsuite:ZeroTrustAccessApplicationPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeIp:ZeroTrustAccessApplicationPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeIpList:ZeroTrustAccessApplicationPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeLinkedAppToken:ZeroTrustAccessApplicationPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeLoginMethod:ZeroTrustAccessApplicationPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeOidc:ZeroTrustAccessApplicationPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeOkta:ZeroTrustAccessApplicationPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeSaml:ZeroTrustAccessApplicationPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeServiceToken:ZeroTrustAccessApplicationPolicyIncludeServiceToken"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken:ZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAuthContext:ZeroTrustAccessApplicationPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAuthMethod:ZeroTrustAccessApplicationPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeAzureAd:ZeroTrustAccessApplicationPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeCertificate:ZeroTrustAccessApplicationPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeCommonName:ZeroTrustAccessApplicationPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeDevicePosture:ZeroTrustAccessApplicationPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEmail:ZeroTrustAccessApplicationPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEmailDomain:ZeroTrustAccessApplicationPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEmailList:ZeroTrustAccessApplicationPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeEveryone:ZeroTrustAccessApplicationPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeExternalEvaluation:ZeroTrustAccessApplicationPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGeo:ZeroTrustAccessApplicationPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGithubOrganization:ZeroTrustAccessApplicationPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGroup:ZeroTrustAccessApplicationPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeGsuite:ZeroTrustAccessApplicationPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeIp:ZeroTrustAccessApplicationPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeIpList:ZeroTrustAccessApplicationPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeLinkedAppToken:ZeroTrustAccessApplicationPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeLoginMethod:ZeroTrustAccessApplicationPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeOidc:ZeroTrustAccessApplicationPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeOkta:ZeroTrustAccessApplicationPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeSaml:ZeroTrustAccessApplicationPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyIncludeServiceToken:ZeroTrustAccessApplicationPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyMfaConfig:ZeroTrustAccessApplicationPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \"security*key\", \"ssh*piv_key\".\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequire:ZeroTrustAccessApplicationPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken:ZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAuthContext:ZeroTrustAccessApplicationPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAuthMethod:ZeroTrustAccessApplicationPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAzureAd:ZeroTrustAccessApplicationPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireCertificate:ZeroTrustAccessApplicationPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireCommonName:ZeroTrustAccessApplicationPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireDevicePosture:ZeroTrustAccessApplicationPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEmail:ZeroTrustAccessApplicationPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEmailDomain:ZeroTrustAccessApplicationPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEmailList:ZeroTrustAccessApplicationPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEveryone:ZeroTrustAccessApplicationPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireExternalEvaluation:ZeroTrustAccessApplicationPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGeo:ZeroTrustAccessApplicationPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGithubOrganization:ZeroTrustAccessApplicationPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGroup:ZeroTrustAccessApplicationPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGsuite:ZeroTrustAccessApplicationPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireIp:ZeroTrustAccessApplicationPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireIpList:ZeroTrustAccessApplicationPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireLinkedAppToken:ZeroTrustAccessApplicationPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireLoginMethod:ZeroTrustAccessApplicationPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireOidc:ZeroTrustAccessApplicationPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireOkta:ZeroTrustAccessApplicationPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireSaml:ZeroTrustAccessApplicationPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicyRequireServiceToken:ZeroTrustAccessApplicationPolicyRequireServiceToken"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken:ZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAuthContext:ZeroTrustAccessApplicationPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAuthMethod:ZeroTrustAccessApplicationPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireAzureAd:ZeroTrustAccessApplicationPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireCertificate:ZeroTrustAccessApplicationPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireCommonName:ZeroTrustAccessApplicationPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireDevicePosture:ZeroTrustAccessApplicationPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEmail:ZeroTrustAccessApplicationPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEmailDomain:ZeroTrustAccessApplicationPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEmailList:ZeroTrustAccessApplicationPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireEveryone:ZeroTrustAccessApplicationPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireExternalEvaluation:ZeroTrustAccessApplicationPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGeo:ZeroTrustAccessApplicationPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGithubOrganization:ZeroTrustAccessApplicationPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGroup:ZeroTrustAccessApplicationPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireGsuite:ZeroTrustAccessApplicationPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireIp:ZeroTrustAccessApplicationPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireIpList:ZeroTrustAccessApplicationPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireLinkedAppToken:ZeroTrustAccessApplicationPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireLoginMethod:ZeroTrustAccessApplicationPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireOidc:ZeroTrustAccessApplicationPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireOkta:ZeroTrustAccessApplicationPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireSaml:ZeroTrustAccessApplicationPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationPolicyRequireServiceToken:ZeroTrustAccessApplicationPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasApp:ZeroTrustAccessApplicationSaasApp": {
            "properties": {
                "accessTokenLifetime": {
                    "type": "string",
                    "description": "The lifetime of the OIDC Access Token after creation. Valid units are m,h. Must be greater than or equal to 1m and less than or equal to 24h.\n"
                },
                "allowPkceWithoutClientSecret": {
                    "type": "boolean",
                    "description": "If client secret should be required on the token endpoint when authorization*code*with_pkce grant is used.\n"
                },
                "appLauncherUrl": {
                    "type": "string",
                    "description": "The URL where this applications tile redirects users\n"
                },
                "authType": {
                    "type": "string",
                    "description": "Optional identifier indicating the authentication protocol used for the saas app. Required for OIDC. Default if unset is \"saml\"\nAvailable values: \"saml\", \"oidc\".\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The application client id\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The application client secret, only returned on POST request.\n",
                    "secret": true
                },
                "consumerServiceUrl": {
                    "type": "string",
                    "description": "The service provider's endpoint that is responsible for receiving and parsing a SAML assertion.\n"
                },
                "customAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomAttribute:ZeroTrustAccessApplicationSaasAppCustomAttribute"
                    }
                },
                "customClaims": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomClaim:ZeroTrustAccessApplicationSaasAppCustomClaim"
                    }
                },
                "defaultRelayState": {
                    "type": "string",
                    "description": "The URL that the user will be redirected to after a successful login for IDP initiated logins.\n"
                },
                "grantTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The OIDC flows supported by this application\n"
                },
                "groupFilterRegex": {
                    "type": "string",
                    "description": "A regex to filter Cloudflare groups returned in ID token and userinfo endpoint\n"
                },
                "hybridAndImplicitOptions": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions:ZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions"
                },
                "idpEntityId": {
                    "type": "string",
                    "description": "The unique identifier for your SaaS application.\n"
                },
                "nameIdFormat": {
                    "type": "string",
                    "description": "The format of the name identifier sent to the SaaS application.\nAvailable values: \"id\", \"email\".\n"
                },
                "nameIdTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into a NameID value for its SAML assertion. This expression should evaluate to a singular string. The output of this expression can override the \u003cspan pulumi-lang-nodejs=\"`nameIdFormat`\" pulumi-lang-dotnet=\"`NameIdFormat`\" pulumi-lang-go=\"`nameIdFormat`\" pulumi-lang-python=\"`name_id_format`\" pulumi-lang-yaml=\"`nameIdFormat`\" pulumi-lang-java=\"`nameIdFormat`\"\u003e`nameIdFormat`\u003c/span\u003e setting.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The Access public certificate that will be used to verify your identity.\n"
                },
                "redirectUris": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The permitted URL's for Cloudflare to return Authorization codes and Access/ID tokens\n"
                },
                "refreshTokenOptions": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppRefreshTokenOptions:ZeroTrustAccessApplicationSaasAppRefreshTokenOptions"
                },
                "samlAttributeTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into attribute assertions in the SAML response. The expression can transform id, email, name, and groups values. It can also transform fields listed in the saml*attributes or oidc*fields of the identity provider used to authenticate. The output of this expression must be a JSON object.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Define the user information shared with access, \u003cspan pulumi-lang-nodejs=\"\"offlineAccess\"\" pulumi-lang-dotnet=\"\"OfflineAccess\"\" pulumi-lang-go=\"\"offlineAccess\"\" pulumi-lang-python=\"\"offline_access\"\" pulumi-lang-yaml=\"\"offlineAccess\"\" pulumi-lang-java=\"\"offlineAccess\"\"\u003e\"offlineAccess\"\u003c/span\u003e scope will be automatically enabled if refresh tokens are enabled\n"
                },
                "spEntityId": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\n"
                },
                "ssoEndpoint": {
                    "type": "string",
                    "description": "The endpoint where your SaaS application will send login requests.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "accessTokenLifetime",
                        "authType",
                        "clientId",
                        "clientSecret",
                        "idpEntityId",
                        "nameIdFormat",
                        "publicKey",
                        "ssoEndpoint"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomAttribute:ZeroTrustAccessApplicationSaasAppCustomAttribute": {
            "properties": {
                "friendlyName": {
                    "type": "string",
                    "description": "The SAML FriendlyName of the attribute.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the attribute.\n"
                },
                "nameFormat": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\nAvailable values: \"urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:basic\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:uri\".\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the attribute is required when building a SAML assertion.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomAttributeSource:ZeroTrustAccessApplicationSaasAppCustomAttributeSource"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomAttributeSource:ZeroTrustAccessApplicationSaasAppCustomAttributeSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP attribute.\n"
                },
                "nameByIdps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp:ZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp"
                    },
                    "description": "A mapping from IdP ID to attribute name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp:ZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp": {
            "properties": {
                "idpId": {
                    "type": "string",
                    "description": "The UID of the IdP.\n"
                },
                "sourceName": {
                    "type": "string",
                    "description": "The name of the IdP provided attribute.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomClaim:ZeroTrustAccessApplicationSaasAppCustomClaim": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the claim.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the claim is required when building an OIDC token.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of the claim.\nAvailable values: \"groups\", \"profile\", \"email\", \"openid\".\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomClaimSource:ZeroTrustAccessApplicationSaasAppCustomClaimSource"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppCustomClaimSource:ZeroTrustAccessApplicationSaasAppCustomClaimSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP claim.\n"
                },
                "nameByIdp": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A mapping from IdP ID to claim name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions:ZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions": {
            "properties": {
                "returnAccessTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an Access Token should be returned from the OIDC Authorization endpoint\n"
                },
                "returnIdTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an ID Token should be returned from the OIDC Authorization endpoint\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationSaasAppRefreshTokenOptions:ZeroTrustAccessApplicationSaasAppRefreshTokenOptions": {
            "properties": {
                "lifetime": {
                    "type": "string",
                    "description": "How long a refresh token will be valid for after creation. Valid units are m,h,d. Must be longer than 1m.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationScimConfig:ZeroTrustAccessApplicationScimConfig": {
            "properties": {
                "authentication": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationScimConfigAuthentication:ZeroTrustAccessApplicationScimConfigAuthentication",
                    "description": "Attributes for configuring HTTP Basic authentication scheme for SCIM provisioning to an application.\n"
                },
                "deactivateOnDelete": {
                    "type": "boolean",
                    "description": "If false, propagates DELETE requests to the target application for SCIM resources. If true, sets 'active' to false on the SCIM resource. Note: Some targets do not support DELETE operations.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether SCIM provisioning is turned on for this application.\n"
                },
                "idpUid": {
                    "type": "string",
                    "description": "The UID of the IdP to use as the source for SCIM resources to provision to this application.\n"
                },
                "mappings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationScimConfigMapping:ZeroTrustAccessApplicationScimConfigMapping"
                    },
                    "description": "A list of mappings to apply to SCIM resources before provisioning them in this application. These can transform or filter the resources to be provisioned.\n"
                },
                "remoteUri": {
                    "type": "string",
                    "description": "The base URI for the application's SCIM-compatible API.\n"
                }
            },
            "type": "object",
            "required": [
                "idpUid",
                "remoteUri"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationScimConfigAuthentication:ZeroTrustAccessApplicationScimConfigAuthentication": {
            "properties": {
                "authorizationUrl": {
                    "type": "string",
                    "description": "URL used to generate the auth code used during token generation.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Client ID used to authenticate when generating a token for authenticating with the remote SCIM service.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Secret used to authenticate when generating a token for authenticating with the remove SCIM service.\n",
                    "secret": true
                },
                "password": {
                    "type": "string",
                    "description": "Password used to authenticate with the remote SCIM service.\n",
                    "secret": true
                },
                "scheme": {
                    "type": "string",
                    "description": "The authentication scheme to use when making SCIM requests to this application.\nAvailable values: \"httpbasic\", \"oauthbearertoken\", \"oauth2\", \"access*service*token\".\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authorization scopes to request when generating the token used to authenticate with the remove SCIM service.\n"
                },
                "token": {
                    "type": "string",
                    "description": "Token used to authenticate with the remote SCIM service.\n",
                    "secret": true
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "URL used to generate the token used to authenticate with the remote SCIM service.\n"
                },
                "user": {
                    "type": "string",
                    "description": "User name used to authenticate with the remote SCIM service.\n"
                }
            },
            "type": "object",
            "required": [
                "scheme"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationScimConfigMapping:ZeroTrustAccessApplicationScimConfigMapping": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this mapping is enabled.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "A [SCIM filter expression](https://datatracker.ietf.org/doc/html/rfc7644#section-3.4.2.2) that matches resources that should be provisioned to this application.\n"
                },
                "operations": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationScimConfigMappingOperations:ZeroTrustAccessApplicationScimConfigMappingOperations",
                    "description": "Whether or not this mapping applies to creates, updates, or deletes.\n"
                },
                "schema": {
                    "type": "string",
                    "description": "Which SCIM resource type this mapping applies to.\n"
                },
                "strictness": {
                    "type": "string",
                    "description": "The level of adherence to outbound resource schemas when provisioning to this mapping. ‘Strict’ removes unknown values, while ‘passthrough’ passes unknown values to the target.\nAvailable values: \"strict\", \"passthrough\".\n"
                },
                "transformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms the resource before provisioning it in the application.\n"
                }
            },
            "type": "object",
            "required": [
                "schema"
            ]
        },
        "cloudflare:index/ZeroTrustAccessApplicationScimConfigMappingOperations:ZeroTrustAccessApplicationScimConfigMappingOperations": {
            "properties": {
                "create": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to create (POST) operations.\n"
                },
                "delete": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to DELETE operations.\n"
                },
                "update": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to update (PATCH/PUT) operations.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessApplicationTargetCriteria:ZeroTrustAccessApplicationTargetCriteria": {
            "properties": {
                "port": {
                    "type": "integer",
                    "description": "The port that the targets use for the chosen communication protocol. A port cannot be assigned to multiple protocols.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The communication protocol your application secures.\nAvailable values: \"SSH\", \"RDP\".\n"
                },
                "targetAttributes": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Contains a map of target attribute keys to target attribute values.\n"
                }
            },
            "type": "object",
            "required": [
                "port",
                "protocol",
                "targetAttributes"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExclude:ZeroTrustAccessGroupExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeAnyValidServiceToken:ZeroTrustAccessGroupExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeAuthContext:ZeroTrustAccessGroupExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeAuthMethod:ZeroTrustAccessGroupExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeAzureAd:ZeroTrustAccessGroupExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeCertificate:ZeroTrustAccessGroupExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeCommonName:ZeroTrustAccessGroupExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeDevicePosture:ZeroTrustAccessGroupExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeEmail:ZeroTrustAccessGroupExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeEmailDomain:ZeroTrustAccessGroupExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeEmailList:ZeroTrustAccessGroupExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeEveryone:ZeroTrustAccessGroupExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeExternalEvaluation:ZeroTrustAccessGroupExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeGeo:ZeroTrustAccessGroupExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeGithubOrganization:ZeroTrustAccessGroupExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeGroup:ZeroTrustAccessGroupExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeGsuite:ZeroTrustAccessGroupExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeIp:ZeroTrustAccessGroupExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeIpList:ZeroTrustAccessGroupExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeLinkedAppToken:ZeroTrustAccessGroupExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeLoginMethod:ZeroTrustAccessGroupExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeOidc:ZeroTrustAccessGroupExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeOkta:ZeroTrustAccessGroupExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeSaml:ZeroTrustAccessGroupExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeServiceToken:ZeroTrustAccessGroupExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExcludeUserRiskScore:ZeroTrustAccessGroupExcludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeAnyValidServiceToken:ZeroTrustAccessGroupExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeAuthContext:ZeroTrustAccessGroupExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeAuthMethod:ZeroTrustAccessGroupExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeAzureAd:ZeroTrustAccessGroupExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeCertificate:ZeroTrustAccessGroupExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeCommonName:ZeroTrustAccessGroupExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeDevicePosture:ZeroTrustAccessGroupExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeEmail:ZeroTrustAccessGroupExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeEmailDomain:ZeroTrustAccessGroupExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeEmailList:ZeroTrustAccessGroupExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeEveryone:ZeroTrustAccessGroupExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeExternalEvaluation:ZeroTrustAccessGroupExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeGeo:ZeroTrustAccessGroupExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeGithubOrganization:ZeroTrustAccessGroupExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeGroup:ZeroTrustAccessGroupExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeGsuite:ZeroTrustAccessGroupExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeIp:ZeroTrustAccessGroupExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeIpList:ZeroTrustAccessGroupExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeLinkedAppToken:ZeroTrustAccessGroupExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeLoginMethod:ZeroTrustAccessGroupExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeOidc:ZeroTrustAccessGroupExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeOkta:ZeroTrustAccessGroupExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeSaml:ZeroTrustAccessGroupExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeServiceToken:ZeroTrustAccessGroupExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupExcludeUserRiskScore:ZeroTrustAccessGroupExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupInclude:ZeroTrustAccessGroupInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeAnyValidServiceToken:ZeroTrustAccessGroupIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeAuthContext:ZeroTrustAccessGroupIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeAuthMethod:ZeroTrustAccessGroupIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeAzureAd:ZeroTrustAccessGroupIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeCertificate:ZeroTrustAccessGroupIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeCommonName:ZeroTrustAccessGroupIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeDevicePosture:ZeroTrustAccessGroupIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeEmail:ZeroTrustAccessGroupIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeEmailDomain:ZeroTrustAccessGroupIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeEmailList:ZeroTrustAccessGroupIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeEveryone:ZeroTrustAccessGroupIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeExternalEvaluation:ZeroTrustAccessGroupIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeGeo:ZeroTrustAccessGroupIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeGithubOrganization:ZeroTrustAccessGroupIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeGroup:ZeroTrustAccessGroupIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeGsuite:ZeroTrustAccessGroupIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeIp:ZeroTrustAccessGroupIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeIpList:ZeroTrustAccessGroupIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeLinkedAppToken:ZeroTrustAccessGroupIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeLoginMethod:ZeroTrustAccessGroupIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeOidc:ZeroTrustAccessGroupIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeOkta:ZeroTrustAccessGroupIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeSaml:ZeroTrustAccessGroupIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeServiceToken:ZeroTrustAccessGroupIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupIncludeUserRiskScore:ZeroTrustAccessGroupIncludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeAnyValidServiceToken:ZeroTrustAccessGroupIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeAuthContext:ZeroTrustAccessGroupIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeAuthMethod:ZeroTrustAccessGroupIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeAzureAd:ZeroTrustAccessGroupIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeCertificate:ZeroTrustAccessGroupIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeCommonName:ZeroTrustAccessGroupIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeDevicePosture:ZeroTrustAccessGroupIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeEmail:ZeroTrustAccessGroupIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeEmailDomain:ZeroTrustAccessGroupIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeEmailList:ZeroTrustAccessGroupIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeEveryone:ZeroTrustAccessGroupIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeExternalEvaluation:ZeroTrustAccessGroupIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeGeo:ZeroTrustAccessGroupIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeGithubOrganization:ZeroTrustAccessGroupIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeGroup:ZeroTrustAccessGroupIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeGsuite:ZeroTrustAccessGroupIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeIp:ZeroTrustAccessGroupIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeIpList:ZeroTrustAccessGroupIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeLinkedAppToken:ZeroTrustAccessGroupIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeLoginMethod:ZeroTrustAccessGroupIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeOidc:ZeroTrustAccessGroupIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeOkta:ZeroTrustAccessGroupIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeSaml:ZeroTrustAccessGroupIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeServiceToken:ZeroTrustAccessGroupIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupIncludeUserRiskScore:ZeroTrustAccessGroupIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequire:ZeroTrustAccessGroupRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireAnyValidServiceToken:ZeroTrustAccessGroupRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireAuthContext:ZeroTrustAccessGroupRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireAuthMethod:ZeroTrustAccessGroupRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireAzureAd:ZeroTrustAccessGroupRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireCertificate:ZeroTrustAccessGroupRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireCommonName:ZeroTrustAccessGroupRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireDevicePosture:ZeroTrustAccessGroupRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireEmail:ZeroTrustAccessGroupRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireEmailDomain:ZeroTrustAccessGroupRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireEmailList:ZeroTrustAccessGroupRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireEveryone:ZeroTrustAccessGroupRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireExternalEvaluation:ZeroTrustAccessGroupRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireGeo:ZeroTrustAccessGroupRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireGithubOrganization:ZeroTrustAccessGroupRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireGroup:ZeroTrustAccessGroupRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireGsuite:ZeroTrustAccessGroupRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireIp:ZeroTrustAccessGroupRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireIpList:ZeroTrustAccessGroupRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireLinkedAppToken:ZeroTrustAccessGroupRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireLoginMethod:ZeroTrustAccessGroupRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireOidc:ZeroTrustAccessGroupRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireOkta:ZeroTrustAccessGroupRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireSaml:ZeroTrustAccessGroupRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireServiceToken:ZeroTrustAccessGroupRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequireUserRiskScore:ZeroTrustAccessGroupRequireUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireAnyValidServiceToken:ZeroTrustAccessGroupRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireAuthContext:ZeroTrustAccessGroupRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireAuthMethod:ZeroTrustAccessGroupRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireAzureAd:ZeroTrustAccessGroupRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireCertificate:ZeroTrustAccessGroupRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireCommonName:ZeroTrustAccessGroupRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireDevicePosture:ZeroTrustAccessGroupRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireEmail:ZeroTrustAccessGroupRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireEmailDomain:ZeroTrustAccessGroupRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireEmailList:ZeroTrustAccessGroupRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireEveryone:ZeroTrustAccessGroupRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireExternalEvaluation:ZeroTrustAccessGroupRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireGeo:ZeroTrustAccessGroupRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireGithubOrganization:ZeroTrustAccessGroupRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireGroup:ZeroTrustAccessGroupRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireGsuite:ZeroTrustAccessGroupRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireIp:ZeroTrustAccessGroupRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireIpList:ZeroTrustAccessGroupRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireLinkedAppToken:ZeroTrustAccessGroupRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireLoginMethod:ZeroTrustAccessGroupRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireOidc:ZeroTrustAccessGroupRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireOkta:ZeroTrustAccessGroupRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireSaml:ZeroTrustAccessGroupRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireServiceToken:ZeroTrustAccessGroupRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessGroupRequireUserRiskScore:ZeroTrustAccessGroupRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/ZeroTrustAccessIdentityProviderConfig:ZeroTrustAccessIdentityProviderConfig": {
            "properties": {
                "appsDomain": {
                    "type": "string",
                    "description": "Your companies TLD\n"
                },
                "attributes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of SAML attribute names that will be added to your signed JWT token and can be used in SAML policy rules.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" authorizationEndpoint \" pulumi-lang-dotnet=\" AuthorizationEndpoint \" pulumi-lang-go=\" authorizationEndpoint \" pulumi-lang-python=\" authorization_endpoint \" pulumi-lang-yaml=\" authorizationEndpoint \" pulumi-lang-java=\" authorizationEndpoint \"\u003e authorizationEndpoint \u003c/span\u003eURL of your IdP\n"
                },
                "authorizationServerId": {
                    "type": "string",
                    "description": "Your okta authorization server id\n"
                },
                "centrifyAccount": {
                    "type": "string",
                    "description": "Your centrify account url\n"
                },
                "centrifyAppId": {
                    "type": "string",
                    "description": "Your centrify app id\n"
                },
                "certsUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" jwksUri \" pulumi-lang-dotnet=\" JwksUri \" pulumi-lang-go=\" jwksUri \" pulumi-lang-python=\" jwks_uri \" pulumi-lang-yaml=\" jwksUri \" pulumi-lang-java=\" jwksUri \"\u003e jwksUri \u003c/span\u003eendpoint of your IdP to allow the IdP keys to sign the tokens\n"
                },
                "claims": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom claims\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your OAuth Client ID\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Your OAuth Client Secret\n",
                    "secret": true
                },
                "conditionalAccessEnabled": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load authentication contexts from your account\n"
                },
                "directoryId": {
                    "type": "string",
                    "description": "Your Azure directory uuid\n"
                },
                "emailAttributeName": {
                    "type": "string",
                    "description": "The attribute name for email in the SAML response.\n"
                },
                "emailClaimName": {
                    "type": "string",
                    "description": "The claim name for email in the\u003cspan pulumi-lang-nodejs=\" idToken \" pulumi-lang-dotnet=\" IdToken \" pulumi-lang-go=\" idToken \" pulumi-lang-python=\" id_token \" pulumi-lang-yaml=\" idToken \" pulumi-lang-java=\" idToken \"\u003e idToken \u003c/span\u003eresponse.\n"
                },
                "headerAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderConfigHeaderAttribute:ZeroTrustAccessIdentityProviderConfigHeaderAttribute"
                    },
                    "description": "Add a list of attribute names that will be returned in the response header from the Access callback.\n"
                },
                "idpPublicCerts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "X509 certificate to verify the signature in the SAML authentication response\n"
                },
                "issuerUrl": {
                    "type": "string",
                    "description": "IdP Entity ID or Issuer URL\n"
                },
                "oktaAccount": {
                    "type": "string",
                    "description": "Your okta account url\n"
                },
                "oneloginAccount": {
                    "type": "string",
                    "description": "Your OneLogin account url\n"
                },
                "pingEnvId": {
                    "type": "string",
                    "description": "Your PingOne environment identifier\n"
                },
                "pkceEnabled": {
                    "type": "boolean",
                    "description": "Enable Proof Key for Code Exchange (PKCE)\n"
                },
                "prompt": {
                    "type": "string",
                    "description": "Indicates the type of user interaction that is required. prompt=login forces the user to enter their credentials on that request, negating single-sign on. prompt=none is the opposite. It ensures that the user isn't presented with any interactive prompt. If the request can't be completed silently by using single-sign on, the Microsoft identity platform returns an interaction*required error. prompt=select*account interrupts single sign-on providing account selection experience listing all the accounts either in session or any remembered account or an option to choose to use a different account altogether.\nAvailable values: \"login\", \u003cspan pulumi-lang-nodejs=\"\"selectAccount\"\" pulumi-lang-dotnet=\"\"SelectAccount\"\" pulumi-lang-go=\"\"selectAccount\"\" pulumi-lang-python=\"\"select_account\"\" pulumi-lang-yaml=\"\"selectAccount\"\" pulumi-lang-java=\"\"selectAccount\"\"\u003e\"selectAccount\"\u003c/span\u003e, \"none\".\n"
                },
                "redirectUrl": {
                    "type": "string"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "OAuth scopes\n"
                },
                "signRequest": {
                    "type": "boolean",
                    "description": "Sign the SAML authentication request with Access credentials. To verify the signature, use the public key from the Access certs endpoints.\n"
                },
                "ssoTargetUrl": {
                    "type": "string",
                    "description": "URL to send the SAML authentication requests to\n"
                },
                "supportGroups": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load groups from your account\n"
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" tokenEndpoint \" pulumi-lang-dotnet=\" TokenEndpoint \" pulumi-lang-go=\" tokenEndpoint \" pulumi-lang-python=\" token_endpoint \" pulumi-lang-yaml=\" tokenEndpoint \" pulumi-lang-java=\" tokenEndpoint \"\u003e tokenEndpoint \u003c/span\u003eURL of your IdP\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "redirectUrl"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessIdentityProviderConfigHeaderAttribute:ZeroTrustAccessIdentityProviderConfigHeaderAttribute": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "attribute name from the IDP\n"
                },
                "headerName": {
                    "type": "string",
                    "description": "header that will be added on the request to the origin\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessIdentityProviderScimConfig:ZeroTrustAccessIdentityProviderScimConfig": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "A flag to enable or disable SCIM for the identity provider.\n"
                },
                "identityUpdateBehavior": {
                    "type": "string",
                    "description": "Indicates how a SCIM event updates a user identity used for policy evaluation. Use \"automatic\" to automatically update a user's identity and augment it with fields from the SCIM user resource. Use \"reauth\" to force re-authentication on group membership updates, user identity update will only occur after successful re-authentication. With \"reauth\" identities will not contain fields from the SCIM user resource. With \"no*action\" identities will not be changed by SCIM updates in any way and users will not be prompted to reauthenticate.\nAvailable values: \"automatic\", \"reauth\", \"no*action\".\n"
                },
                "scimBaseUrl": {
                    "type": "string",
                    "description": "The base URL of Cloudflare's SCIM V2.0 API endpoint.\n"
                },
                "seatDeprovision": {
                    "type": "boolean",
                    "description": "A flag to remove a user's seat in Zero Trust when they have been deprovisioned in the Identity Provider.  This cannot be enabled unless\u003cspan pulumi-lang-nodejs=\" userDeprovision \" pulumi-lang-dotnet=\" UserDeprovision \" pulumi-lang-go=\" userDeprovision \" pulumi-lang-python=\" user_deprovision \" pulumi-lang-yaml=\" userDeprovision \" pulumi-lang-java=\" userDeprovision \"\u003e userDeprovision \u003c/span\u003eis also enabled.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "A read-only token generated when the SCIM integration is enabled for the first time.  It is redacted on subsequent requests.  If you lose this you will need to refresh it at /access/identity*providers/:idpID/refresh*scim_secret.\n",
                    "secret": true
                },
                "userDeprovision": {
                    "type": "boolean",
                    "description": "A flag to enable revoking a user's session in Access and Gateway when they have been deprovisioned in the Identity Provider.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "identityUpdateBehavior",
                        "scimBaseUrl",
                        "seatDeprovision",
                        "secret",
                        "userDeprovision"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessInfrastructureTargetIp:ZeroTrustAccessInfrastructureTargetIp": {
            "properties": {
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessInfrastructureTargetIpIpv4:ZeroTrustAccessInfrastructureTargetIpIpv4",
                    "description": "The target's IPv4 address\n"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessInfrastructureTargetIpIpv6:ZeroTrustAccessInfrastructureTargetIpIpv6",
                    "description": "The target's IPv6 address\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessInfrastructureTargetIpIpv4:ZeroTrustAccessInfrastructureTargetIpIpv4": {
            "properties": {
                "ipAddr": {
                    "type": "string",
                    "description": "IP address of the target\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "virtualNetworkId"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessInfrastructureTargetIpIpv6:ZeroTrustAccessInfrastructureTargetIpIpv6": {
            "properties": {
                "ipAddr": {
                    "type": "string",
                    "description": "IP address of the target\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "virtualNetworkId"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustAccessMtlsHostnameSettingsSetting:ZeroTrustAccessMtlsHostnameSettingsSetting": {
            "properties": {
                "chinaNetwork": {
                    "type": "boolean",
                    "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n"
                },
                "clientCertificateForwarding": {
                    "type": "boolean",
                    "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname that these settings apply to.\n"
                }
            },
            "type": "object",
            "required": [
                "chinaNetwork",
                "clientCertificateForwarding",
                "hostname"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyApprovalGroup:ZeroTrustAccessPolicyApprovalGroup": {
            "properties": {
                "approvalsNeeded": {
                    "type": "number",
                    "description": "The number of approvals needed to obtain access.\n"
                },
                "emailAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of emails that can approve the access request.\n"
                },
                "emailListUuid": {
                    "type": "string",
                    "description": "The UUID of an re-usable email list.\n"
                }
            },
            "type": "object",
            "required": [
                "approvalsNeeded"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyConnectionRules:ZeroTrustAccessPolicyConnectionRules": {
            "properties": {
                "rdp": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyConnectionRulesRdp:ZeroTrustAccessPolicyConnectionRulesRdp",
                    "description": "The RDP-specific rules that define clipboard behavior for RDP connections.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyConnectionRulesRdp:ZeroTrustAccessPolicyConnectionRulesRdp": {
            "properties": {
                "allowedClipboardLocalToRemoteFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from local machine to remote RDP session.\n"
                },
                "allowedClipboardRemoteToLocalFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from remote RDP session to local machine.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyExclude:ZeroTrustAccessPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeAnyValidServiceToken:ZeroTrustAccessPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeAuthContext:ZeroTrustAccessPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeAuthMethod:ZeroTrustAccessPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeAzureAd:ZeroTrustAccessPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeCertificate:ZeroTrustAccessPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeCommonName:ZeroTrustAccessPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeDevicePosture:ZeroTrustAccessPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeEmail:ZeroTrustAccessPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeEmailDomain:ZeroTrustAccessPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeEmailList:ZeroTrustAccessPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeEveryone:ZeroTrustAccessPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeExternalEvaluation:ZeroTrustAccessPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeGeo:ZeroTrustAccessPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeGithubOrganization:ZeroTrustAccessPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeGroup:ZeroTrustAccessPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeGsuite:ZeroTrustAccessPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeIp:ZeroTrustAccessPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeIpList:ZeroTrustAccessPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeLinkedAppToken:ZeroTrustAccessPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeLoginMethod:ZeroTrustAccessPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeOidc:ZeroTrustAccessPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeOkta:ZeroTrustAccessPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeSaml:ZeroTrustAccessPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeServiceToken:ZeroTrustAccessPolicyExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExcludeUserRiskScore:ZeroTrustAccessPolicyExcludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeAnyValidServiceToken:ZeroTrustAccessPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeAuthContext:ZeroTrustAccessPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeAuthMethod:ZeroTrustAccessPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeAzureAd:ZeroTrustAccessPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeCertificate:ZeroTrustAccessPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeCommonName:ZeroTrustAccessPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeDevicePosture:ZeroTrustAccessPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeEmail:ZeroTrustAccessPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeEmailDomain:ZeroTrustAccessPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeEmailList:ZeroTrustAccessPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeEveryone:ZeroTrustAccessPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeExternalEvaluation:ZeroTrustAccessPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeGeo:ZeroTrustAccessPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeGithubOrganization:ZeroTrustAccessPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeGroup:ZeroTrustAccessPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeGsuite:ZeroTrustAccessPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeIp:ZeroTrustAccessPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeIpList:ZeroTrustAccessPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeLinkedAppToken:ZeroTrustAccessPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeLoginMethod:ZeroTrustAccessPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeOidc:ZeroTrustAccessPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeOkta:ZeroTrustAccessPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeSaml:ZeroTrustAccessPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeServiceToken:ZeroTrustAccessPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyExcludeUserRiskScore:ZeroTrustAccessPolicyExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyInclude:ZeroTrustAccessPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeAnyValidServiceToken:ZeroTrustAccessPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeAuthContext:ZeroTrustAccessPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeAuthMethod:ZeroTrustAccessPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeAzureAd:ZeroTrustAccessPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeCertificate:ZeroTrustAccessPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeCommonName:ZeroTrustAccessPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeDevicePosture:ZeroTrustAccessPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeEmail:ZeroTrustAccessPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeEmailDomain:ZeroTrustAccessPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeEmailList:ZeroTrustAccessPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeEveryone:ZeroTrustAccessPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeExternalEvaluation:ZeroTrustAccessPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeGeo:ZeroTrustAccessPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeGithubOrganization:ZeroTrustAccessPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeGroup:ZeroTrustAccessPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeGsuite:ZeroTrustAccessPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeIp:ZeroTrustAccessPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeIpList:ZeroTrustAccessPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeLinkedAppToken:ZeroTrustAccessPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeLoginMethod:ZeroTrustAccessPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeOidc:ZeroTrustAccessPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeOkta:ZeroTrustAccessPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeSaml:ZeroTrustAccessPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeServiceToken:ZeroTrustAccessPolicyIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyIncludeUserRiskScore:ZeroTrustAccessPolicyIncludeUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeAnyValidServiceToken:ZeroTrustAccessPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeAuthContext:ZeroTrustAccessPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeAuthMethod:ZeroTrustAccessPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeAzureAd:ZeroTrustAccessPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeCertificate:ZeroTrustAccessPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeCommonName:ZeroTrustAccessPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeDevicePosture:ZeroTrustAccessPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeEmail:ZeroTrustAccessPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeEmailDomain:ZeroTrustAccessPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeEmailList:ZeroTrustAccessPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeEveryone:ZeroTrustAccessPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeExternalEvaluation:ZeroTrustAccessPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeGeo:ZeroTrustAccessPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeGithubOrganization:ZeroTrustAccessPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeGroup:ZeroTrustAccessPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeGsuite:ZeroTrustAccessPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeIp:ZeroTrustAccessPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeIpList:ZeroTrustAccessPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeLinkedAppToken:ZeroTrustAccessPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeLoginMethod:ZeroTrustAccessPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeOidc:ZeroTrustAccessPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeOkta:ZeroTrustAccessPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeSaml:ZeroTrustAccessPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeServiceToken:ZeroTrustAccessPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyIncludeUserRiskScore:ZeroTrustAccessPolicyIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyMfaConfig:ZeroTrustAccessPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Indicates whether to disable MFA for this resource. This option is available at the application and policy level.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequire:ZeroTrustAccessPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireAnyValidServiceToken:ZeroTrustAccessPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireAuthContext:ZeroTrustAccessPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireAuthMethod:ZeroTrustAccessPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireAzureAd:ZeroTrustAccessPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireCertificate:ZeroTrustAccessPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireCommonName:ZeroTrustAccessPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireDevicePosture:ZeroTrustAccessPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireEmail:ZeroTrustAccessPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireEmailDomain:ZeroTrustAccessPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireEmailList:ZeroTrustAccessPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireEveryone:ZeroTrustAccessPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireExternalEvaluation:ZeroTrustAccessPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireGeo:ZeroTrustAccessPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireGithubOrganization:ZeroTrustAccessPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireGroup:ZeroTrustAccessPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireGsuite:ZeroTrustAccessPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireIp:ZeroTrustAccessPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireIpList:ZeroTrustAccessPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireLinkedAppToken:ZeroTrustAccessPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireLoginMethod:ZeroTrustAccessPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireOidc:ZeroTrustAccessPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireOkta:ZeroTrustAccessPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireSaml:ZeroTrustAccessPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireServiceToken:ZeroTrustAccessPolicyRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequireUserRiskScore:ZeroTrustAccessPolicyRequireUserRiskScore"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireAnyValidServiceToken:ZeroTrustAccessPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireAuthContext:ZeroTrustAccessPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireAuthMethod:ZeroTrustAccessPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireAzureAd:ZeroTrustAccessPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireCertificate:ZeroTrustAccessPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireCommonName:ZeroTrustAccessPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireDevicePosture:ZeroTrustAccessPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireEmail:ZeroTrustAccessPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireEmailDomain:ZeroTrustAccessPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireEmailList:ZeroTrustAccessPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireEveryone:ZeroTrustAccessPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireExternalEvaluation:ZeroTrustAccessPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireGeo:ZeroTrustAccessPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireGithubOrganization:ZeroTrustAccessPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireGroup:ZeroTrustAccessPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireGsuite:ZeroTrustAccessPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireIp:ZeroTrustAccessPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireIpList:ZeroTrustAccessPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireLinkedAppToken:ZeroTrustAccessPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireLoginMethod:ZeroTrustAccessPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireOidc:ZeroTrustAccessPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireOkta:ZeroTrustAccessPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireSaml:ZeroTrustAccessPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireServiceToken:ZeroTrustAccessPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ]
        },
        "cloudflare:index/ZeroTrustAccessPolicyRequireUserRiskScore:ZeroTrustAccessPolicyRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ]
        },
        "cloudflare:index/ZeroTrustDeviceCustomProfileExclude:ZeroTrustDeviceCustomProfileExclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "address",
                        "description",
                        "host"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDeviceCustomProfileFallbackDomain:ZeroTrustDeviceCustomProfileFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "dnsServers",
                        "suffix"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDeviceCustomProfileInclude:ZeroTrustDeviceCustomProfileInclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "address",
                        "description",
                        "host"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain:ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "required": [
                "suffix"
            ]
        },
        "cloudflare:index/ZeroTrustDeviceCustomProfileServiceModeV2:ZeroTrustDeviceCustomProfileServiceModeV2": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The mode to run the WARP client under.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port number when used with proxy mode.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "mode",
                        "port"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDeviceCustomProfileTargetTest:ZeroTrustDeviceCustomProfileTargetTest": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The id of the DEX test targeting this policy.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX test targeting this policy.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDeviceDefaultProfileExclude:ZeroTrustDeviceDefaultProfileExclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDeviceDefaultProfileFallbackDomain:ZeroTrustDeviceDefaultProfileFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "dnsServers",
                        "suffix"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDeviceDefaultProfileInclude:ZeroTrustDeviceDefaultProfileInclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain:ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "required": [
                "suffix"
            ]
        },
        "cloudflare:index/ZeroTrustDeviceDefaultProfileServiceModeV2:ZeroTrustDeviceDefaultProfileServiceModeV2": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The mode to run the WARP client under.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port number when used with proxy mode.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDeviceManagedNetworksConfig:ZeroTrustDeviceManagedNetworksConfig": {
            "properties": {
                "sha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the TLS certificate presented by the host found at tls_sockaddr. If absent, regular certificate verification (trusted roots, valid timestamp, etc) will be used to validate the certificate.\n"
                },
                "tlsSockaddr": {
                    "type": "string",
                    "description": "A network address of the form \"host:port\" that the WARP client will use to detect the presence of a TLS host.\n"
                }
            },
            "type": "object",
            "required": [
                "tlsSockaddr"
            ]
        },
        "cloudflare:index/ZeroTrustDevicePostureIntegrationConfig:ZeroTrustDevicePostureIntegrationConfig": {
            "properties": {
                "accessClientId": {
                    "type": "string",
                    "description": "If present, this id will be passed in the `CF-Access-Client-ID` header when hitting the \u003cspan pulumi-lang-nodejs=\"`apiUrl`\" pulumi-lang-dotnet=\"`ApiUrl`\" pulumi-lang-go=\"`apiUrl`\" pulumi-lang-python=\"`api_url`\" pulumi-lang-yaml=\"`apiUrl`\" pulumi-lang-java=\"`apiUrl`\"\u003e`apiUrl`\u003c/span\u003e.\n"
                },
                "accessClientSecret": {
                    "type": "string",
                    "description": "If present, this secret will be passed in the `CF-Access-Client-Secret` header when hitting the \u003cspan pulumi-lang-nodejs=\"`apiUrl`\" pulumi-lang-dotnet=\"`ApiUrl`\" pulumi-lang-go=\"`apiUrl`\" pulumi-lang-python=\"`api_url`\" pulumi-lang-yaml=\"`apiUrl`\" pulumi-lang-java=\"`apiUrl`\"\u003e`apiUrl`\u003c/span\u003e.\n",
                    "secret": true
                },
                "apiUrl": {
                    "type": "string",
                    "description": "The Workspace One API URL provided in the Workspace One Admin Dashboard.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The Workspace One Authorization URL depending on your region.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The Workspace One client ID provided in the Workspace One Admin Dashboard.\n"
                },
                "clientKey": {
                    "type": "string",
                    "description": "The Uptycs client secret.\n",
                    "secret": true
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The Workspace One client secret provided in the Workspace One Admin Dashboard.\n",
                    "secret": true
                },
                "customerId": {
                    "type": "string",
                    "description": "The Crowdstrike customer ID.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDevicePostureRuleInput:ZeroTrustDevicePostureRuleInput": {
            "properties": {
                "activeThreats": {
                    "type": "number",
                    "description": "The Number of active threats.\n"
                },
                "authStates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of Kolide device authentication states that pass the posture check. Device must match one of the specified states.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "UUID of Cloudflare managed certificate.\n"
                },
                "checkDisks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of volume names to be checked for encryption.\n"
                },
                "checkPrivateKey": {
                    "type": "boolean",
                    "description": "Confirm the certificate was not imported from another device. We recommend keeping this enabled unless the certificate was deployed without a private key.\n"
                },
                "cn": {
                    "type": "string",
                    "description": "Common Name that is protected by the certificate.\n"
                },
                "complianceStatus": {
                    "type": "string",
                    "description": "Compliance Status.\nAvailable values: \"compliant\", \"noncompliant\", \"unknown\", \"notapplicable\", \"ingraceperiod\", \"error\".\n"
                },
                "connectionId": {
                    "type": "string",
                    "description": "Posture Integration ID.\n"
                },
                "countOperator": {
                    "type": "string",
                    "description": "Count Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Domain.\n"
                },
                "eidLastSeen": {
                    "type": "string",
                    "description": "For more details on eid last seen, refer to the Tanium documentation.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enabled.\n"
                },
                "exists": {
                    "type": "boolean",
                    "description": "Whether or not file exists.\n"
                },
                "extendedKeyUsages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of values indicating purposes for which the certificate public key can be used.\n"
                },
                "id": {
                    "type": "string",
                    "description": "List ID.\n"
                },
                "infected": {
                    "type": "boolean",
                    "description": "Whether device is infected.\n"
                },
                "isActive": {
                    "type": "boolean",
                    "description": "Whether device is active.\n"
                },
                "issueCount": {
                    "type": "string",
                    "description": "The Number of Issues.\n"
                },
                "lastSeen": {
                    "type": "string",
                    "description": "For more details on last seen, please refer to the Crowdstrike documentation.\n"
                },
                "locations": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleInputLocations:ZeroTrustDevicePostureRuleInputLocations"
                },
                "networkStatus": {
                    "type": "string",
                    "description": "Network status of device.\nAvailable values: \"connected\", \"disconnected\", \"disconnecting\", \"connecting\".\n"
                },
                "operatingSystem": {
                    "type": "string",
                    "description": "Operating system.\nAvailable values: \"windows\", \"linux\", \"mac\", \"android\", \"ios\", \"chromeos\".\n"
                },
                "operationalState": {
                    "type": "string",
                    "description": "Agent operational state.\nAvailable values: \"na\", \"partially*disabled\", \"auto*fully*disabled\", \"fully*disabled\", \"auto*partially*disabled\", \"disabled*error\", \"db*corruption\".\n"
                },
                "operator": {
                    "type": "string",
                    "description": "Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "os": {
                    "type": "string",
                    "description": "Os Version.\n"
                },
                "osDistroName": {
                    "type": "string",
                    "description": "Operating System Distribution Name (linux only).\n"
                },
                "osDistroRevision": {
                    "type": "string",
                    "description": "Version of OS Distribution (linux only).\n"
                },
                "osVersionExtra": {
                    "type": "string",
                    "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version.\n"
                },
                "overall": {
                    "type": "string",
                    "description": "Overall.\n"
                },
                "path": {
                    "type": "string",
                    "description": "File path.\n"
                },
                "requireAll": {
                    "type": "boolean",
                    "description": "Whether to check all disks for encryption.\n"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "For more details on risk level, refer to the Tanium documentation.\nAvailable values: \"low\", \"medium\", \"high\", \"critical\".\n"
                },
                "score": {
                    "type": "number",
                    "description": "A value between 0-100 assigned to devices set by the 3rd party posture provider.\n"
                },
                "scoreOperator": {
                    "type": "string",
                    "description": "Score Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "sensorConfig": {
                    "type": "string",
                    "description": "SensorConfig.\n"
                },
                "sha256": {
                    "type": "string",
                    "description": "SHA-256.\n"
                },
                "state": {
                    "type": "string",
                    "description": "For more details on state, please refer to the Crowdstrike documentation.\nAvailable values: \"online\", \"offline\", \"unknown\".\n"
                },
                "subjectAlternativeNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of certificate Subject Alternative Names.\n"
                },
                "thumbprint": {
                    "type": "string",
                    "description": "Signing certificate thumbprint.\n"
                },
                "totalScore": {
                    "type": "number",
                    "description": "For more details on total score, refer to the Tanium documentation.\n"
                },
                "updateWindowDays": {
                    "type": "number",
                    "description": "Number of days that the antivirus should be updated within.\n"
                },
                "version": {
                    "type": "string",
                    "description": "Version of OS.\n"
                },
                "versionOperator": {
                    "type": "string",
                    "description": "Version Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDevicePostureRuleInputLocations:ZeroTrustDevicePostureRuleInputLocations": {
            "properties": {
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of paths to check for client certificate on linux.\n"
                },
                "trustStores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of trust stores to check for client certificate.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDevicePostureRuleMatch:ZeroTrustDevicePostureRuleMatch": {
            "properties": {
                "platform": {
                    "type": "string",
                    "description": "Available values: \"windows\", \"mac\", \"linux\", \"android\", \"ios\", \"chromeos\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDexRuleTargetedTest:ZeroTrustDexRuleTargetedTest": {
            "properties": {
                "data": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDexRuleTargetedTestData:ZeroTrustDexRuleTargetedTestData",
                    "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "testId": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "data",
                        "enabled",
                        "name",
                        "testId"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDexRuleTargetedTestData:ZeroTrustDexRuleTargetedTestData": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The desired endpoint to test.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of test.\nAvailable values: \"http\", \"traceroute\".\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP request method type.\nAvailable values: \"GET\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "host",
                        "kind",
                        "method"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDexTestData:ZeroTrustDexTestData": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The desired endpoint to test.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of test.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP request method type.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustDexTestTargetPolicy:ZeroTrustDexTestTargetPolicy": {
            "properties": {
                "default": {
                    "type": "boolean",
                    "description": "Whether the DEX rule is the account default\n"
                },
                "id": {
                    "type": "string",
                    "description": "The id of the DEX rule\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX rule\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "default",
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpCustomEntryConfidence:ZeroTrustDlpCustomEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aiContextAvailable",
                        "available"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpCustomEntryPattern:ZeroTrustDlpCustomEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex"
            ]
        },
        "cloudflare:index/ZeroTrustDlpCustomEntryProfile:ZeroTrustDlpCustomEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpCustomEntryVariant:ZeroTrustDlpCustomEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "topicType",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpCustomProfileContextAwareness:ZeroTrustDlpCustomProfileContextAwareness": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "If true, scan the context of predefined entries to only return matches surrounded by keywords.\n"
                },
                "skip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileContextAwarenessSkip:ZeroTrustDlpCustomProfileContextAwarenessSkip",
                    "description": "Content types to exclude from context analysis and return all matches.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "skip"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpCustomProfileContextAwarenessSkip:ZeroTrustDlpCustomProfileContextAwarenessSkip": {
            "properties": {
                "files": {
                    "type": "boolean",
                    "description": "If the content type is a file, skip context analysis and return all matches.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "files"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpCustomProfileEntry:ZeroTrustDlpCustomProfileEntry": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileEntryPattern:ZeroTrustDlpCustomProfileEntryPattern"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "name",
                "pattern"
            ]
        },
        "cloudflare:index/ZeroTrustDlpCustomProfileEntryPattern:ZeroTrustDlpCustomProfileEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex"
            ]
        },
        "cloudflare:index/ZeroTrustDlpCustomProfileSensitivityLevel:ZeroTrustDlpCustomProfileSensitivityLevel": {
            "properties": {
                "groupId": {
                    "type": "string"
                },
                "levelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "groupId",
                "levelId"
            ]
        },
        "cloudflare:index/ZeroTrustDlpCustomProfileSharedEntry:ZeroTrustDlpCustomProfileSharedEntry": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "entryType": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\".\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "entryId",
                "entryType"
            ]
        },
        "cloudflare:index/ZeroTrustDlpDatasetColumn:ZeroTrustDlpDatasetColumn": {
            "properties": {
                "entryId": {
                    "type": "string"
                },
                "headerName": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "entryId",
                        "headerName",
                        "numCells",
                        "uploadStatus"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpDatasetDataset:ZeroTrustDlpDatasetDataset": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean"
                },
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetDatasetColumn:ZeroTrustDlpDatasetDatasetColumn"
                    }
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the dataset.\n"
                },
                "encodingVersion": {
                    "type": "integer"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "secret": {
                    "type": "boolean"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "Stores when the dataset was last updated.\n"
                },
                "uploads": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetDatasetUpload:ZeroTrustDlpDatasetDatasetUpload"
                    }
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "caseSensitive",
                        "columns",
                        "createdAt",
                        "description",
                        "encodingVersion",
                        "id",
                        "name",
                        "numCells",
                        "secret",
                        "status",
                        "updatedAt",
                        "uploads"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpDatasetDatasetColumn:ZeroTrustDlpDatasetDatasetColumn": {
            "properties": {
                "entryId": {
                    "type": "string"
                },
                "headerName": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "entryId",
                        "headerName",
                        "numCells",
                        "uploadStatus"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpDatasetDatasetUpload:ZeroTrustDlpDatasetDatasetUpload": {
            "properties": {
                "numCells": {
                    "type": "integer"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "version": {
                    "type": "integer"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "numCells",
                        "status",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpDatasetUpload:ZeroTrustDlpDatasetUpload": {
            "properties": {
                "numCells": {
                    "type": "integer"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "version": {
                    "type": "integer"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "numCells",
                        "status",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpEntryConfidence:ZeroTrustDlpEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aiContextAvailable",
                        "available"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpEntryPattern:ZeroTrustDlpEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex"
            ]
        },
        "cloudflare:index/ZeroTrustDlpEntryProfile:ZeroTrustDlpEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpEntryVariant:ZeroTrustDlpEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "topicType",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpIntegrationEntryConfidence:ZeroTrustDlpIntegrationEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aiContextAvailable",
                        "available"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpIntegrationEntryPattern:ZeroTrustDlpIntegrationEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "regex",
                        "validation"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpIntegrationEntryProfile:ZeroTrustDlpIntegrationEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpIntegrationEntryVariant:ZeroTrustDlpIntegrationEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "topicType",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpPredefinedEntryConfidence:ZeroTrustDlpPredefinedEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aiContextAvailable",
                        "available"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpPredefinedEntryPattern:ZeroTrustDlpPredefinedEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "regex",
                        "validation"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpPredefinedEntryProfile:ZeroTrustDlpPredefinedEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpPredefinedEntryVariant:ZeroTrustDlpPredefinedEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "description",
                        "topicType",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDlpPredefinedProfileEntry:ZeroTrustDlpPredefinedProfileEntry": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustDlpSettingsPayloadLogging:ZeroTrustDlpSettingsPayloadLogging": {
            "properties": {
                "maskingLevel": {
                    "type": "string",
                    "description": "Masking level for payload logs.\n\n- \u003cspan pulumi-lang-nodejs=\"`full`\" pulumi-lang-dotnet=\"`Full`\" pulumi-lang-go=\"`full`\" pulumi-lang-python=\"`full`\" pulumi-lang-yaml=\"`full`\" pulumi-lang-java=\"`full`\"\u003e`full`\u003c/span\u003e: The entire payload is masked.\n- \u003cspan pulumi-lang-nodejs=\"`partial`\" pulumi-lang-dotnet=\"`Partial`\" pulumi-lang-go=\"`partial`\" pulumi-lang-python=\"`partial`\" pulumi-lang-yaml=\"`partial`\" pulumi-lang-java=\"`partial`\"\u003e`partial`\u003c/span\u003e: Only partial payload content is masked.\n- \u003cspan pulumi-lang-nodejs=\"`clear`\" pulumi-lang-dotnet=\"`Clear`\" pulumi-lang-go=\"`clear`\" pulumi-lang-python=\"`clear`\" pulumi-lang-yaml=\"`clear`\" pulumi-lang-java=\"`clear`\"\u003e`clear`\u003c/span\u003e: No masking is applied to the payload content.\n- \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e: DLP uses its default masking behavior.\nAvailable values: \"full\", \"partial\", \"clear\", \"default\".\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "Base64-encoded public key for encrypting payload logs.\n\n- Set to a non-empty base64 string to enable payload logging with the given key.\n- Set to an empty string to disable payload logging.\n- Omit or set to null to leave unchanged (PATCH) or reset to disabled (PUT).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "maskingLevel"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpoints:ZeroTrustDnsLocationEndpoints": {
            "properties": {
                "doh": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsDoh:ZeroTrustDnsLocationEndpointsDoh"
                },
                "dot": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsDot:ZeroTrustDnsLocationEndpointsDot"
                },
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsIpv4:ZeroTrustDnsLocationEndpointsIpv4"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsIpv6:ZeroTrustDnsLocationEndpointsIpv6"
                }
            },
            "type": "object",
            "required": [
                "doh",
                "dot",
                "ipv4",
                "ipv6"
            ]
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsDoh:ZeroTrustDnsLocationEndpointsDoh": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOH endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsDohNetwork:ZeroTrustDnsLocationEndpointsDohNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                },
                "requireToken": {
                    "type": "boolean",
                    "description": "Specify whether the DOH endpoint requires user identity authentication.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "networks",
                        "requireToken"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsDohNetwork:ZeroTrustDnsLocationEndpointsDohNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsDot:ZeroTrustDnsLocationEndpointsDot": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOT endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsDotNetwork:ZeroTrustDnsLocationEndpointsDotNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "networks"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsDotNetwork:ZeroTrustDnsLocationEndpointsDotNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsIpv4:ZeroTrustDnsLocationEndpointsIpv4": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPv4 endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsIpv6:ZeroTrustDnsLocationEndpointsIpv6": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPV6 endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpointsIpv6Network:ZeroTrustDnsLocationEndpointsIpv6Network"
                    },
                    "description": "Specify the list of allowed source IPv6 network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "networks"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustDnsLocationEndpointsIpv6Network:ZeroTrustDnsLocationEndpointsIpv6Network": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv6 address or IPv6 CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/ZeroTrustDnsLocationNetwork:ZeroTrustDnsLocationNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv4 address or IPv4 CIDR. Limit IPv4 CIDRs to a maximum of /24.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ]
        },
        "cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleType:ZeroTrustGatewayLoggingSettingsByRuleType": {
            "properties": {
                "dns": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleTypeDns:ZeroTrustGatewayLoggingSettingsByRuleTypeDns",
                    "description": "Configure logging settings for DNS firewall.\n"
                },
                "http": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleTypeHttp:ZeroTrustGatewayLoggingSettingsByRuleTypeHttp",
                    "description": "Configure logging settings for HTTP/HTTPS firewall.\n"
                },
                "l4": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleTypeL4:ZeroTrustGatewayLoggingSettingsByRuleTypeL4",
                    "description": "Configure logging settings for Network firewall.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "dns",
                        "http",
                        "l4"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleTypeDns:ZeroTrustGatewayLoggingSettingsByRuleTypeDns": {
            "properties": {
                "logAll": {
                    "type": "boolean",
                    "description": "Specify whether to log all requests to this service.\n"
                },
                "logBlocks": {
                    "type": "boolean",
                    "description": "Specify whether to log only blocking requests to this service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "logAll",
                        "logBlocks"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleTypeHttp:ZeroTrustGatewayLoggingSettingsByRuleTypeHttp": {
            "properties": {
                "logAll": {
                    "type": "boolean",
                    "description": "Specify whether to log all requests to this service.\n"
                },
                "logBlocks": {
                    "type": "boolean",
                    "description": "Specify whether to log only blocking requests to this service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "logAll",
                        "logBlocks"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleTypeL4:ZeroTrustGatewayLoggingSettingsByRuleTypeL4": {
            "properties": {
                "logAll": {
                    "type": "boolean",
                    "description": "Specify whether to log all requests to this service.\n"
                },
                "logBlocks": {
                    "type": "boolean",
                    "description": "Specify whether to log only blocking requests to this service.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "logAll",
                        "logBlocks"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayPolicyExpiration:ZeroTrustGatewayPolicyExpiration": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "Defines the default duration a policy active in minutes. Must set in order to use the \u003cspan pulumi-lang-nodejs=\"`resetExpiration`\" pulumi-lang-dotnet=\"`ResetExpiration`\" pulumi-lang-go=\"`resetExpiration`\" pulumi-lang-python=\"`reset_expiration`\" pulumi-lang-yaml=\"`resetExpiration`\" pulumi-lang-java=\"`resetExpiration`\"\u003e`resetExpiration`\u003c/span\u003e endpoint on this rule.\n"
                },
                "expired": {
                    "type": "boolean",
                    "description": "Indicates whether the policy is expired.\n"
                },
                "expiresAt": {
                    "type": "string",
                    "description": "Show the timestamp when the policy expires and stops applying.  The value must follow RFC 3339 and include a UTC offset.  The system accepts non-zero offsets but converts them to the equivalent UTC+00:00  value and returns timestamps with a trailing Z. Expiration policies ignore client  timezones and expire globally at the specified\u003cspan pulumi-lang-nodejs=\" expiresAt \" pulumi-lang-dotnet=\" ExpiresAt \" pulumi-lang-go=\" expiresAt \" pulumi-lang-python=\" expires_at \" pulumi-lang-yaml=\" expiresAt \" pulumi-lang-java=\" expiresAt \"\u003e expiresAt \u003c/span\u003etime.\n"
                }
            },
            "type": "object",
            "required": [
                "expiresAt"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "expired",
                        "expiresAt"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettings:ZeroTrustGatewayPolicyRuleSettings": {
            "properties": {
                "addHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Add custom headers to allowed requests as key-value pairs. Use header names as keys that map to arrays of header values. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "allowChildBypass": {
                    "type": "boolean",
                    "description": "Set to enable MSP children to bypass this rule. Only parent MSP accounts can set this. this rule. Settable for all types of rules.\n"
                },
                "auditSsh": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsAuditSsh:ZeroTrustGatewayPolicyRuleSettingsAuditSsh",
                    "description": "Define the settings for the Audit SSH action. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with \u003cspan pulumi-lang-nodejs=\"`auditSsh`\" pulumi-lang-dotnet=\"`AuditSsh`\" pulumi-lang-go=\"`auditSsh`\" pulumi-lang-python=\"`audit_ssh`\" pulumi-lang-yaml=\"`auditSsh`\" pulumi-lang-java=\"`auditSsh`\"\u003e`auditSsh`\u003c/span\u003e action.\n"
                },
                "bisoAdminControls": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsBisoAdminControls:ZeroTrustGatewayPolicyRuleSettingsBisoAdminControls",
                    "description": "Configure browser isolation behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`isolate`\" pulumi-lang-dotnet=\"`Isolate`\" pulumi-lang-go=\"`isolate`\" pulumi-lang-python=\"`isolate`\" pulumi-lang-yaml=\"`isolate`\" pulumi-lang-java=\"`isolate`\"\u003e`isolate`\u003c/span\u003e.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsBlockPage:ZeroTrustGatewayPolicyRuleSettingsBlockPage",
                    "description": "Configure custom block page settings. If missing or null, use the account settings. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockPageEnabled": {
                    "type": "boolean",
                    "description": "Enable the custom block page. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with action \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockReason": {
                    "type": "string",
                    "description": "Explain why the rule blocks the request. The custom block page shows this text (if enabled). Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules when the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "bypassParentRule": {
                    "type": "boolean",
                    "description": "Set to enable MSP accounts to bypass their parent's rules. Only MSP child accounts can set this. Settable for all types of rules.\n"
                },
                "checkSession": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsCheckSession:ZeroTrustGatewayPolicyRuleSettingsCheckSession",
                    "description": "Configure session check behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "dnsResolvers": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsDnsResolvers:ZeroTrustGatewayPolicyRuleSettingsDnsResolvers",
                    "description": "Configure custom resolvers to route queries that match the resolver policy. Unused with 'resolve*dns*through*cloudflare' or 'resolve*dns*internally' settings. DNS queries get routed to the address closest to their origin. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "egress": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsEgress:ZeroTrustGatewayPolicyRuleSettingsEgress",
                    "description": "Configure how Gateway Proxy traffic egresses. You can enable this setting for rules with Egress actions and filters, or omit it to indicate local egress via WARP IPs. Settable only for \u003cspan pulumi-lang-nodejs=\"`egress`\" pulumi-lang-dotnet=\"`Egress`\" pulumi-lang-go=\"`egress`\" pulumi-lang-python=\"`egress`\" pulumi-lang-yaml=\"`egress`\" pulumi-lang-java=\"`egress`\"\u003e`egress`\u003c/span\u003e rules.\n"
                },
                "forensicCopy": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsForensicCopy:ZeroTrustGatewayPolicyRuleSettingsForensicCopy",
                    "description": "Configure whether a copy of the HTTP request will be sent to storage when the rule matches.\n"
                },
                "ignoreCnameCategoryMatches": {
                    "type": "boolean",
                    "description": "Ignore category matches at CNAME domains in a response. When off, evaluate categories in this rule against all CNAME domain categories in the response. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "insecureDisableDnssecValidation": {
                    "type": "boolean",
                    "description": "Specify whether to disable DNSSEC validation (for Allow actions) [INSECURE]. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "ipCategories": {
                    "type": "boolean",
                    "description": "Enable IPs in DNS resolver category blocks. The system blocks only domain name categories unless you enable this setting. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "ipIndicatorFeeds": {
                    "type": "boolean",
                    "description": "Indicates whether to include IPs in DNS resolver indicator feed blocks. Default, indicator feeds block only domain names. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "l4override": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsL4override:ZeroTrustGatewayPolicyRuleSettingsL4override",
                    "description": "Send matching traffic to the supplied destination IP address and port. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`l4Override`\" pulumi-lang-dotnet=\"`L4Override`\" pulumi-lang-go=\"`l4Override`\" pulumi-lang-python=\"`l4_override`\" pulumi-lang-yaml=\"`l4Override`\" pulumi-lang-java=\"`l4Override`\"\u003e`l4Override`\u003c/span\u003e.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsNotificationSettings:ZeroTrustGatewayPolicyRuleSettingsNotificationSettings",
                    "description": "Configure a notification to display on the user's device when this rule matched. Settable for all types of rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "overrideHost": {
                    "type": "string",
                    "description": "Defines a hostname for override, for the matching DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "overrideIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Defines a an IP or set of IPs for overriding matched DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "payloadLog": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsPayloadLog:ZeroTrustGatewayPolicyRuleSettingsPayloadLog",
                    "description": "Configure DLP payload logging. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "quarantine": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsQuarantine:ZeroTrustGatewayPolicyRuleSettingsQuarantine",
                    "description": "Configure settings that apply to quarantine rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsRedirect:ZeroTrustGatewayPolicyRuleSettingsRedirect",
                    "description": "Apply settings to redirect rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e.\n"
                },
                "resolveDnsInternally": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally:ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally",
                    "description": "Configure to forward the query to the internal DNS service, passing the specified 'view*id' as input. Not used when 'dns*resolvers' is specified or 'resolve*dns*through*cloudflare' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "resolveDnsThroughCloudflare": {
                    "type": "boolean",
                    "description": "Enable to send queries that match the policy to Cloudflare's default 1.1.1.1 DNS resolver. Cannot set when 'dns*resolvers' specified or 'resolve*dns_internally' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "untrustedCert": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsUntrustedCert:ZeroTrustGatewayPolicyRuleSettingsUntrustedCert",
                    "description": "Configure behavior when an upstream certificate is invalid or an SSL error occurs. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "allowChildBypass",
                        "blockPageEnabled",
                        "blockReason",
                        "ignoreCnameCategoryMatches",
                        "insecureDisableDnssecValidation",
                        "ipCategories",
                        "ipIndicatorFeeds",
                        "overrideHost",
                        "overrideIps",
                        "resolveDnsThroughCloudflare"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsAuditSsh:ZeroTrustGatewayPolicyRuleSettingsAuditSsh": {
            "properties": {
                "commandLogging": {
                    "type": "boolean",
                    "description": "Enable SSH command logging.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsBisoAdminControls:ZeroTrustGatewayPolicyRuleSettingsBisoAdminControls": {
            "properties": {
                "copy": {
                    "type": "string",
                    "description": "Configure copy behavior. If set to remote*only, users cannot copy isolated content from the remote browser to the local clipboard. If this field is absent, copying remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dcp": {
                    "type": "boolean",
                    "description": "Set to false to enable copy-pasting. Only applies when `version == \"v1\"`.\n"
                },
                "dd": {
                    "type": "boolean",
                    "description": "Set to false to enable downloading. Only applies when `version == \"v1\"`.\n"
                },
                "dk": {
                    "type": "boolean",
                    "description": "Set to false to enable keyboard usage. Only applies when `version == \"v1\"`.\n"
                },
                "download": {
                    "type": "string",
                    "description": "Configure download behavior. When set to remote*only, users can view downloads but cannot save them. If this field is absent, downloading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dp": {
                    "type": "boolean",
                    "description": "Set to false to enable printing. Only applies when `version == \"v1\"`.\n"
                },
                "du": {
                    "type": "boolean",
                    "description": "Set to false to enable uploading. Only applies when `version == \"v1\"`.\n"
                },
                "keyboard": {
                    "type": "string",
                    "description": "Configure keyboard usage behavior. If this field is absent, keyboard usage remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "paste": {
                    "type": "string",
                    "description": "Configure paste behavior. If set to remote*only, users cannot paste content from the local clipboard into isolated pages. If this field is absent, pasting remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "printing": {
                    "type": "string",
                    "description": "Configure print behavior. Default, Printing is enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "upload": {
                    "type": "string",
                    "description": "Configure upload behavior. If this field is absent, uploading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "version": {
                    "type": "string",
                    "description": "Indicate which version of the browser isolation controls should apply.\nAvailable values: \"v1\", \"v2\".\n"
                },
                "wmId": {
                    "type": "string",
                    "description": "Specify the watermark ID (UUID) to apply to the isolated browser session. When present, enables watermark rendering in the isolated browser.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsBlockPage:ZeroTrustGatewayPolicyRuleSettingsBlockPage": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "targetUri"
            ]
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsCheckSession:ZeroTrustGatewayPolicyRuleSettingsCheckSession": {
            "properties": {
                "duration": {
                    "type": "string",
                    "description": "Sets the required session freshness threshold. The API returns a normalized version of this value.\n"
                },
                "enforce": {
                    "type": "boolean",
                    "description": "Enable session enforcement.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsDnsResolvers:ZeroTrustGatewayPolicyRuleSettingsDnsResolvers": {
            "properties": {
                "ipv4s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4:ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4"
                    }
                },
                "ipv6s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6:ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6"
                    }
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4:ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv4 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6:ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv6 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ]
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsEgress:ZeroTrustGatewayPolicyRuleSettingsEgress": {
            "properties": {
                "ipv4": {
                    "type": "string",
                    "description": "Specify the IPv4 address to use for egress.\n"
                },
                "ipv4Fallback": {
                    "type": "string",
                    "description": "Specify the fallback IPv4 address to use for egress when the primary IPv4 fails. Set '0.0.0.0' to indicate local egress via WARP IPs.\n"
                },
                "ipv6": {
                    "type": "string",
                    "description": "Specify the IPv6 range to use for egress.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsForensicCopy:ZeroTrustGatewayPolicyRuleSettingsForensicCopy": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable sending the copy to storage.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsL4override:ZeroTrustGatewayPolicyRuleSettingsL4override": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Defines the IPv4 or IPv6 address.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Defines a port number to use for TCP/UDP overrides.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsNotificationSettings:ZeroTrustGatewayPolicyRuleSettingsNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable notification.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Indicates whether to pass the context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Customize the message shown in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Defines an optional URL to direct users to additional information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsPayloadLog:ZeroTrustGatewayPolicyRuleSettingsPayloadLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable DLP payload logging for this rule.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsQuarantine:ZeroTrustGatewayPolicyRuleSettingsQuarantine": {
            "properties": {
                "fileTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the types of files to sandbox.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsRedirect:ZeroTrustGatewayPolicyRuleSettingsRedirect": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "preservePathAndQuery": {
                    "type": "boolean",
                    "description": "Specify whether to append the path and query parameters from the original request to target_uri.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "targetUri"
            ]
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally:ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally": {
            "properties": {
                "fallback": {
                    "type": "string",
                    "description": "Specify the fallback behavior to apply when the internal DNS response code differs from 'NOERROR' or when the response data contains only CNAME records for 'A' or 'AAAA' queries.\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"publicDns\"\" pulumi-lang-dotnet=\"\"PublicDns\"\" pulumi-lang-go=\"\"publicDns\"\" pulumi-lang-python=\"\"public_dns\"\" pulumi-lang-yaml=\"\"publicDns\"\" pulumi-lang-java=\"\"publicDns\"\"\u003e\"publicDns\"\u003c/span\u003e.\n"
                },
                "viewId": {
                    "type": "string",
                    "description": "Specify the internal DNS view identifier to pass to the internal DNS service.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicyRuleSettingsUntrustedCert:ZeroTrustGatewayPolicyRuleSettingsUntrustedCert": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Defines the action performed when an untrusted certificate seen. The default action an error with HTTP code 526.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"passThrough\"\" pulumi-lang-dotnet=\"\"PassThrough\"\" pulumi-lang-go=\"\"passThrough\"\" pulumi-lang-python=\"\"pass_through\"\" pulumi-lang-yaml=\"\"passThrough\"\" pulumi-lang-java=\"\"passThrough\"\"\u003e\"passThrough\"\u003c/span\u003e, \"block\", \"error\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewayPolicySchedule:ZeroTrustGatewayPolicySchedule": {
            "properties": {
                "fri": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Fridays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Fridays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "mon": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Mondays, in the increasing order from 00:00-24:00(capped at maximum of 6 time splits). If this parameter omitted, the rule is deactivated on Mondays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sat": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Saturdays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Saturdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sun": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Sundays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Sundays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "thu": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Thursdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Thursdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "Specify the time zone for rule evaluation. When a [valid time zone city name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) is provided, Gateway always uses the current time for that time zone. When this parameter is omitted, Gateway uses the time zone determined from the user's IP address. Colo time zone is used when the user's IP address does not resolve to a location.\n"
                },
                "tue": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Tuesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Tuesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "wed": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Wednesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Wednesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettings:ZeroTrustGatewaySettingsSettings": {
            "properties": {
                "activityLog": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsActivityLog:ZeroTrustGatewaySettingsSettingsActivityLog",
                    "description": "Specify activity log settings.\n"
                },
                "antivirus": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsAntivirus:ZeroTrustGatewaySettingsSettingsAntivirus",
                    "description": "Specify anti-virus settings.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsBlockPage:ZeroTrustGatewaySettingsSettingsBlockPage",
                    "description": "Specify block page layout settings.\n"
                },
                "bodyScanning": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsBodyScanning:ZeroTrustGatewaySettingsSettingsBodyScanning",
                    "description": "Specify the DLP inspection mode.\n"
                },
                "browserIsolation": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsBrowserIsolation:ZeroTrustGatewaySettingsSettingsBrowserIsolation",
                    "description": "Specify Clientless Browser Isolation settings.\n"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsCertificate:ZeroTrustGatewaySettingsSettingsCertificate",
                    "description": "Specify certificate settings for Gateway TLS interception. If unset, the Cloudflare Root CA handles interception.\n"
                },
                "customCertificate": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsCustomCertificate:ZeroTrustGatewaySettingsSettingsCustomCertificate",
                    "description": "Specify custom certificate settings for BYO-PKI. This field is deprecated; use \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "extendedEmailMatching": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsExtendedEmailMatching:ZeroTrustGatewaySettingsSettingsExtendedEmailMatching",
                    "description": "Configures user email settings for firewall policies. When you enable this, the system standardizes email addresses in the identity portion of the rule to match extended email variants in firewall policies. When you disable this setting, the system matches email addresses exactly as you provide them. Enable this setting if your email uses `.` or `+` modifiers.\n"
                },
                "fips": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsFips:ZeroTrustGatewaySettingsSettingsFips",
                    "description": "Specify FIPS settings.\n"
                },
                "hostSelector": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsHostSelector:ZeroTrustGatewaySettingsSettingsHostSelector",
                    "description": "Enable host selection in egress policies.\n"
                },
                "inspection": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsInspection:ZeroTrustGatewaySettingsSettingsInspection",
                    "description": "Define the proxy inspection mode.\n"
                },
                "protocolDetection": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsProtocolDetection:ZeroTrustGatewaySettingsSettingsProtocolDetection",
                    "description": "Specify whether to detect protocols from the initial bytes of client traffic.\n"
                },
                "sandbox": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsSandbox:ZeroTrustGatewaySettingsSettingsSandbox",
                    "description": "Specify whether to enable the sandbox.\n"
                },
                "tlsDecrypt": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsTlsDecrypt:ZeroTrustGatewaySettingsSettingsTlsDecrypt",
                    "description": "Specify whether to inspect encrypted HTTP traffic.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsActivityLog:ZeroTrustGatewaySettingsSettingsActivityLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to log activity.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsAntivirus:ZeroTrustGatewaySettingsSettingsAntivirus": {
            "properties": {
                "enabledDownloadPhase": {
                    "type": "boolean",
                    "description": "Specify whether to enable anti-virus scanning on downloads.\n"
                },
                "enabledUploadPhase": {
                    "type": "boolean",
                    "description": "Specify whether to enable anti-virus scanning on uploads.\n"
                },
                "failClosed": {
                    "type": "boolean",
                    "description": "Specify whether to block requests for unscannable files.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings:ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings",
                    "description": "Configure the message the user's device shows during an antivirus scan.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabledDownloadPhase",
                        "enabledUploadPhase",
                        "failClosed",
                        "notificationSettings"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings:ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable notifications.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to include context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Specify the message to show in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Specify a URL that directs users to more information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsBlockPage:ZeroTrustGatewaySettingsSettingsBlockPage": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "Specify the block page background color in `#rrggbb` format when the mode is customized*block*page.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable the custom block page.\n"
                },
                "footerText": {
                    "type": "string",
                    "description": "Specify the block page footer text when the mode is customized*block*page.\n"
                },
                "headerText": {
                    "type": "string",
                    "description": "Specify the block page header text when the mode is customized*block*page.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to append context to target*uri as query parameters. This applies only when the mode is redirect*uri.\n"
                },
                "logoPath": {
                    "type": "string",
                    "description": "Specify the full URL to the logo file when the mode is customized*block*page.\n"
                },
                "mailtoAddress": {
                    "type": "string",
                    "description": "Specify the admin email for users to contact when the mode is customized*block*page.\n"
                },
                "mailtoSubject": {
                    "type": "string",
                    "description": "Specify the subject line for emails created from the block page when the mode is customized*block*page.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Specify whether to redirect users to a Cloudflare-hosted block page or a customer-provided URI.\nAvailable values: \"\", \"customized*block*page\", \u003cspan pulumi-lang-nodejs=\"\"redirectUri\"\" pulumi-lang-dotnet=\"\"RedirectUri\"\" pulumi-lang-go=\"\"redirectUri\"\" pulumi-lang-python=\"\"redirect_uri\"\" pulumi-lang-yaml=\"\"redirectUri\"\" pulumi-lang-java=\"\"redirectUri\"\"\u003e\"redirectUri\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the block page title when the mode is customized*block*page.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Indicate the account tag of the account that shared this setting.\n"
                },
                "suppressFooter": {
                    "type": "boolean",
                    "description": "Specify whether to suppress detailed information at the bottom of the block page when the mode is customized*block*page.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to redirect users to when the mode is redirect_uri.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the setting.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "readOnly",
                        "sourceAccount",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsBodyScanning:ZeroTrustGatewaySettingsSettingsBodyScanning": {
            "properties": {
                "inspectionMode": {
                    "type": "string",
                    "description": "Specify the inspection mode as either \u003cspan pulumi-lang-nodejs=\"`deep`\" pulumi-lang-dotnet=\"`Deep`\" pulumi-lang-go=\"`deep`\" pulumi-lang-python=\"`deep`\" pulumi-lang-yaml=\"`deep`\" pulumi-lang-java=\"`deep`\"\u003e`deep`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`shallow`\" pulumi-lang-dotnet=\"`Shallow`\" pulumi-lang-go=\"`shallow`\" pulumi-lang-python=\"`shallow`\" pulumi-lang-yaml=\"`shallow`\" pulumi-lang-java=\"`shallow`\"\u003e`shallow`\u003c/span\u003e.\nAvailable values: \"deep\", \"shallow\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsBrowserIsolation:ZeroTrustGatewaySettingsSettingsBrowserIsolation": {
            "properties": {
                "nonIdentityEnabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable non-identity onramp support for Browser Isolation.\n"
                },
                "urlBrowserIsolationEnabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable Clientless Browser Isolation.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsCertificate:ZeroTrustGatewaySettingsSettingsCertificate": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Specify the UUID of the certificate used for interception. Ensure the certificate is available at the edge(previously called 'active'). A nil UUID directs Cloudflare to use the Root CA.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsCustomCertificate:ZeroTrustGatewaySettingsSettingsCustomCertificate": {
            "properties": {
                "bindingStatus": {
                    "type": "string",
                    "description": "Indicate the internal certificate status.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable a custom certificate authority for signing Gateway traffic.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Specify the UUID of the certificate (ID from MTLS certificate store).\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bindingStatus",
                        "enabled",
                        "updatedAt"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsExtendedEmailMatching:ZeroTrustGatewaySettingsSettingsExtendedEmailMatching": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to match all variants of user emails (with + or . modifiers) used as criteria in Firewall policies.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Indicate the account tag of the account that shared this setting.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the setting.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "readOnly",
                        "sourceAccount",
                        "version"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsFips:ZeroTrustGatewaySettingsSettingsFips": {
            "properties": {
                "tls": {
                    "type": "boolean",
                    "description": "Enforce cipher suites and TLS versions compliant with FIPS 140-2.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsHostSelector:ZeroTrustGatewaySettingsSettingsHostSelector": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable filtering via hosts for egress policies.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsInspection:ZeroTrustGatewaySettingsSettingsInspection": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Define the proxy inspection mode.   1. static: Gateway applies static inspection to HTTP on TCP(80). With TLS decryption on, Gateway inspects HTTPS traffic on TCP(443) and UDP(443).   2. dynamic: Gateway applies protocol detection to inspect HTTP and HTTPS traffic on any port. TLS decryption must remain on to inspect HTTPS traffic.\nAvailable values: \"static\", \"dynamic\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsProtocolDetection:ZeroTrustGatewaySettingsSettingsProtocolDetection": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to detect protocols from the initial bytes of client traffic.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsSandbox:ZeroTrustGatewaySettingsSettingsSandbox": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable the sandbox.\n"
                },
                "fallbackAction": {
                    "type": "string",
                    "description": "Specify the action to take when the system cannot scan the file.\nAvailable values: \"allow\", \"block\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustGatewaySettingsSettingsTlsDecrypt:ZeroTrustGatewaySettingsSettingsTlsDecrypt": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to inspect encrypted HTTP traffic.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustListItem:ZeroTrustListItem": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Provide the list item description (optional).\n"
                },
                "value": {
                    "type": "string",
                    "description": "Specify the item value.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustLocalFallbackDomainDomain:ZeroTrustLocalFallbackDomainDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "required": [
                "suffix"
            ]
        },
        "cloudflare:index/ZeroTrustOrganizationCustomPages:ZeroTrustOrganizationCustomPages": {
            "properties": {
                "forbidden": {
                    "type": "string",
                    "description": "The uid of the custom page to use when a user is denied access after failing a non-identity rule.\n"
                },
                "identityDenied": {
                    "type": "string",
                    "description": "The uid of the custom page to use when a user is denied access.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustOrganizationLoginDesign:ZeroTrustOrganizationLoginDesign": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color on your login page.\n"
                },
                "footerText": {
                    "type": "string",
                    "description": "The text at the bottom of your login page.\n"
                },
                "headerText": {
                    "type": "string",
                    "description": "The text at the top of your login page.\n"
                },
                "logoPath": {
                    "type": "string",
                    "description": "The URL of the logo on your login page.\n"
                },
                "textColor": {
                    "type": "string",
                    "description": "The text color on your login page.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustOrganizationMfaConfig:ZeroTrustOrganizationMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with. \u003cspan pulumi-lang-nodejs=\"`sshPivKey`\" pulumi-lang-dotnet=\"`SshPivKey`\" pulumi-lang-go=\"`sshPivKey`\" pulumi-lang-python=\"`ssh_piv_key`\" pulumi-lang-yaml=\"`sshPivKey`\" pulumi-lang-java=\"`sshPivKey`\"\u003e`sshPivKey`\u003c/span\u003e is only relevant for infrastructure applications.\n"
                },
                "amrMatchingSessionDuration": {
                    "type": "string",
                    "description": "Allows a user to skip MFA via Authentication Method Reference (AMR) matching when the AMR claim provided by the IdP the user used to authenticate contains \"mfa\". Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days).\n"
                },
                "requiredAaguids": {
                    "type": "string",
                    "description": "Specifies a Cloudflare List of required FIDO2 authenticator device AAGUIDs.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustOrganizationMfaSshPivKeyRequirements:ZeroTrustOrganizationMfaSshPivKeyRequirements": {
            "properties": {
                "pinPolicy": {
                    "type": "string",
                    "description": "Defines when a PIN is required to use the SSH key. Valid values: \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e (no PIN required), \u003cspan pulumi-lang-nodejs=\"`once`\" pulumi-lang-dotnet=\"`Once`\" pulumi-lang-go=\"`once`\" pulumi-lang-python=\"`once`\" pulumi-lang-yaml=\"`once`\" pulumi-lang-java=\"`once`\"\u003e`once`\u003c/span\u003e (PIN required once per session), \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e (PIN required for each use).\nAvailable values: \"never\", \"once\", \"always\".\n"
                },
                "requireFipsDevice": {
                    "type": "boolean",
                    "description": "Requires the SSH PIV key to be stored on a FIPS 140-2 Level 1 or higher validated device.\n"
                },
                "sshKeySizes": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Specifies the allowed SSH key sizes in bits. Valid sizes depend on key type. Ed25519 has a fixed key size and does not accept this parameter.\n"
                },
                "sshKeyTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the allowed SSH key types. Valid values are \u003cspan pulumi-lang-nodejs=\"`ecdsa`\" pulumi-lang-dotnet=\"`Ecdsa`\" pulumi-lang-go=\"`ecdsa`\" pulumi-lang-python=\"`ecdsa`\" pulumi-lang-yaml=\"`ecdsa`\" pulumi-lang-java=\"`ecdsa`\"\u003e`ecdsa`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ed25519`\" pulumi-lang-dotnet=\"`Ed25519`\" pulumi-lang-go=\"`ed25519`\" pulumi-lang-python=\"`ed25519`\" pulumi-lang-yaml=\"`ed25519`\" pulumi-lang-java=\"`ed25519`\"\u003e`ed25519`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`rsa`\" pulumi-lang-dotnet=\"`Rsa`\" pulumi-lang-go=\"`rsa`\" pulumi-lang-python=\"`rsa`\" pulumi-lang-yaml=\"`rsa`\" pulumi-lang-java=\"`rsa`\"\u003e`rsa`\u003c/span\u003e.\n"
                },
                "touchPolicy": {
                    "type": "string",
                    "description": "Defines when physical touch is required to use the SSH key. Valid values: \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e (no touch required), \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e (touch required for each use), \u003cspan pulumi-lang-nodejs=\"`cached`\" pulumi-lang-dotnet=\"`Cached`\" pulumi-lang-go=\"`cached`\" pulumi-lang-python=\"`cached`\" pulumi-lang-yaml=\"`cached`\" pulumi-lang-java=\"`cached`\"\u003e`cached`\u003c/span\u003e (touch cached for 15 seconds).\nAvailable values: \"never\", \"always\", \"cached\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustRiskBehaviorBehaviors:ZeroTrustRiskBehaviorBehaviors": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "Available values: \"low\", \"medium\", \"high\".\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "riskLevel"
            ]
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfig:ZeroTrustTunnelCloudflaredConfigConfig": {
            "properties": {
                "ingresses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigIngress:ZeroTrustTunnelCloudflaredConfigConfigIngress"
                    },
                    "description": "List of public hostname definitions. At least one ingress rule needs to be defined for the tunnel.\n"
                },
                "originRequest": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigOriginRequest:ZeroTrustTunnelCloudflaredConfigConfigOriginRequest",
                    "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigIngress:ZeroTrustTunnelCloudflaredConfigConfigIngress": {
            "properties": {
                "hostname": {
                    "type": "string",
                    "description": "Public hostname for this service.\n"
                },
                "originRequest": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest:ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest",
                    "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Requests with this path route to this public hostname.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Protocol and address of destination server. Supported protocols: http://, https://, unix://, tcp://, ssh://, rdp://, unix+tls://, smb://. Alternatively can return a HTTP status code http*status:[code] e.g. 'http*status:404'.\n"
                }
            },
            "type": "object",
            "required": [
                "service"
            ]
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest:ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest": {
            "properties": {
                "access": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess:ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess",
                    "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header.\n"
                },
                "caPool": {
                    "type": "string",
                    "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare.\n"
                },
                "connectTimeout": {
                    "type": "integer",
                    "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout.\n"
                },
                "disableChunkedEncoding": {
                    "type": "boolean",
                    "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server.\n"
                },
                "http2Origin": {
                    "type": "boolean",
                    "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https.\n"
                },
                "httpHostHeader": {
                    "type": "string",
                    "description": "Sets the HTTP Host header on requests sent to the local service.\n"
                },
                "keepAliveConnections": {
                    "type": "integer",
                    "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections.\n"
                },
                "keepAliveTimeout": {
                    "type": "integer",
                    "description": "Timeout after which an idle keepalive connection can be discarded.\n"
                },
                "matchSnItoHost": {
                    "type": "boolean",
                    "description": "Auto configure the Hostname on the origin server certificate.\n"
                },
                "noHappyEyeballs": {
                    "type": "boolean",
                    "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols.\n"
                },
                "noTlsVerify": {
                    "type": "boolean",
                    "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted.\n"
                },
                "originServerName": {
                    "type": "string",
                    "description": "Hostname that cloudflared should expect from your origin server certificate.\n"
                },
                "proxyType": {
                    "type": "string",
                    "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
                },
                "tcpKeepAlive": {
                    "type": "integer",
                    "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server.\n"
                },
                "tlsTimeout": {
                    "type": "integer",
                    "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess:ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess": {
            "properties": {
                "audTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "Deny traffic that has not fulfilled Access authorization.\n"
                },
                "teamName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "audTags",
                "teamName"
            ]
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigOriginRequest:ZeroTrustTunnelCloudflaredConfigConfigOriginRequest": {
            "properties": {
                "access": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess:ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess",
                    "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header.\n"
                },
                "caPool": {
                    "type": "string",
                    "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare.\n"
                },
                "connectTimeout": {
                    "type": "integer",
                    "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout.\n"
                },
                "disableChunkedEncoding": {
                    "type": "boolean",
                    "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server.\n"
                },
                "http2Origin": {
                    "type": "boolean",
                    "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https.\n"
                },
                "httpHostHeader": {
                    "type": "string",
                    "description": "Sets the HTTP Host header on requests sent to the local service.\n"
                },
                "keepAliveConnections": {
                    "type": "integer",
                    "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections.\n"
                },
                "keepAliveTimeout": {
                    "type": "integer",
                    "description": "Timeout after which an idle keepalive connection can be discarded.\n"
                },
                "matchSnItoHost": {
                    "type": "boolean",
                    "description": "Auto configure the Hostname on the origin server certificate.\n"
                },
                "noHappyEyeballs": {
                    "type": "boolean",
                    "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols.\n"
                },
                "noTlsVerify": {
                    "type": "boolean",
                    "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted.\n"
                },
                "originServerName": {
                    "type": "string",
                    "description": "Hostname that cloudflared should expect from your origin server certificate.\n"
                },
                "proxyType": {
                    "type": "string",
                    "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
                },
                "tcpKeepAlive": {
                    "type": "integer",
                    "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server.\n"
                },
                "tlsTimeout": {
                    "type": "integer",
                    "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess:ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess": {
            "properties": {
                "audTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "Deny traffic that has not fulfilled Access authorization.\n"
                },
                "teamName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "audTags",
                "teamName"
            ]
        },
        "cloudflare:index/ZeroTrustTunnelCloudflaredConnection:ZeroTrustTunnelCloudflaredConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "clientId",
                        "clientVersion",
                        "coloName",
                        "id",
                        "isPendingReconnect",
                        "openedAt",
                        "originIp",
                        "uuid"
                    ]
                }
            }
        },
        "cloudflare:index/ZeroTrustTunnelWarpConnectorConnection:ZeroTrustTunnelWarpConnectorConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "clientId",
                        "clientVersion",
                        "coloName",
                        "id",
                        "isPendingReconnect",
                        "openedAt",
                        "originIp",
                        "uuid"
                    ]
                }
            }
        },
        "cloudflare:index/ZoneAccount:ZoneAccount": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZoneCacheVariantsValue:ZoneCacheVariantsValue": {
            "properties": {
                "avifs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for avif.\n"
                },
                "bmps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for bmp.\n"
                },
                "gifs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for gif.\n"
                },
                "jp2s": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jp2.\n"
                },
                "jpegs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jpeg.\n"
                },
                "jpg2s": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jpg2.\n"
                },
                "jpgs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jpg.\n"
                },
                "pngs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for png.\n"
                },
                "tiffs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for tiff.\n"
                },
                "tifs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for tif.\n"
                },
                "webps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for webp.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZoneDnsSettingsInternalDns:ZoneDnsSettingsInternalDns": {
            "properties": {
                "referenceZoneId": {
                    "type": "string",
                    "description": "The ID of the zone to fallback to.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZoneDnsSettingsNameservers:ZoneDnsSettingsNameservers": {
            "properties": {
                "nsSet": {
                    "type": "integer",
                    "description": "Configured nameserver set to be used for this zone\n"
                },
                "type": {
                    "type": "string",
                    "description": "Nameserver type\nAvailable values: \"cloudflare.standard\", \"custom.account\", \"custom.tenant\", \"custom.zone\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZoneDnsSettingsSoa:ZoneDnsSettingsSoa": {
            "properties": {
                "expire": {
                    "type": "number",
                    "description": "Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.\n"
                },
                "minTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) for negative caching of records within the zone.\n"
                },
                "mname": {
                    "type": "string",
                    "description": "The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.\n"
                },
                "refresh": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.\n"
                },
                "retry": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.\n"
                },
                "rname": {
                    "type": "string",
                    "description": "The email address of the zone administrator, with the first label representing the local part of the email address.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the SOA record itself.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZoneLockdownConfiguration:ZoneLockdownConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e when specifying an IP address in the Zone Lockdown rule.\nAvailable values: \"ip\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The IP address to match. This address will be compared to the IP address of incoming requests.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/ZoneMeta:ZoneMeta": {
            "properties": {
                "cdnOnly": {
                    "type": "boolean",
                    "description": "The zone is only configured for CDN.\n"
                },
                "customCertificateQuota": {
                    "type": "integer",
                    "description": "Number of Custom Certificates the zone can have.\n"
                },
                "dnsOnly": {
                    "type": "boolean",
                    "description": "The zone is only configured for DNS.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "The zone is setup with Foundation DNS.\n"
                },
                "pageRuleQuota": {
                    "type": "integer",
                    "description": "Number of Page Rules a zone can have.\n"
                },
                "phishingDetected": {
                    "type": "boolean",
                    "description": "The zone has been flagged for phishing.\n"
                },
                "step": {
                    "type": "integer"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cdnOnly",
                        "customCertificateQuota",
                        "dnsOnly",
                        "foundationDns",
                        "pageRuleQuota",
                        "phishingDetected",
                        "step"
                    ]
                }
            }
        },
        "cloudflare:index/ZoneOwner:ZoneOwner": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the owner.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of owner.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name",
                        "type"
                    ]
                }
            }
        },
        "cloudflare:index/ZonePlan:ZonePlan": {
            "properties": {
                "canSubscribe": {
                    "type": "boolean",
                    "description": "States if the subscription can be activated.\n"
                },
                "currency": {
                    "type": "string",
                    "description": "The denomination of the customer.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "If this Zone is managed by another company.\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "How often the customer is billed.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "isSubscribed": {
                    "type": "boolean",
                    "description": "States if the subscription active.\n"
                },
                "legacyDiscount": {
                    "type": "boolean",
                    "description": "If the legacy discount applies to this Zone.\n"
                },
                "legacyId": {
                    "type": "string",
                    "description": "The legacy name of the plan.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the owner.\n"
                },
                "price": {
                    "type": "number",
                    "description": "How much the customer is paying.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "canSubscribe",
                        "currency",
                        "externallyManaged",
                        "frequency",
                        "id",
                        "isSubscribed",
                        "legacyDiscount",
                        "legacyId",
                        "name",
                        "price"
                    ]
                }
            }
        },
        "cloudflare:index/ZoneSubscriptionRatePlan:ZoneSubscriptionRatePlan": {
            "properties": {
                "currency": {
                    "type": "string",
                    "description": "The currency applied to the rate plan subscription.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "Whether this rate plan is managed externally from Cloudflare.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the rate plan.\nAvailable values: \"free\", \"lite\", \"pro\", \"pro*plus\", \"business\", \"enterprise\", \"partners*free\", \"partners*pro\", \"partners*business\", \"partners*enterprise\", \"partners*ent\".\n"
                },
                "isContract": {
                    "type": "boolean",
                    "description": "Whether a rate plan is enterprise-based (or newly adopted term contract).\n"
                },
                "publicName": {
                    "type": "string",
                    "description": "The full name of the rate plan.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope that this rate plan applies to.\n"
                },
                "sets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of sets this rate plan applies to. Returns array of strings.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "currency",
                        "externallyManaged",
                        "isContract",
                        "publicName",
                        "scope",
                        "sets"
                    ]
                }
            }
        },
        "cloudflare:index/ZoneTenant:ZoneTenant": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Tenant account.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "cloudflare:index/ZoneTenantUnit:ZoneTenantUnit": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "cloudflare:index/getAccessRuleConfiguration:getAccessRuleConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e when specifying an IP address in the rule.\nAvailable values: \"ip\", \"ip6\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e, \"asn\", \"country\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The IP address to match. This address will be compared to the IP address of incoming requests.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccessRuleFilter:getAccessRuleFilter": {
            "properties": {
                "configuration": {
                    "$ref": "#/types/cloudflare:index/getAccessRuleFilterConfiguration:getAccessRuleFilterConfiguration"
                },
                "direction": {
                    "type": "string",
                    "description": "Defines the direction used to sort returned rules.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "match": {
                    "type": "string",
                    "description": "Defines the search requirements. When set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, all the search requirements must match. When set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, only one of the search requirements has to match.\nAvailable values: \"any\", \"all\".\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "notes": {
                    "type": "string",
                    "description": "Defines the string to search for in the notes of existing IP Access rules.\nNotes: For example, the string 'attack' would match IP Access rules with notes 'Attack 26/02' and 'Attack 27/02'. The search is case insensitive.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Defines the field used to sort returned rules.\nAvailable values: \"configuration.target\", \"configuration.value\", \"mode\".\n"
                }
            },
            "type": "object",
            "required": [
                "match"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccessRuleFilterConfiguration:getAccessRuleFilterConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "Defines the target to search in existing rules.\nAvailable values: \"ip\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e, \"asn\", \"country\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Defines the target value to search for in existing rules: an IP address, an IP address range, or a country code, depending on the provided `configuration.target`.\nNotes: You can search for a single IPv4 address, an IP address range with a subnet of '/16' or '/24', or a two-letter ISO-3166-1 alpha-2 country code.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccessRuleScope:getAccessRuleScope": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Defines the scope of the rule.\nAvailable values: \"user\", \"organization\".\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "id",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccessRulesConfiguration:getAccessRulesConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "Defines the target to search in existing rules.\nAvailable values: \"ip\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e, \"asn\", \"country\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Defines the target value to search for in existing rules: an IP address, an IP address range, or a country code, depending on the provided `configuration.target`.\nNotes: You can search for a single IPv4 address, an IP address range with a subnet of '/16' or '/24', or a two-letter ISO-3166-1 alpha-2 country code.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccessRulesResult:getAccessRulesResult": {
            "properties": {
                "allowedModes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The available actions that a rule can apply to a matched request.\n"
                },
                "configuration": {
                    "$ref": "#/types/cloudflare:index/getAccessRulesResultConfiguration:getAccessRulesResultConfiguration",
                    "description": "The rule configuration.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was created.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the IP Access rule.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was last modified.\n"
                },
                "notes": {
                    "type": "string",
                    "description": "An informative summary of the rule, typically used as a reminder or explanation.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/getAccessRulesResultScope:getAccessRulesResultScope",
                    "description": "All zones owned by the user will have the rule applied.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedModes",
                "configuration",
                "createdOn",
                "id",
                "mode",
                "modifiedOn",
                "notes",
                "scope"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccessRulesResultConfiguration:getAccessRulesResultConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e when specifying an IP address in the rule.\nAvailable values: \"ip\", \"ip6\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e, \"asn\", \"country\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The IP address to match. This address will be compared to the IP address of incoming requests.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccessRulesResultScope:getAccessRulesResultScope": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Defines the scope of the rule.\nAvailable values: \"user\", \"organization\".\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "id",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountApiTokenPermissionGroupsListResult:getAccountApiTokenPermissionGroupsListResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Public ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Permission Group Name\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Resources to which the Permission Group is scoped\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountApiTokenPermissionGroupsPermissionGroup:getAccountApiTokenPermissionGroupsPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Public ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Permission Group Name\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Resources to which the Permission Group is scoped\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountDnsSettingsInternalViewFilter:getAccountDnsSettingsInternalViewFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order DNS views in.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "match": {
                    "type": "string",
                    "description": "Whether to match all search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead.\nAvailable values: \"any\", \"all\".\n"
                },
                "name": {
                    "$ref": "#/types/cloudflare:index/getAccountDnsSettingsInternalViewFilterName:getAccountDnsSettingsInternalViewFilterName"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order DNS views by.\nAvailable values: \"name\", \"created*on\", \"modified*on\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "A zone ID that exists in the zones list for the view.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "A zone name that exists in the zones list for the view.\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "match"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountDnsSettingsInternalViewFilterName:getAccountDnsSettingsInternalViewFilterName": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS view name.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS view name.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS view name.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS view name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccountDnsSettingsInternalViewsName:getAccountDnsSettingsInternalViewsName": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS view name.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS view name.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS view name.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS view name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccountDnsSettingsInternalViewsResult:getAccountDnsSettingsInternalViewsResult": {
            "properties": {
                "createdTime": {
                    "type": "string",
                    "description": "When the view was created.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "modifiedTime": {
                    "type": "string",
                    "description": "When the view was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the view.\n"
                },
                "zones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of zones linked to this view.\n"
                }
            },
            "type": "object",
            "required": [
                "createdTime",
                "id",
                "modifiedTime",
                "name",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountDnsSettingsZoneDefaults:getAccountDnsSettingsZoneDefaults": {
            "properties": {
                "flattenAllCnames": {
                    "type": "boolean",
                    "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.\n"
                },
                "internalDns": {
                    "$ref": "#/types/cloudflare:index/getAccountDnsSettingsZoneDefaultsInternalDns:getAccountDnsSettingsZoneDefaultsInternalDns",
                    "description": "Settings for this internal zone.\n"
                },
                "multiProvider": {
                    "type": "boolean",
                    "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.\n"
                },
                "nameservers": {
                    "$ref": "#/types/cloudflare:index/getAccountDnsSettingsZoneDefaultsNameservers:getAccountDnsSettingsZoneDefaultsNameservers",
                    "description": "Settings determining the nameservers through which the zone should be available.\n"
                },
                "nsTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the zone's nameserver (NS) records.\n"
                },
                "secondaryOverrides": {
                    "type": "boolean",
                    "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.\n"
                },
                "soa": {
                    "$ref": "#/types/cloudflare:index/getAccountDnsSettingsZoneDefaultsSoa:getAccountDnsSettingsZoneDefaultsSoa",
                    "description": "Components of the zone's SOA record.\n"
                },
                "zoneMode": {
                    "type": "string",
                    "description": "Whether the zone mode is a regular or CDN/DNS only zone.\nAvailable values: \"standard\", \"cdn*only\", \"dns*only\".\n"
                }
            },
            "type": "object",
            "required": [
                "flattenAllCnames",
                "foundationDns",
                "internalDns",
                "multiProvider",
                "nameservers",
                "nsTtl",
                "secondaryOverrides",
                "soa",
                "zoneMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountDnsSettingsZoneDefaultsInternalDns:getAccountDnsSettingsZoneDefaultsInternalDns": {
            "properties": {
                "referenceZoneId": {
                    "type": "string",
                    "description": "The ID of the zone to fallback to.\n"
                }
            },
            "type": "object",
            "required": [
                "referenceZoneId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountDnsSettingsZoneDefaultsNameservers:getAccountDnsSettingsZoneDefaultsNameservers": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Nameserver type\nAvailable values: \"cloudflare.standard\", \"cloudflare.standard.random\", \"custom.account\", \"custom.tenant\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountDnsSettingsZoneDefaultsSoa:getAccountDnsSettingsZoneDefaultsSoa": {
            "properties": {
                "expire": {
                    "type": "number",
                    "description": "Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.\n"
                },
                "minTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) for negative caching of records within the zone.\n"
                },
                "mname": {
                    "type": "string",
                    "description": "The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.\n"
                },
                "refresh": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.\n"
                },
                "retry": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.\n"
                },
                "rname": {
                    "type": "string",
                    "description": "The email address of the zone administrator, with the first label representing the local part of the email address.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the SOA record itself.\n"
                }
            },
            "type": "object",
            "required": [
                "expire",
                "minTtl",
                "mname",
                "refresh",
                "retry",
                "rname",
                "ttl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountFilter:getAccountFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the account.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccountManagedBy:getAccountManagedBy": {
            "properties": {
                "parentOrgId": {
                    "type": "string",
                    "description": "ID of the parent Organization, if one exists\n"
                },
                "parentOrgName": {
                    "type": "string",
                    "description": "Name of the parent Organization, if one exists\n"
                }
            },
            "type": "object",
            "required": [
                "parentOrgId",
                "parentOrgName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberFilter:getAccountMemberFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order results by.\nAvailable values: \"user.first*name\", \"user.last*name\", \"user.email\", \"status\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "A member's status in the account.\nAvailable values: \"accepted\", \"pending\", \"rejected\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccountMemberPolicy:getAccountMemberPolicy": {
            "properties": {
                "access": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberPolicyPermissionGroup:getAccountMemberPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resourceGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberPolicyResourceGroup:getAccountMemberPolicyResourceGroup"
                    },
                    "description": "A list of resource groups that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "id",
                "permissionGroups",
                "resourceGroups"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberPolicyPermissionGroup:getAccountMemberPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberPolicyPermissionGroupMeta:getAccountMemberPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberPolicyPermissionGroupMeta:getAccountMemberPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberPolicyResourceGroup:getAccountMemberPolicyResourceGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the resource group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberPolicyResourceGroupMeta:getAccountMemberPolicyResourceGroupMeta",
                    "description": "Attributes associated to the resource group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the resource group.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberPolicyResourceGroupScope:getAccountMemberPolicyResourceGroupScope"
                    },
                    "description": "The scope associated to the resource group\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberPolicyResourceGroupMeta:getAccountMemberPolicyResourceGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberPolicyResourceGroupScope:getAccountMemberPolicyResourceGroupScope": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)\n"
                },
                "objects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberPolicyResourceGroupScopeObject:getAccountMemberPolicyResourceGroupScopeObject"
                    },
                    "description": "A list of scope objects for additional context.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "objects"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberPolicyResourceGroupScopeObject:getAccountMemberPolicyResourceGroupScopeObject": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)\n"
                }
            },
            "type": "object",
            "required": [
                "key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRole:getAccountMemberRole": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of role's permissions.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Role identifier tag.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Role name.\n"
                },
                "permissions": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissions:getAccountMemberRolePermissions"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "name",
                "permissions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissions:getAccountMemberRolePermissions": {
            "properties": {
                "analytics": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsAnalytics:getAccountMemberRolePermissionsAnalytics"
                },
                "billing": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsBilling:getAccountMemberRolePermissionsBilling"
                },
                "cachePurge": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsCachePurge:getAccountMemberRolePermissionsCachePurge"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsDns:getAccountMemberRolePermissionsDns"
                },
                "dnsRecords": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsDnsRecords:getAccountMemberRolePermissionsDnsRecords"
                },
                "lb": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsLb:getAccountMemberRolePermissionsLb"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsLogs:getAccountMemberRolePermissionsLogs"
                },
                "organization": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsOrganization:getAccountMemberRolePermissionsOrganization"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsSsl:getAccountMemberRolePermissionsSsl"
                },
                "waf": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsWaf:getAccountMemberRolePermissionsWaf"
                },
                "zoneSettings": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsZoneSettings:getAccountMemberRolePermissionsZoneSettings"
                },
                "zones": {
                    "$ref": "#/types/cloudflare:index/getAccountMemberRolePermissionsZones:getAccountMemberRolePermissionsZones"
                }
            },
            "type": "object",
            "required": [
                "analytics",
                "billing",
                "cachePurge",
                "dns",
                "dnsRecords",
                "lb",
                "logs",
                "organization",
                "ssl",
                "waf",
                "zoneSettings",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsAnalytics:getAccountMemberRolePermissionsAnalytics": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsBilling:getAccountMemberRolePermissionsBilling": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsCachePurge:getAccountMemberRolePermissionsCachePurge": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsDns:getAccountMemberRolePermissionsDns": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsDnsRecords:getAccountMemberRolePermissionsDnsRecords": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsLb:getAccountMemberRolePermissionsLb": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsLogs:getAccountMemberRolePermissionsLogs": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsOrganization:getAccountMemberRolePermissionsOrganization": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsSsl:getAccountMemberRolePermissionsSsl": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsWaf:getAccountMemberRolePermissionsWaf": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsZoneSettings:getAccountMemberRolePermissionsZoneSettings": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberRolePermissionsZones:getAccountMemberRolePermissionsZones": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMemberUser:getAccountMemberUser": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "firstName": {
                    "type": "string",
                    "description": "User's first name\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "lastName": {
                    "type": "string",
                    "description": "User's last name\n"
                },
                "twoFactorAuthenticationEnabled": {
                    "type": "boolean",
                    "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "firstName",
                "id",
                "lastName",
                "twoFactorAuthenticationEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResult:getAccountMembersResult": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Membership identifier tag.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicy:getAccountMembersResultPolicy"
                    },
                    "description": "Access policy for the membership\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMembersResultRole:getAccountMembersResultRole"
                    },
                    "description": "Roles assigned to this Member.\n"
                },
                "status": {
                    "type": "string",
                    "description": "A member's status in the account.\nAvailable values: \"accepted\", \"pending\".\n"
                },
                "user": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultUser:getAccountMembersResultUser",
                    "description": "Details of the user associated to the membership.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "id",
                "policies",
                "roles",
                "status",
                "user"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicy:getAccountMembersResultPolicy": {
            "properties": {
                "access": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicyPermissionGroup:getAccountMembersResultPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resourceGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicyResourceGroup:getAccountMembersResultPolicyResourceGroup"
                    },
                    "description": "A list of resource groups that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "id",
                "permissionGroups",
                "resourceGroups"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicyPermissionGroup:getAccountMembersResultPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicyPermissionGroupMeta:getAccountMembersResultPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicyPermissionGroupMeta:getAccountMembersResultPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicyResourceGroup:getAccountMembersResultPolicyResourceGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the resource group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicyResourceGroupMeta:getAccountMembersResultPolicyResourceGroupMeta",
                    "description": "Attributes associated to the resource group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the resource group.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicyResourceGroupScope:getAccountMembersResultPolicyResourceGroupScope"
                    },
                    "description": "The scope associated to the resource group\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicyResourceGroupMeta:getAccountMembersResultPolicyResourceGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicyResourceGroupScope:getAccountMembersResultPolicyResourceGroupScope": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)\n"
                },
                "objects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountMembersResultPolicyResourceGroupScopeObject:getAccountMembersResultPolicyResourceGroupScopeObject"
                    },
                    "description": "A list of scope objects for additional context.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "objects"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultPolicyResourceGroupScopeObject:getAccountMembersResultPolicyResourceGroupScopeObject": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)\n"
                }
            },
            "type": "object",
            "required": [
                "key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRole:getAccountMembersResultRole": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of role's permissions.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Role identifier tag.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Role name.\n"
                },
                "permissions": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissions:getAccountMembersResultRolePermissions"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "name",
                "permissions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissions:getAccountMembersResultRolePermissions": {
            "properties": {
                "analytics": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsAnalytics:getAccountMembersResultRolePermissionsAnalytics"
                },
                "billing": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsBilling:getAccountMembersResultRolePermissionsBilling"
                },
                "cachePurge": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsCachePurge:getAccountMembersResultRolePermissionsCachePurge"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsDns:getAccountMembersResultRolePermissionsDns"
                },
                "dnsRecords": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsDnsRecords:getAccountMembersResultRolePermissionsDnsRecords"
                },
                "lb": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsLb:getAccountMembersResultRolePermissionsLb"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsLogs:getAccountMembersResultRolePermissionsLogs"
                },
                "organization": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsOrganization:getAccountMembersResultRolePermissionsOrganization"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsSsl:getAccountMembersResultRolePermissionsSsl"
                },
                "waf": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsWaf:getAccountMembersResultRolePermissionsWaf"
                },
                "zoneSettings": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsZoneSettings:getAccountMembersResultRolePermissionsZoneSettings"
                },
                "zones": {
                    "$ref": "#/types/cloudflare:index/getAccountMembersResultRolePermissionsZones:getAccountMembersResultRolePermissionsZones"
                }
            },
            "type": "object",
            "required": [
                "analytics",
                "billing",
                "cachePurge",
                "dns",
                "dnsRecords",
                "lb",
                "logs",
                "organization",
                "ssl",
                "waf",
                "zoneSettings",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsAnalytics:getAccountMembersResultRolePermissionsAnalytics": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsBilling:getAccountMembersResultRolePermissionsBilling": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsCachePurge:getAccountMembersResultRolePermissionsCachePurge": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsDns:getAccountMembersResultRolePermissionsDns": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsDnsRecords:getAccountMembersResultRolePermissionsDnsRecords": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsLb:getAccountMembersResultRolePermissionsLb": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsLogs:getAccountMembersResultRolePermissionsLogs": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsOrganization:getAccountMembersResultRolePermissionsOrganization": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsSsl:getAccountMembersResultRolePermissionsSsl": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsWaf:getAccountMembersResultRolePermissionsWaf": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsZoneSettings:getAccountMembersResultRolePermissionsZoneSettings": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultRolePermissionsZones:getAccountMembersResultRolePermissionsZones": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountMembersResultUser:getAccountMembersResultUser": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "firstName": {
                    "type": "string",
                    "description": "User's first name\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "lastName": {
                    "type": "string",
                    "description": "User's last name\n"
                },
                "twoFactorAuthenticationEnabled": {
                    "type": "boolean",
                    "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "firstName",
                "id",
                "lastName",
                "twoFactorAuthenticationEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountPermissionGroupMeta:getAccountPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountPermissionGroupsResult:getAccountPermissionGroupsResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountPermissionGroupsResultMeta:getAccountPermissionGroupsResultMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountPermissionGroupsResultMeta:getAccountPermissionGroupsResultMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissions:getAccountRolePermissions": {
            "properties": {
                "analytics": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsAnalytics:getAccountRolePermissionsAnalytics"
                },
                "billing": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsBilling:getAccountRolePermissionsBilling"
                },
                "cachePurge": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsCachePurge:getAccountRolePermissionsCachePurge"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsDns:getAccountRolePermissionsDns"
                },
                "dnsRecords": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsDnsRecords:getAccountRolePermissionsDnsRecords"
                },
                "lb": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsLb:getAccountRolePermissionsLb"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsLogs:getAccountRolePermissionsLogs"
                },
                "organization": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsOrganization:getAccountRolePermissionsOrganization"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsSsl:getAccountRolePermissionsSsl"
                },
                "waf": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsWaf:getAccountRolePermissionsWaf"
                },
                "zoneSettings": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsZoneSettings:getAccountRolePermissionsZoneSettings"
                },
                "zones": {
                    "$ref": "#/types/cloudflare:index/getAccountRolePermissionsZones:getAccountRolePermissionsZones"
                }
            },
            "type": "object",
            "required": [
                "analytics",
                "billing",
                "cachePurge",
                "dns",
                "dnsRecords",
                "lb",
                "logs",
                "organization",
                "ssl",
                "waf",
                "zoneSettings",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsAnalytics:getAccountRolePermissionsAnalytics": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsBilling:getAccountRolePermissionsBilling": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsCachePurge:getAccountRolePermissionsCachePurge": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsDns:getAccountRolePermissionsDns": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsDnsRecords:getAccountRolePermissionsDnsRecords": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsLb:getAccountRolePermissionsLb": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsLogs:getAccountRolePermissionsLogs": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsOrganization:getAccountRolePermissionsOrganization": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsSsl:getAccountRolePermissionsSsl": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsWaf:getAccountRolePermissionsWaf": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsZoneSettings:getAccountRolePermissionsZoneSettings": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolePermissionsZones:getAccountRolePermissionsZones": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResult:getAccountRolesResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of role's permissions.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Role identifier tag.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Role name.\n"
                },
                "permissions": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissions:getAccountRolesResultPermissions"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "name",
                "permissions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissions:getAccountRolesResultPermissions": {
            "properties": {
                "analytics": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsAnalytics:getAccountRolesResultPermissionsAnalytics"
                },
                "billing": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsBilling:getAccountRolesResultPermissionsBilling"
                },
                "cachePurge": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsCachePurge:getAccountRolesResultPermissionsCachePurge"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsDns:getAccountRolesResultPermissionsDns"
                },
                "dnsRecords": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsDnsRecords:getAccountRolesResultPermissionsDnsRecords"
                },
                "lb": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsLb:getAccountRolesResultPermissionsLb"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsLogs:getAccountRolesResultPermissionsLogs"
                },
                "organization": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsOrganization:getAccountRolesResultPermissionsOrganization"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsSsl:getAccountRolesResultPermissionsSsl"
                },
                "waf": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsWaf:getAccountRolesResultPermissionsWaf"
                },
                "zoneSettings": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsZoneSettings:getAccountRolesResultPermissionsZoneSettings"
                },
                "zones": {
                    "$ref": "#/types/cloudflare:index/getAccountRolesResultPermissionsZones:getAccountRolesResultPermissionsZones"
                }
            },
            "type": "object",
            "required": [
                "analytics",
                "billing",
                "cachePurge",
                "dns",
                "dnsRecords",
                "lb",
                "logs",
                "organization",
                "ssl",
                "waf",
                "zoneSettings",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsAnalytics:getAccountRolesResultPermissionsAnalytics": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsBilling:getAccountRolesResultPermissionsBilling": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsCachePurge:getAccountRolesResultPermissionsCachePurge": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsDns:getAccountRolesResultPermissionsDns": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsDnsRecords:getAccountRolesResultPermissionsDnsRecords": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsLb:getAccountRolesResultPermissionsLb": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsLogs:getAccountRolesResultPermissionsLogs": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsOrganization:getAccountRolesResultPermissionsOrganization": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsSsl:getAccountRolesResultPermissionsSsl": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsWaf:getAccountRolesResultPermissionsWaf": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsZoneSettings:getAccountRolesResultPermissionsZoneSettings": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountRolesResultPermissionsZones:getAccountRolesResultPermissionsZones": {
            "properties": {
                "read": {
                    "type": "boolean"
                },
                "write": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "read",
                "write"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountSettings:getAccountSettings": {
            "properties": {
                "abuseContactEmail": {
                    "type": "string",
                    "description": "Sets an abuse contact email to notify for abuse reports.\n"
                },
                "enforceTwofactor": {
                    "type": "boolean",
                    "description": "Indicates whether membership in this account requires that\nTwo-Factor Authentication is enabled\n"
                }
            },
            "type": "object",
            "required": [
                "abuseContactEmail",
                "enforceTwofactor"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountSubscriptionRatePlan:getAccountSubscriptionRatePlan": {
            "properties": {
                "currency": {
                    "type": "string",
                    "description": "The currency applied to the rate plan subscription.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "Whether this rate plan is managed externally from Cloudflare.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the rate plan.\nAvailable values: \"free\", \"lite\", \"pro\", \"pro*plus\", \"business\", \"enterprise\", \"partners*free\", \"partners*pro\", \"partners*business\", \u003cspan pulumi-lang-nodejs=\"\"partnersEnt\"\" pulumi-lang-dotnet=\"\"PartnersEnt\"\" pulumi-lang-go=\"\"partnersEnt\"\" pulumi-lang-python=\"\"partners_ent\"\" pulumi-lang-yaml=\"\"partnersEnt\"\" pulumi-lang-java=\"\"partnersEnt\"\"\u003e\"partnersEnt\"\u003c/span\u003e.\n"
                },
                "isContract": {
                    "type": "boolean",
                    "description": "Whether a rate plan is enterprise-based (or newly adopted term contract).\n"
                },
                "publicName": {
                    "type": "string",
                    "description": "The full name of the rate plan.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope that this rate plan applies to.\n"
                },
                "sets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of sets this rate plan applies to. Returns array of strings.\n"
                }
            },
            "type": "object",
            "required": [
                "currency",
                "externallyManaged",
                "id",
                "isContract",
                "publicName",
                "scope",
                "sets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokenCondition:getAccountTokenCondition": {
            "properties": {
                "requestIp": {
                    "$ref": "#/types/cloudflare:index/getAccountTokenConditionRequestIp:getAccountTokenConditionRequestIp",
                    "description": "Client IP restrictions.\n"
                }
            },
            "type": "object",
            "required": [
                "requestIp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokenConditionRequestIp:getAccountTokenConditionRequestIp": {
            "properties": {
                "ins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                },
                "notIns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                }
            },
            "type": "object",
            "required": [
                "ins",
                "notIns"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokenFilter:getAccountTokenFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAccountTokenPolicy:getAccountTokenPolicy": {
            "properties": {
                "effect": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountTokenPolicyPermissionGroup:getAccountTokenPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resources": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A list of resource names that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "effect",
                "id",
                "permissionGroups",
                "resources"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokenPolicyPermissionGroup:getAccountTokenPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountTokenPolicyPermissionGroupMeta:getAccountTokenPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokenPolicyPermissionGroupMeta:getAccountTokenPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokensResult:getAccountTokensResult": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/getAccountTokensResultCondition:getAccountTokensResultCondition"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Token identifier tag.\n"
                },
                "issuedOn": {
                    "type": "string",
                    "description": "The time on which the token was created.\n"
                },
                "lastUsedOn": {
                    "type": "string",
                    "description": "Last time the token was used.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time the token was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Token name.\n"
                },
                "notBefore": {
                    "type": "string",
                    "description": "The time before which the token MUST NOT be accepted for processing.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountTokensResultPolicy:getAccountTokensResultPolicy"
                    },
                    "description": "List of access policies assigned to the token.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "expiresOn",
                "id",
                "issuedOn",
                "lastUsedOn",
                "modifiedOn",
                "name",
                "notBefore",
                "policies",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokensResultCondition:getAccountTokensResultCondition": {
            "properties": {
                "requestIp": {
                    "$ref": "#/types/cloudflare:index/getAccountTokensResultConditionRequestIp:getAccountTokensResultConditionRequestIp",
                    "description": "Client IP restrictions.\n"
                }
            },
            "type": "object",
            "required": [
                "requestIp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokensResultConditionRequestIp:getAccountTokensResultConditionRequestIp": {
            "properties": {
                "ins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                },
                "notIns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                }
            },
            "type": "object",
            "required": [
                "ins",
                "notIns"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokensResultPolicy:getAccountTokensResultPolicy": {
            "properties": {
                "effect": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAccountTokensResultPolicyPermissionGroup:getAccountTokensResultPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resources": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A list of resource names that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "effect",
                "id",
                "permissionGroups",
                "resources"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokensResultPolicyPermissionGroup:getAccountTokensResultPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getAccountTokensResultPolicyPermissionGroupMeta:getAccountTokensResultPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountTokensResultPolicyPermissionGroupMeta:getAccountTokensResultPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountsResult:getAccountsResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "Timestamp for the creation of the account\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "managedBy": {
                    "$ref": "#/types/cloudflare:index/getAccountsResultManagedBy:getAccountsResultManagedBy",
                    "description": "Parent container details\n"
                },
                "name": {
                    "type": "string",
                    "description": "Account name\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getAccountsResultSettings:getAccountsResultSettings",
                    "description": "Account settings\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"standard\", \"enterprise\".\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "id",
                "managedBy",
                "name",
                "settings",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountsResultManagedBy:getAccountsResultManagedBy": {
            "properties": {
                "parentOrgId": {
                    "type": "string",
                    "description": "ID of the parent Organization, if one exists\n"
                },
                "parentOrgName": {
                    "type": "string",
                    "description": "Name of the parent Organization, if one exists\n"
                }
            },
            "type": "object",
            "required": [
                "parentOrgId",
                "parentOrgName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAccountsResultSettings:getAccountsResultSettings": {
            "properties": {
                "abuseContactEmail": {
                    "type": "string",
                    "description": "Sets an abuse contact email to notify for abuse reports.\n"
                },
                "enforceTwofactor": {
                    "type": "boolean",
                    "description": "Indicates whether membership in this account requires that\nTwo-Factor Authentication is enabled\n"
                }
            },
            "type": "object",
            "required": [
                "abuseContactEmail",
                "enforceTwofactor"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAddressMapIp:getAddressMapIp": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 address.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAddressMapMembership:getAddressMapMembership": {
            "properties": {
                "canDelete": {
                    "type": "boolean",
                    "description": "Controls whether the membership can be deleted via the API or not.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "identifier": {
                    "type": "string",
                    "description": "The identifier for the membership (eg. a zone or account tag).\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of the membership.\nAvailable values: \"zone\", \"account\".\n"
                }
            },
            "type": "object",
            "required": [
                "canDelete",
                "createdAt",
                "identifier",
                "kind"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAddressMapsResult:getAddressMapsResult": {
            "properties": {
                "canDelete": {
                    "type": "boolean",
                    "description": "If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.\n"
                },
                "canModifyIps": {
                    "type": "boolean",
                    "description": "If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "defaultSni": {
                    "type": "string",
                    "description": "If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description field which may be used to describe the types of IPs or zones on the map.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of an Address Map.\n"
                },
                "modifiedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "canDelete",
                "canModifyIps",
                "createdAt",
                "defaultSni",
                "description",
                "enabled",
                "id",
                "modifiedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDlp:getAiGatewayDlp": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Available values: \"BLOCK\", \"FLAG\".\n"
                },
                "enabled": {
                    "type": "boolean"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayDlpPolicy:getAiGatewayDlpPolicy"
                    }
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "action",
                "enabled",
                "policies",
                "profiles"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDlpPolicy:getAiGatewayDlpPolicy": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Available values: \"FLAG\", \"BLOCK\".\n"
                },
                "checks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "action",
                "checks",
                "enabled",
                "id",
                "profiles"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingDeployment:getAiGatewayDynamicRoutingDeployment": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "deploymentId": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "deploymentId",
                "versionId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElement:getAiGatewayDynamicRoutingElement": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "outputs": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementOutputs:getAiGatewayDynamicRoutingElementOutputs"
                },
                "properties": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementProperties:getAiGatewayDynamicRoutingElementProperties"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"start\", \"conditional\", \"percentage\", \"rate\", \"model\", \"end\".\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "outputs",
                "properties",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementOutputs:getAiGatewayDynamicRoutingElementOutputs": {
            "properties": {
                "elementId": {
                    "type": "string"
                },
                "fallback": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementOutputsFallback:getAiGatewayDynamicRoutingElementOutputsFallback"
                },
                "false": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementOutputsFalse:getAiGatewayDynamicRoutingElementOutputsFalse"
                },
                "next": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementOutputsNext:getAiGatewayDynamicRoutingElementOutputsNext"
                },
                "success": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementOutputsSuccess:getAiGatewayDynamicRoutingElementOutputsSuccess"
                },
                "true": {
                    "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElementOutputsTrue:getAiGatewayDynamicRoutingElementOutputsTrue"
                }
            },
            "type": "object",
            "required": [
                "elementId",
                "fallback",
                "false",
                "next",
                "success",
                "true"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementOutputsFallback:getAiGatewayDynamicRoutingElementOutputsFallback": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementOutputsFalse:getAiGatewayDynamicRoutingElementOutputsFalse": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementOutputsNext:getAiGatewayDynamicRoutingElementOutputsNext": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementOutputsSuccess:getAiGatewayDynamicRoutingElementOutputsSuccess": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementOutputsTrue:getAiGatewayDynamicRoutingElementOutputsTrue": {
            "properties": {
                "elementId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "elementId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingElementProperties:getAiGatewayDynamicRoutingElementProperties": {
            "properties": {
                "aiGatewayDynamicRoutingProvider": {
                    "type": "string"
                },
                "conditions": {
                    "type": "string"
                },
                "key": {
                    "type": "string"
                },
                "limit": {
                    "type": "number"
                },
                "limitType": {
                    "type": "string",
                    "description": "Available values: \"count\", \"cost\".\n"
                },
                "model": {
                    "type": "string"
                },
                "retries": {
                    "type": "number"
                },
                "timeout": {
                    "type": "number"
                },
                "window": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "aiGatewayDynamicRoutingProvider",
                "conditions",
                "key",
                "limit",
                "limitType",
                "model",
                "retries",
                "timeout",
                "window"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayDynamicRoutingVersion:getAiGatewayDynamicRoutingVersion": {
            "properties": {
                "active": {
                    "type": "string",
                    "description": "Available values: \"true\", \"false\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "data": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "active",
                "createdAt",
                "data",
                "versionId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayFilter:getAiGatewayFilter": {
            "properties": {
                "search": {
                    "type": "string",
                    "description": "Search by id\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAiGatewayOtel:getAiGatewayOtel": {
            "properties": {
                "authorization": {
                    "type": "string"
                },
                "contentType": {
                    "type": "string",
                    "description": "Available values: \"json\", \"protobuf\".\n"
                },
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "url": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "authorization",
                "contentType",
                "headers",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayStripe:getAiGatewayStripe": {
            "properties": {
                "authorization": {
                    "type": "string"
                },
                "usageEvents": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayStripeUsageEvent:getAiGatewayStripeUsageEvent"
                    }
                }
            },
            "type": "object",
            "required": [
                "authorization",
                "usageEvents"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewayStripeUsageEvent:getAiGatewayStripeUsageEvent": {
            "properties": {
                "payload": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "payload"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewaysResult:getAiGatewaysResult": {
            "properties": {
                "authentication": {
                    "type": "boolean"
                },
                "cacheInvalidateOnUpdate": {
                    "type": "boolean"
                },
                "cacheTtl": {
                    "type": "integer"
                },
                "collectLogs": {
                    "type": "boolean"
                },
                "createdAt": {
                    "type": "string"
                },
                "dlp": {
                    "$ref": "#/types/cloudflare:index/getAiGatewaysResultDlp:getAiGatewaysResultDlp"
                },
                "id": {
                    "type": "string",
                    "description": "gateway id\n"
                },
                "isDefault": {
                    "type": "boolean"
                },
                "logManagement": {
                    "type": "integer"
                },
                "logManagementStrategy": {
                    "type": "string",
                    "description": "Available values: \"STOP*INSERTING\", \"DELETE*OLDEST\".\n"
                },
                "logpush": {
                    "type": "boolean"
                },
                "logpushPublicKey": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "otels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiGatewaysResultOtel:getAiGatewaysResultOtel"
                    }
                },
                "rateLimitingInterval": {
                    "type": "integer"
                },
                "rateLimitingLimit": {
                    "type": "integer"
                },
                "rateLimitingTechnique": {
                    "type": "string",
                    "description": "Available values: \"fixed\", \"sliding\".\n"
                },
                "retryBackoff": {
                    "type": "string",
                    "description": "Backoff strategy for retry delays\nAvailable values: \"constant\", \"linear\", \"exponential\".\n"
                },
                "retryDelay": {
                    "type": "integer",
                    "description": "Delay between retry attempts in milliseconds (0-5000)\n"
                },
                "retryMaxAttempts": {
                    "type": "integer",
                    "description": "Maximum number of retry attempts for failed requests (1-5)\n"
                },
                "storeId": {
                    "type": "string"
                },
                "stripe": {
                    "$ref": "#/types/cloudflare:index/getAiGatewaysResultStripe:getAiGatewaysResultStripe"
                },
                "workersAiBillingMode": {
                    "type": "string",
                    "description": "Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported.\nAvailable values: \"postpaid\".\n"
                },
                "zdr": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "authentication",
                "cacheInvalidateOnUpdate",
                "cacheTtl",
                "collectLogs",
                "createdAt",
                "dlp",
                "id",
                "isDefault",
                "logManagement",
                "logManagementStrategy",
                "logpush",
                "logpushPublicKey",
                "modifiedAt",
                "otels",
                "rateLimitingInterval",
                "rateLimitingLimit",
                "rateLimitingTechnique",
                "retryBackoff",
                "retryDelay",
                "retryMaxAttempts",
                "storeId",
                "stripe",
                "workersAiBillingMode",
                "zdr"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewaysResultDlp:getAiGatewaysResultDlp": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Available values: \"BLOCK\", \"FLAG\".\n"
                },
                "enabled": {
                    "type": "boolean"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiGatewaysResultDlpPolicy:getAiGatewaysResultDlpPolicy"
                    }
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "action",
                "enabled",
                "policies",
                "profiles"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewaysResultDlpPolicy:getAiGatewaysResultDlpPolicy": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Available values: \"FLAG\", \"BLOCK\".\n"
                },
                "checks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "action",
                "checks",
                "enabled",
                "id",
                "profiles"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewaysResultOtel:getAiGatewaysResultOtel": {
            "properties": {
                "authorization": {
                    "type": "string"
                },
                "contentType": {
                    "type": "string",
                    "description": "Available values: \"json\", \"protobuf\".\n"
                },
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "url": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "authorization",
                "contentType",
                "headers",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewaysResultStripe:getAiGatewaysResultStripe": {
            "properties": {
                "authorization": {
                    "type": "string"
                },
                "usageEvents": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiGatewaysResultStripeUsageEvent:getAiGatewaysResultStripeUsageEvent"
                    }
                }
            },
            "type": "object",
            "required": [
                "authorization",
                "usageEvents"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiGatewaysResultStripeUsageEvent:getAiGatewaysResultStripeUsageEvent": {
            "properties": {
                "payload": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "payload"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceCustomMetadata:getAiSearchInstanceCustomMetadata": {
            "properties": {
                "dataType": {
                    "type": "string",
                    "description": "Available values: \"text\", \"number\", \"boolean\", \"datetime\".\n"
                },
                "fieldName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "dataType",
                "fieldName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceFilter:getAiSearchInstanceFilter": {
            "properties": {
                "namespace": {
                    "type": "string"
                },
                "orderBy": {
                    "type": "string",
                    "description": "Order By Column Name\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                },
                "orderByDirection": {
                    "type": "string",
                    "description": "Order By Direction\nAvailable values: \"asc\", \"desc\".\n"
                },
                "search": {
                    "type": "string",
                    "description": "Search by id\n"
                }
            },
            "type": "object",
            "required": [
                "orderBy",
                "orderByDirection"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceIndexMethod:getAiSearchInstanceIndexMethod": {
            "properties": {
                "keyword": {
                    "type": "boolean",
                    "description": "Enable keyword (BM25) storage backend.\n"
                },
                "vector": {
                    "type": "boolean",
                    "description": "Enable vector (embedding) storage backend.\n"
                }
            },
            "type": "object",
            "required": [
                "keyword",
                "vector"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceIndexingOptions:getAiSearchInstanceIndexingOptions": {
            "properties": {
                "keywordTokenizer": {
                    "type": "string",
                    "description": "Tokenizer used for keyword search indexing. porter provides word-level tokenization with Porter stemming (good for natural language queries). trigram enables character-level substring matching (good for partial matches, code, identifiers). Changing this triggers a full re-index. Defaults to porter.\nAvailable values: \"porter\", \"trigram\".\n"
                }
            },
            "type": "object",
            "required": [
                "keywordTokenizer"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceMetadata:getAiSearchInstanceMetadata": {
            "properties": {
                "createdFromAisearchWizard": {
                    "type": "boolean"
                },
                "searchForAgents": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstanceMetadataSearchForAgents:getAiSearchInstanceMetadataSearchForAgents"
                },
                "workerDomain": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdFromAisearchWizard",
                "searchForAgents",
                "workerDomain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceMetadataSearchForAgents:getAiSearchInstanceMetadataSearchForAgents": {
            "properties": {
                "hostname": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string"
                },
                "zoneName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "hostname",
                "zoneId",
                "zoneName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancePublicEndpointParams:getAiSearchInstancePublicEndpointParams": {
            "properties": {
                "authorizedHosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "chatCompletionsEndpoint": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancePublicEndpointParamsChatCompletionsEndpoint:getAiSearchInstancePublicEndpointParamsChatCompletionsEndpoint"
                },
                "enabled": {
                    "type": "boolean"
                },
                "mcp": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancePublicEndpointParamsMcp:getAiSearchInstancePublicEndpointParamsMcp"
                },
                "rateLimit": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancePublicEndpointParamsRateLimit:getAiSearchInstancePublicEndpointParamsRateLimit"
                },
                "searchEndpoint": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancePublicEndpointParamsSearchEndpoint:getAiSearchInstancePublicEndpointParamsSearchEndpoint"
                }
            },
            "type": "object",
            "required": [
                "authorizedHosts",
                "chatCompletionsEndpoint",
                "enabled",
                "mcp",
                "rateLimit",
                "searchEndpoint"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancePublicEndpointParamsChatCompletionsEndpoint:getAiSearchInstancePublicEndpointParamsChatCompletionsEndpoint": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Disable chat completions endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "disabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancePublicEndpointParamsMcp:getAiSearchInstancePublicEndpointParamsMcp": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "Disable MCP endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "disabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancePublicEndpointParamsRateLimit:getAiSearchInstancePublicEndpointParamsRateLimit": {
            "properties": {
                "periodMs": {
                    "type": "integer"
                },
                "requests": {
                    "type": "integer"
                },
                "technique": {
                    "type": "string",
                    "description": "Available values: \"fixed\", \"sliding\".\n"
                }
            },
            "type": "object",
            "required": [
                "periodMs",
                "requests",
                "technique"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancePublicEndpointParamsSearchEndpoint:getAiSearchInstancePublicEndpointParamsSearchEndpoint": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Disable search endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "disabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceRetrievalOptions:getAiSearchInstanceRetrievalOptions": {
            "properties": {
                "boostBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceRetrievalOptionsBoostBy:getAiSearchInstanceRetrievalOptionsBoostBy"
                    },
                    "description": "Metadata fields to boost search results by. Each entry specifies a metadata field and an optional direction. Direction defaults to 'asc' for numeric fields and 'exists' for text/boolean fields. Fields must match 'timestamp' or a defined custom*metadata field.\n"
                },
                "keywordMatchMode": {
                    "type": "string",
                    "description": "Controls which documents are candidates for BM25 scoring. 'and' restricts candidates to documents containing all query terms; 'or' includes any document containing at least one term, ranked by BM25 relevance. Defaults to 'and'.\nAvailable values: \"and\", \"or\".\n"
                }
            },
            "type": "object",
            "required": [
                "boostBies",
                "keywordMatchMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceRetrievalOptionsBoostBy:getAiSearchInstanceRetrievalOptionsBoostBy": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Boost direction. 'desc' = higher values rank higher (e.g. newer timestamps). 'asc' = lower values rank higher. 'exists' = boost chunks that have the field. 'not*exists' = boost chunks that lack the field. Optional ��� defaults to 'asc' for numeric/datetime fields, 'exists' for text/boolean fields.\nAvailable values: \"asc\", \"desc\", \"exists\", \"not*exists\".\n"
                },
                "field": {
                    "type": "string",
                    "description": "Metadata field name to boost by. Use 'timestamp' for document freshness, or any custom*metadata field. Numeric and datetime fields support asc/desc directions; text/boolean fields support exists/not*exists.\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "field"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceSourceParams:getAiSearchInstanceSourceParams": {
            "properties": {
                "excludeItems": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of path patterns to exclude. Uses micromatch glob syntax: * matches within a path segment, ** matches across path segments (e.g., /admin/** matches /admin/users and /admin/settings/advanced)\n"
                },
                "includeItems": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of path patterns to include. Uses micromatch glob syntax: * matches within a path segment, ** matches across path segments (e.g., /blog/** matches /blog/post and /blog/2024/post)\n"
                },
                "prefix": {
                    "type": "string"
                },
                "r2Jurisdiction": {
                    "type": "string"
                },
                "webCrawler": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstanceSourceParamsWebCrawler:getAiSearchInstanceSourceParamsWebCrawler"
                }
            },
            "type": "object",
            "required": [
                "excludeItems",
                "includeItems",
                "prefix",
                "r2Jurisdiction",
                "webCrawler"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceSourceParamsWebCrawler:getAiSearchInstanceSourceParamsWebCrawler": {
            "properties": {
                "crawlOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerCrawlOptions:getAiSearchInstanceSourceParamsWebCrawlerCrawlOptions"
                },
                "parseOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerParseOptions:getAiSearchInstanceSourceParamsWebCrawlerParseOptions"
                },
                "parseType": {
                    "type": "string",
                    "description": "Available values: \"sitemap\", \"feed-rss\", \"crawl\".\n"
                },
                "storeOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerStoreOptions:getAiSearchInstanceSourceParamsWebCrawlerStoreOptions"
                }
            },
            "type": "object",
            "required": [
                "crawlOptions",
                "parseOptions",
                "parseType",
                "storeOptions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerCrawlOptions:getAiSearchInstanceSourceParamsWebCrawlerCrawlOptions": {
            "properties": {
                "depth": {
                    "type": "number"
                },
                "includeExternalLinks": {
                    "type": "boolean"
                },
                "includeSubdomains": {
                    "type": "boolean"
                },
                "maxAge": {
                    "type": "number"
                },
                "source": {
                    "type": "string",
                    "description": "Available values: \"all\", \"sitemaps\", \"links\".\n"
                }
            },
            "type": "object",
            "required": [
                "depth",
                "includeExternalLinks",
                "includeSubdomains",
                "maxAge",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerParseOptions:getAiSearchInstanceSourceParamsWebCrawlerParseOptions": {
            "properties": {
                "contentSelectors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector:getAiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector"
                    },
                    "description": "List of path-to-selector mappings for extracting specific content from crawled pages. Each entry pairs a URL glob pattern with a CSS selector. The first matching path wins. Only the matched HTML fragment is stored and indexed.\n"
                },
                "includeHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "includeImages": {
                    "type": "boolean"
                },
                "specificSitemaps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of specific sitemap URLs to use for crawling. Only valid when\u003cspan pulumi-lang-nodejs=\" parseType \" pulumi-lang-dotnet=\" ParseType \" pulumi-lang-go=\" parseType \" pulumi-lang-python=\" parse_type \" pulumi-lang-yaml=\" parseType \" pulumi-lang-java=\" parseType \"\u003e parseType \u003c/span\u003eis 'sitemap'.\n"
                },
                "useBrowserRendering": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "contentSelectors",
                "includeHeaders",
                "includeImages",
                "specificSitemaps",
                "useBrowserRendering"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector:getAiSearchInstanceSourceParamsWebCrawlerParseOptionsContentSelector": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "Glob pattern to match against the page URL path. Uses standard glob syntax: * matches within a segment, ** crosses directories.\n"
                },
                "selector": {
                    "type": "string",
                    "description": "CSS selector to extract content from pages matching the path pattern. Supports standard CSS selectors including class, ID, element, and attribute selectors.\n"
                }
            },
            "type": "object",
            "required": [
                "path",
                "selector"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstanceSourceParamsWebCrawlerStoreOptions:getAiSearchInstanceSourceParamsWebCrawlerStoreOptions": {
            "properties": {
                "r2Jurisdiction": {
                    "type": "string"
                },
                "storageId": {
                    "type": "string"
                },
                "storageType": {
                    "type": "string",
                    "description": "Available values: \"r2\".\n"
                }
            },
            "type": "object",
            "required": [
                "r2Jurisdiction",
                "storageId",
                "storageType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResult:getAiSearchInstancesResult": {
            "properties": {
                "aiGatewayId": {
                    "type": "string"
                },
                "aisearchModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "cache": {
                    "type": "boolean"
                },
                "cacheThreshold": {
                    "type": "string",
                    "description": "Available values: \"super*strict*match\", \"close*enough\", \"flexible*friend\", \u003cspan pulumi-lang-nodejs=\"\"anythingGoes\"\" pulumi-lang-dotnet=\"\"AnythingGoes\"\" pulumi-lang-go=\"\"anythingGoes\"\" pulumi-lang-python=\"\"anything_goes\"\" pulumi-lang-yaml=\"\"anythingGoes\"\" pulumi-lang-java=\"\"anythingGoes\"\"\u003e\"anythingGoes\"\u003c/span\u003e.\n"
                },
                "chunkOverlap": {
                    "type": "integer"
                },
                "chunkSize": {
                    "type": "integer"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "customMetadatas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultCustomMetadata:getAiSearchInstancesResultCustomMetadata"
                    }
                },
                "embeddingModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/qwen/qwen3-embedding-0.6b\", \"@cf/baai/bge-m3\", \"@cf/baai/bge-large-en-v1.5\", \"@cf/google/embeddinggemma-300m\", \"google-ai-studio/gemini-embedding-001\", \"google-ai-studio/gemini-embedding-2-preview\", \"openai/text-embedding-3-small\", \"openai/text-embedding-3-large\", \"\".\n"
                },
                "enable": {
                    "type": "boolean"
                },
                "engineVersion": {
                    "type": "number"
                },
                "fusionMethod": {
                    "type": "string",
                    "description": "Available values: \"max\", \"rrf\".\n"
                },
                "hybridSearchEnabled": {
                    "type": "boolean",
                    "description": "Deprecated — use\u003cspan pulumi-lang-nodejs=\" indexMethod \" pulumi-lang-dotnet=\" IndexMethod \" pulumi-lang-go=\" indexMethod \" pulumi-lang-python=\" index_method \" pulumi-lang-yaml=\" indexMethod \" pulumi-lang-java=\" indexMethod \"\u003e indexMethod \u003c/span\u003einstead.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "id": {
                    "type": "string",
                    "description": "AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.\n"
                },
                "indexMethod": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultIndexMethod:getAiSearchInstancesResultIndexMethod",
                    "description": "Controls which storage backends are used during indexing. Defaults to vector-only.\n"
                },
                "indexingOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultIndexingOptions:getAiSearchInstancesResultIndexingOptions"
                },
                "lastActivity": {
                    "type": "string"
                },
                "maxNumResults": {
                    "type": "integer"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultMetadata:getAiSearchInstancesResultMetadata"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "namespace": {
                    "type": "string"
                },
                "paused": {
                    "type": "boolean"
                },
                "publicEndpointId": {
                    "type": "string"
                },
                "publicEndpointParams": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultPublicEndpointParams:getAiSearchInstancesResultPublicEndpointParams"
                },
                "reranking": {
                    "type": "boolean"
                },
                "rerankingModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/baai/bge-reranker-base\", \"\".\n"
                },
                "retrievalOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultRetrievalOptions:getAiSearchInstancesResultRetrievalOptions"
                },
                "rewriteModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "rewriteQuery": {
                    "type": "boolean"
                },
                "scoreThreshold": {
                    "type": "number"
                },
                "source": {
                    "type": "string"
                },
                "sourceParams": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultSourceParams:getAiSearchInstancesResultSourceParams"
                },
                "status": {
                    "type": "string"
                },
                "syncInterval": {
                    "type": "number",
                    "description": "Interval between automatic syncs, in seconds. Allowed values: 900 (15min), 1800 (30min), 3600 (1h), 7200 (2h), 14400 (4h), 21600 (6h), 43200 (12h), 86400 (24h).\nAvailable values: 900, 1800, 3600, 7200, 14400, 21600, 43200, 86400.\n"
                },
                "tokenId": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"r2\", \"web-crawler\".\n"
                }
            },
            "type": "object",
            "required": [
                "aiGatewayId",
                "aisearchModel",
                "cache",
                "cacheThreshold",
                "chunkOverlap",
                "chunkSize",
                "createdAt",
                "createdBy",
                "customMetadatas",
                "embeddingModel",
                "enable",
                "engineVersion",
                "fusionMethod",
                "hybridSearchEnabled",
                "id",
                "indexMethod",
                "indexingOptions",
                "lastActivity",
                "maxNumResults",
                "metadata",
                "modifiedAt",
                "modifiedBy",
                "namespace",
                "paused",
                "publicEndpointId",
                "publicEndpointParams",
                "reranking",
                "rerankingModel",
                "retrievalOptions",
                "rewriteModel",
                "rewriteQuery",
                "scoreThreshold",
                "source",
                "sourceParams",
                "status",
                "syncInterval",
                "tokenId",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultCustomMetadata:getAiSearchInstancesResultCustomMetadata": {
            "properties": {
                "dataType": {
                    "type": "string",
                    "description": "Available values: \"text\", \"number\", \"boolean\", \"datetime\".\n"
                },
                "fieldName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "dataType",
                "fieldName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultIndexMethod:getAiSearchInstancesResultIndexMethod": {
            "properties": {
                "keyword": {
                    "type": "boolean",
                    "description": "Enable keyword (BM25) storage backend.\n"
                },
                "vector": {
                    "type": "boolean",
                    "description": "Enable vector (embedding) storage backend.\n"
                }
            },
            "type": "object",
            "required": [
                "keyword",
                "vector"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultIndexingOptions:getAiSearchInstancesResultIndexingOptions": {
            "properties": {
                "keywordTokenizer": {
                    "type": "string",
                    "description": "Tokenizer used for keyword search indexing. porter provides word-level tokenization with Porter stemming (good for natural language queries). trigram enables character-level substring matching (good for partial matches, code, identifiers). Changing this triggers a full re-index. Defaults to porter.\nAvailable values: \"porter\", \"trigram\".\n"
                }
            },
            "type": "object",
            "required": [
                "keywordTokenizer"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultMetadata:getAiSearchInstancesResultMetadata": {
            "properties": {
                "createdFromAisearchWizard": {
                    "type": "boolean"
                },
                "searchForAgents": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultMetadataSearchForAgents:getAiSearchInstancesResultMetadataSearchForAgents"
                },
                "workerDomain": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdFromAisearchWizard",
                "searchForAgents",
                "workerDomain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultMetadataSearchForAgents:getAiSearchInstancesResultMetadataSearchForAgents": {
            "properties": {
                "hostname": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string"
                },
                "zoneName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "hostname",
                "zoneId",
                "zoneName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultPublicEndpointParams:getAiSearchInstancesResultPublicEndpointParams": {
            "properties": {
                "authorizedHosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "chatCompletionsEndpoint": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsChatCompletionsEndpoint:getAiSearchInstancesResultPublicEndpointParamsChatCompletionsEndpoint"
                },
                "enabled": {
                    "type": "boolean"
                },
                "mcp": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsMcp:getAiSearchInstancesResultPublicEndpointParamsMcp"
                },
                "rateLimit": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsRateLimit:getAiSearchInstancesResultPublicEndpointParamsRateLimit"
                },
                "searchEndpoint": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsSearchEndpoint:getAiSearchInstancesResultPublicEndpointParamsSearchEndpoint"
                }
            },
            "type": "object",
            "required": [
                "authorizedHosts",
                "chatCompletionsEndpoint",
                "enabled",
                "mcp",
                "rateLimit",
                "searchEndpoint"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsChatCompletionsEndpoint:getAiSearchInstancesResultPublicEndpointParamsChatCompletionsEndpoint": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Disable chat completions endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "disabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsMcp:getAiSearchInstancesResultPublicEndpointParamsMcp": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "Disable MCP endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "disabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsRateLimit:getAiSearchInstancesResultPublicEndpointParamsRateLimit": {
            "properties": {
                "periodMs": {
                    "type": "integer"
                },
                "requests": {
                    "type": "integer"
                },
                "technique": {
                    "type": "string",
                    "description": "Available values: \"fixed\", \"sliding\".\n"
                }
            },
            "type": "object",
            "required": [
                "periodMs",
                "requests",
                "technique"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultPublicEndpointParamsSearchEndpoint:getAiSearchInstancesResultPublicEndpointParamsSearchEndpoint": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Disable search endpoint for this public endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "disabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultRetrievalOptions:getAiSearchInstancesResultRetrievalOptions": {
            "properties": {
                "boostBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultRetrievalOptionsBoostBy:getAiSearchInstancesResultRetrievalOptionsBoostBy"
                    },
                    "description": "Metadata fields to boost search results by. Each entry specifies a metadata field and an optional direction. Direction defaults to 'asc' for numeric fields and 'exists' for text/boolean fields. Fields must match 'timestamp' or a defined custom*metadata field.\n"
                },
                "keywordMatchMode": {
                    "type": "string",
                    "description": "Controls which documents are candidates for BM25 scoring. 'and' restricts candidates to documents containing all query terms; 'or' includes any document containing at least one term, ranked by BM25 relevance. Defaults to 'and'.\nAvailable values: \"and\", \"or\".\n"
                }
            },
            "type": "object",
            "required": [
                "boostBies",
                "keywordMatchMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultRetrievalOptionsBoostBy:getAiSearchInstancesResultRetrievalOptionsBoostBy": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Boost direction. 'desc' = higher values rank higher (e.g. newer timestamps). 'asc' = lower values rank higher. 'exists' = boost chunks that have the field. 'not*exists' = boost chunks that lack the field. Optional ��� defaults to 'asc' for numeric/datetime fields, 'exists' for text/boolean fields.\nAvailable values: \"asc\", \"desc\", \"exists\", \"not*exists\".\n"
                },
                "field": {
                    "type": "string",
                    "description": "Metadata field name to boost by. Use 'timestamp' for document freshness, or any custom*metadata field. Numeric and datetime fields support asc/desc directions; text/boolean fields support exists/not*exists.\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "field"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultSourceParams:getAiSearchInstancesResultSourceParams": {
            "properties": {
                "excludeItems": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of path patterns to exclude. Uses micromatch glob syntax: * matches within a path segment, ** matches across path segments (e.g., /admin/** matches /admin/users and /admin/settings/advanced)\n"
                },
                "includeItems": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of path patterns to include. Uses micromatch glob syntax: * matches within a path segment, ** matches across path segments (e.g., /blog/** matches /blog/post and /blog/2024/post)\n"
                },
                "prefix": {
                    "type": "string"
                },
                "r2Jurisdiction": {
                    "type": "string"
                },
                "webCrawler": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawler:getAiSearchInstancesResultSourceParamsWebCrawler"
                }
            },
            "type": "object",
            "required": [
                "excludeItems",
                "includeItems",
                "prefix",
                "r2Jurisdiction",
                "webCrawler"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawler:getAiSearchInstancesResultSourceParamsWebCrawler": {
            "properties": {
                "crawlOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerCrawlOptions:getAiSearchInstancesResultSourceParamsWebCrawlerCrawlOptions"
                },
                "parseOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerParseOptions:getAiSearchInstancesResultSourceParamsWebCrawlerParseOptions"
                },
                "parseType": {
                    "type": "string",
                    "description": "Available values: \"sitemap\", \"feed-rss\", \"crawl\".\n"
                },
                "storeOptions": {
                    "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerStoreOptions:getAiSearchInstancesResultSourceParamsWebCrawlerStoreOptions"
                }
            },
            "type": "object",
            "required": [
                "crawlOptions",
                "parseOptions",
                "parseType",
                "storeOptions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerCrawlOptions:getAiSearchInstancesResultSourceParamsWebCrawlerCrawlOptions": {
            "properties": {
                "depth": {
                    "type": "number"
                },
                "includeExternalLinks": {
                    "type": "boolean"
                },
                "includeSubdomains": {
                    "type": "boolean"
                },
                "maxAge": {
                    "type": "number"
                },
                "source": {
                    "type": "string",
                    "description": "Available values: \"all\", \"sitemaps\", \"links\".\n"
                }
            },
            "type": "object",
            "required": [
                "depth",
                "includeExternalLinks",
                "includeSubdomains",
                "maxAge",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerParseOptions:getAiSearchInstancesResultSourceParamsWebCrawlerParseOptions": {
            "properties": {
                "contentSelectors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerParseOptionsContentSelector:getAiSearchInstancesResultSourceParamsWebCrawlerParseOptionsContentSelector"
                    },
                    "description": "List of path-to-selector mappings for extracting specific content from crawled pages. Each entry pairs a URL glob pattern with a CSS selector. The first matching path wins. Only the matched HTML fragment is stored and indexed.\n"
                },
                "includeHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "includeImages": {
                    "type": "boolean"
                },
                "specificSitemaps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of specific sitemap URLs to use for crawling. Only valid when\u003cspan pulumi-lang-nodejs=\" parseType \" pulumi-lang-dotnet=\" ParseType \" pulumi-lang-go=\" parseType \" pulumi-lang-python=\" parse_type \" pulumi-lang-yaml=\" parseType \" pulumi-lang-java=\" parseType \"\u003e parseType \u003c/span\u003eis 'sitemap'.\n"
                },
                "useBrowserRendering": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "contentSelectors",
                "includeHeaders",
                "includeImages",
                "specificSitemaps",
                "useBrowserRendering"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerParseOptionsContentSelector:getAiSearchInstancesResultSourceParamsWebCrawlerParseOptionsContentSelector": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "Glob pattern to match against the page URL path. Uses standard glob syntax: * matches within a segment, ** crosses directories.\n"
                },
                "selector": {
                    "type": "string",
                    "description": "CSS selector to extract content from pages matching the path pattern. Supports standard CSS selectors including class, ID, element, and attribute selectors.\n"
                }
            },
            "type": "object",
            "required": [
                "path",
                "selector"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchInstancesResultSourceParamsWebCrawlerStoreOptions:getAiSearchInstancesResultSourceParamsWebCrawlerStoreOptions": {
            "properties": {
                "r2Jurisdiction": {
                    "type": "string"
                },
                "storageId": {
                    "type": "string"
                },
                "storageType": {
                    "type": "string",
                    "description": "Available values: \"r2\".\n"
                }
            },
            "type": "object",
            "required": [
                "r2Jurisdiction",
                "storageId",
                "storageType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAiSearchTokenFilter:getAiSearchTokenFilter": {
            "properties": {
                "search": {
                    "type": "string",
                    "description": "Filter tokens whose name contains this string (case-insensitive).\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getAiSearchTokensResult:getAiSearchTokensResult": {
            "properties": {
                "cfApiId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "legacy": {
                    "type": "boolean"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "cfApiId",
                "createdAt",
                "createdBy",
                "enabled",
                "id",
                "legacy",
                "modifiedAt",
                "modifiedBy",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldAuthIdCharacteristic:getApiShieldAuthIdCharacteristic": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the characteristic field, i.e., the header or cookie name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of characteristic.\nAvailable values: \"header\", \"cookie\", \"jwt\".\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldDiscoveryOperationsResult:getApiShieldDiscoveryOperationsResult": {
            "properties": {
                "endpoint": {
                    "type": "string",
                    "description": "The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/.\n"
                },
                "features": {
                    "$ref": "#/types/cloudflare:index/getApiShieldDiscoveryOperationsResultFeatures:getApiShieldDiscoveryOperationsResultFeatures"
                },
                "host": {
                    "type": "string",
                    "description": "RFC3986-compliant host.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method used to access the endpoint.\nAvailable values: \"GET\", \"POST\", \"HEAD\", \"OPTIONS\", \"PUT\", \"DELETE\", \"CONNECT\", \"PATCH\", \"TRACE\".\n"
                },
                "origins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "API discovery engine(s) that discovered this operation\n"
                },
                "state": {
                    "type": "string",
                    "description": "State of operation in API Discovery\n  * \u003cspan pulumi-lang-nodejs=\"`review`\" pulumi-lang-dotnet=\"`Review`\" pulumi-lang-go=\"`review`\" pulumi-lang-python=\"`review`\" pulumi-lang-yaml=\"`review`\" pulumi-lang-java=\"`review`\"\u003e`review`\u003c/span\u003e - Operation is not saved into API Shield Endpoint Management\n  * \u003cspan pulumi-lang-nodejs=\"`saved`\" pulumi-lang-dotnet=\"`Saved`\" pulumi-lang-go=\"`saved`\" pulumi-lang-python=\"`saved`\" pulumi-lang-yaml=\"`saved`\" pulumi-lang-java=\"`saved`\"\u003e`saved`\u003c/span\u003e - Operation is saved into API Shield Endpoint Management\n  * \u003cspan pulumi-lang-nodejs=\"`ignored`\" pulumi-lang-dotnet=\"`Ignored`\" pulumi-lang-go=\"`ignored`\" pulumi-lang-python=\"`ignored`\" pulumi-lang-yaml=\"`ignored`\" pulumi-lang-java=\"`ignored`\"\u003e`ignored`\u003c/span\u003e - Operation is marked as ignored\nAvailable values: \"review\", \"saved\", \"ignored\".\n"
                }
            },
            "type": "object",
            "required": [
                "endpoint",
                "features",
                "host",
                "id",
                "lastUpdated",
                "method",
                "origins",
                "state"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldDiscoveryOperationsResultFeatures:getApiShieldDiscoveryOperationsResultFeatures": {
            "properties": {
                "trafficStats": {
                    "$ref": "#/types/cloudflare:index/getApiShieldDiscoveryOperationsResultFeaturesTrafficStats:getApiShieldDiscoveryOperationsResultFeaturesTrafficStats"
                }
            },
            "type": "object",
            "required": [
                "trafficStats"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldDiscoveryOperationsResultFeaturesTrafficStats:getApiShieldDiscoveryOperationsResultFeaturesTrafficStats": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "periodSeconds": {
                    "type": "integer",
                    "description": "The period in seconds these statistics were computed over\n"
                },
                "requests": {
                    "type": "number",
                    "description": "The average number of requests seen during this period\n"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "periodSeconds",
                "requests"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeatures:getApiShieldOperationFeatures": {
            "properties": {
                "apiRouting": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesApiRouting:getApiShieldOperationFeaturesApiRouting",
                    "description": "API Routing settings on endpoint.\n"
                },
                "confidenceIntervals": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervals:getApiShieldOperationFeaturesConfidenceIntervals"
                },
                "parameterSchemas": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesParameterSchemas:getApiShieldOperationFeaturesParameterSchemas"
                },
                "schemaInfo": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesSchemaInfo:getApiShieldOperationFeaturesSchemaInfo"
                },
                "thresholds": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesThresholds:getApiShieldOperationFeaturesThresholds"
                }
            },
            "type": "object",
            "required": [
                "apiRouting",
                "confidenceIntervals",
                "parameterSchemas",
                "schemaInfo",
                "thresholds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesApiRouting:getApiShieldOperationFeaturesApiRouting": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "route": {
                    "type": "string",
                    "description": "Target route.\n"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "route"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervals:getApiShieldOperationFeaturesConfidenceIntervals": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "suggestedThreshold": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "suggestedThreshold"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThreshold": {
            "properties": {
                "confidenceIntervals": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals"
                },
                "mean": {
                    "type": "number",
                    "description": "Suggested threshold.\n"
                }
            },
            "type": "object",
            "required": [
                "confidenceIntervals",
                "mean"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals": {
            "properties": {
                "p90": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90",
                    "description": "Upper and lower bound for percentile estimate\n"
                },
                "p95": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95",
                    "description": "Upper and lower bound for percentile estimate\n"
                },
                "p99": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99",
                    "description": "Upper and lower bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "p90",
                "p95",
                "p99"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "lower",
                "upper"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "lower",
                "upper"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99:getApiShieldOperationFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "lower",
                "upper"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesParameterSchemas:getApiShieldOperationFeaturesParameterSchemas": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "parameterSchemas": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesParameterSchemasParameterSchemas:getApiShieldOperationFeaturesParameterSchemasParameterSchemas",
                    "description": "An operation schema object containing a response.\n"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "parameterSchemas"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesParameterSchemasParameterSchemas:getApiShieldOperationFeaturesParameterSchemasParameterSchemas": {
            "properties": {
                "parameters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array containing the learned parameter schemas.\n"
                },
                "responses": {
                    "type": "string",
                    "description": "An empty response object. This field is required to yield a valid operation schema.\n"
                }
            },
            "type": "object",
            "required": [
                "parameters",
                "responses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesSchemaInfo:getApiShieldOperationFeaturesSchemaInfo": {
            "properties": {
                "activeSchema": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationFeaturesSchemaInfoActiveSchema:getApiShieldOperationFeaturesSchemaInfoActiveSchema",
                    "description": "Schema active on endpoint.\n"
                },
                "learnedAvailable": {
                    "type": "boolean",
                    "description": "True if a Cloudflare-provided learned schema is available for this endpoint.\n"
                },
                "mitigationAction": {
                    "type": "string",
                    "description": "Action taken on requests failing validation.\nAvailable values: \"none\", \"log\", \"block\".\n"
                }
            },
            "type": "object",
            "required": [
                "activeSchema",
                "learnedAvailable",
                "mitigationAction"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesSchemaInfoActiveSchema:getApiShieldOperationFeaturesSchemaInfoActiveSchema": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "isLearned": {
                    "type": "boolean",
                    "description": "True if schema is Cloudflare-provided.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Schema file name.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "id",
                "isLearned",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFeaturesThresholds:getApiShieldOperationFeaturesThresholds": {
            "properties": {
                "authIdTokens": {
                    "type": "integer",
                    "description": "The total number of auth-ids seen across this calculation.\n"
                },
                "dataPoints": {
                    "type": "integer",
                    "description": "The number of data points used for the threshold suggestion calculation.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "p50": {
                    "type": "integer",
                    "description": "The p50 quantile of requests (in period_seconds).\n"
                },
                "p90": {
                    "type": "integer",
                    "description": "The p90 quantile of requests (in period_seconds).\n"
                },
                "p99": {
                    "type": "integer",
                    "description": "The p99 quantile of requests (in period_seconds).\n"
                },
                "periodSeconds": {
                    "type": "integer",
                    "description": "The period over which this threshold is suggested.\n"
                },
                "requests": {
                    "type": "integer",
                    "description": "The estimated number of requests covered by these calculations.\n"
                },
                "suggestedThreshold": {
                    "type": "integer",
                    "description": "The suggested threshold in requests done by the same auth*id or period*seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "authIdTokens",
                "dataPoints",
                "lastUpdated",
                "p50",
                "p90",
                "p99",
                "periodSeconds",
                "requests",
                "suggestedThreshold"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationFilter:getApiShieldOperationFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "endpoint": {
                    "type": "string",
                    "description": "Filter results to only include endpoints containing this pattern.\n"
                },
                "features": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Filter results to only include the specified hosts.\n"
                },
                "methods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Filter results to only include the specified HTTP methods.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order by. When requesting a feature, the feature keys are available for ordering as well, e.g., `thresholds.suggested_threshold`.\nAvailable values: \"method\", \"host\", \"endpoint\", \"thresholds.$key\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getApiShieldOperationsResult:getApiShieldOperationsResult": {
            "properties": {
                "endpoint": {
                    "type": "string",
                    "description": "The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/.\n"
                },
                "features": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeatures:getApiShieldOperationsResultFeatures"
                },
                "host": {
                    "type": "string",
                    "description": "RFC3986-compliant host.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method used to access the endpoint.\nAvailable values: \"GET\", \"POST\", \"HEAD\", \"OPTIONS\", \"PUT\", \"DELETE\", \"CONNECT\", \"PATCH\", \"TRACE\".\n"
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID.\n"
                }
            },
            "type": "object",
            "required": [
                "endpoint",
                "features",
                "host",
                "id",
                "lastUpdated",
                "method",
                "operationId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeatures:getApiShieldOperationsResultFeatures": {
            "properties": {
                "apiRouting": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesApiRouting:getApiShieldOperationsResultFeaturesApiRouting",
                    "description": "API Routing settings on endpoint.\n"
                },
                "confidenceIntervals": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervals:getApiShieldOperationsResultFeaturesConfidenceIntervals"
                },
                "parameterSchemas": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesParameterSchemas:getApiShieldOperationsResultFeaturesParameterSchemas"
                },
                "schemaInfo": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesSchemaInfo:getApiShieldOperationsResultFeaturesSchemaInfo"
                },
                "thresholds": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesThresholds:getApiShieldOperationsResultFeaturesThresholds"
                }
            },
            "type": "object",
            "required": [
                "apiRouting",
                "confidenceIntervals",
                "parameterSchemas",
                "schemaInfo",
                "thresholds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesApiRouting:getApiShieldOperationsResultFeaturesApiRouting": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "route": {
                    "type": "string",
                    "description": "Target route.\n"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "route"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervals:getApiShieldOperationsResultFeaturesConfidenceIntervals": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "suggestedThreshold": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThreshold:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThreshold"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "suggestedThreshold"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThreshold:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThreshold": {
            "properties": {
                "confidenceIntervals": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals"
                },
                "mean": {
                    "type": "number",
                    "description": "Suggested threshold.\n"
                }
            },
            "type": "object",
            "required": [
                "confidenceIntervals",
                "mean"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervals": {
            "properties": {
                "p90": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90",
                    "description": "Upper and lower bound for percentile estimate\n"
                },
                "p95": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95",
                    "description": "Upper and lower bound for percentile estimate\n"
                },
                "p99": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99",
                    "description": "Upper and lower bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "p90",
                "p95",
                "p99"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP90": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "lower",
                "upper"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP95": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "lower",
                "upper"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99:getApiShieldOperationsResultFeaturesConfidenceIntervalsSuggestedThresholdConfidenceIntervalsP99": {
            "properties": {
                "lower": {
                    "type": "number",
                    "description": "Lower bound for percentile estimate\n"
                },
                "upper": {
                    "type": "number",
                    "description": "Upper bound for percentile estimate\n"
                }
            },
            "type": "object",
            "required": [
                "lower",
                "upper"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesParameterSchemas:getApiShieldOperationsResultFeaturesParameterSchemas": {
            "properties": {
                "lastUpdated": {
                    "type": "string"
                },
                "parameterSchemas": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesParameterSchemasParameterSchemas:getApiShieldOperationsResultFeaturesParameterSchemasParameterSchemas",
                    "description": "An operation schema object containing a response.\n"
                }
            },
            "type": "object",
            "required": [
                "lastUpdated",
                "parameterSchemas"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesParameterSchemasParameterSchemas:getApiShieldOperationsResultFeaturesParameterSchemasParameterSchemas": {
            "properties": {
                "parameters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array containing the learned parameter schemas.\n"
                },
                "responses": {
                    "type": "string",
                    "description": "An empty response object. This field is required to yield a valid operation schema.\n"
                }
            },
            "type": "object",
            "required": [
                "parameters",
                "responses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesSchemaInfo:getApiShieldOperationsResultFeaturesSchemaInfo": {
            "properties": {
                "activeSchema": {
                    "$ref": "#/types/cloudflare:index/getApiShieldOperationsResultFeaturesSchemaInfoActiveSchema:getApiShieldOperationsResultFeaturesSchemaInfoActiveSchema",
                    "description": "Schema active on endpoint.\n"
                },
                "learnedAvailable": {
                    "type": "boolean",
                    "description": "True if a Cloudflare-provided learned schema is available for this endpoint.\n"
                },
                "mitigationAction": {
                    "type": "string",
                    "description": "Action taken on requests failing validation.\nAvailable values: \"none\", \"log\", \"block\".\n"
                }
            },
            "type": "object",
            "required": [
                "activeSchema",
                "learnedAvailable",
                "mitigationAction"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesSchemaInfoActiveSchema:getApiShieldOperationsResultFeaturesSchemaInfoActiveSchema": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "isLearned": {
                    "type": "boolean",
                    "description": "True if schema is Cloudflare-provided.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Schema file name.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "id",
                "isLearned",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldOperationsResultFeaturesThresholds:getApiShieldOperationsResultFeaturesThresholds": {
            "properties": {
                "authIdTokens": {
                    "type": "integer",
                    "description": "The total number of auth-ids seen across this calculation.\n"
                },
                "dataPoints": {
                    "type": "integer",
                    "description": "The number of data points used for the threshold suggestion calculation.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "p50": {
                    "type": "integer",
                    "description": "The p50 quantile of requests (in period_seconds).\n"
                },
                "p90": {
                    "type": "integer",
                    "description": "The p90 quantile of requests (in period_seconds).\n"
                },
                "p99": {
                    "type": "integer",
                    "description": "The p99 quantile of requests (in period_seconds).\n"
                },
                "periodSeconds": {
                    "type": "integer",
                    "description": "The period over which this threshold is suggested.\n"
                },
                "requests": {
                    "type": "integer",
                    "description": "The estimated number of requests covered by these calculations.\n"
                },
                "suggestedThreshold": {
                    "type": "integer",
                    "description": "The suggested threshold in requests done by the same auth*id or period*seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "authIdTokens",
                "dataPoints",
                "lastUpdated",
                "p50",
                "p90",
                "p99",
                "periodSeconds",
                "requests",
                "suggestedThreshold"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiShieldSchemasResult:getApiShieldSchemasResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "kind": {
                    "type": "string",
                    "description": "Kind of schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the schema\n"
                },
                "schemaId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Source of the schema\n"
                },
                "validationEnabled": {
                    "type": "boolean",
                    "description": "Flag whether schema is enabled for validation.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "kind",
                "name",
                "schemaId",
                "source",
                "validationEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokenCondition:getApiTokenCondition": {
            "properties": {
                "requestIp": {
                    "$ref": "#/types/cloudflare:index/getApiTokenConditionRequestIp:getApiTokenConditionRequestIp",
                    "description": "Client IP restrictions.\n"
                }
            },
            "type": "object",
            "required": [
                "requestIp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokenConditionRequestIp:getApiTokenConditionRequestIp": {
            "properties": {
                "ins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                },
                "notIns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                }
            },
            "type": "object",
            "required": [
                "ins",
                "notIns"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokenFilter:getApiTokenFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getApiTokenPermissionGroupsListResult:getApiTokenPermissionGroupsListResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Public ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Permission Group Name\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Resources to which the Permission Group is scoped\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokenPolicy:getApiTokenPolicy": {
            "properties": {
                "effect": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getApiTokenPolicyPermissionGroup:getApiTokenPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resources": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A list of resource names that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "effect",
                "id",
                "permissionGroups",
                "resources"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokenPolicyPermissionGroup:getApiTokenPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getApiTokenPolicyPermissionGroupMeta:getApiTokenPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokenPolicyPermissionGroupMeta:getApiTokenPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokensResult:getApiTokensResult": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/getApiTokensResultCondition:getApiTokensResultCondition"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Token identifier tag.\n"
                },
                "issuedOn": {
                    "type": "string",
                    "description": "The time on which the token was created.\n"
                },
                "lastUsedOn": {
                    "type": "string",
                    "description": "Last time the token was used.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time the token was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Token name.\n"
                },
                "notBefore": {
                    "type": "string",
                    "description": "The time before which the token MUST NOT be accepted for processing.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getApiTokensResultPolicy:getApiTokensResultPolicy"
                    },
                    "description": "List of access policies assigned to the token.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "expiresOn",
                "id",
                "issuedOn",
                "lastUsedOn",
                "modifiedOn",
                "name",
                "notBefore",
                "policies",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokensResultCondition:getApiTokensResultCondition": {
            "properties": {
                "requestIp": {
                    "$ref": "#/types/cloudflare:index/getApiTokensResultConditionRequestIp:getApiTokensResultConditionRequestIp",
                    "description": "Client IP restrictions.\n"
                }
            },
            "type": "object",
            "required": [
                "requestIp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokensResultConditionRequestIp:getApiTokensResultConditionRequestIp": {
            "properties": {
                "ins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                },
                "notIns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of IPv4/IPv6 CIDR addresses.\n"
                }
            },
            "type": "object",
            "required": [
                "ins",
                "notIns"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokensResultPolicy:getApiTokensResultPolicy": {
            "properties": {
                "effect": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getApiTokensResultPolicyPermissionGroup:getApiTokensResultPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resources": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A list of resource names that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "effect",
                "id",
                "permissionGroups",
                "resources"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokensResultPolicyPermissionGroup:getApiTokensResultPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getApiTokensResultPolicyPermissionGroupMeta:getApiTokensResultPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getApiTokensResultPolicyPermissionGroupMeta:getApiTokensResultPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsCertificatesResult:getAuthenticatedOriginPullsCertificatesResult": {
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The zone's leaf certificate.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the uploaded certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the certificate activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "This is the time the certificate was uploaded.\n"
                }
            },
            "type": "object",
            "required": [
                "certificate",
                "expiresOn",
                "id",
                "issuer",
                "serialNumber",
                "signature",
                "status",
                "uploadedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsHostnameCertificatesResult:getAuthenticatedOriginPullsHostnameCertificatesResult": {
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The hostname certificate.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The date when the certificate expires.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the uploaded certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "The time when the certificate was uploaded.\n"
                }
            },
            "type": "object",
            "required": [
                "certificate",
                "expiresOn",
                "id",
                "issuer",
                "serialNumber",
                "signature",
                "status",
                "uploadedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getBotManagementStaleZoneConfiguration:getBotManagementStaleZoneConfiguration": {
            "properties": {
                "fightMode": {
                    "type": "boolean",
                    "description": "Indicates that the zone's Bot Fight Mode is turned on.\n"
                },
                "optimizeWordpress": {
                    "type": "boolean",
                    "description": "Indicates that the zone's wordpress optimization for SBFM is turned on.\n"
                },
                "sbfmDefinitelyAutomated": {
                    "type": "string",
                    "description": "Indicates that the zone's definitely automated requests are being blocked or challenged.\n"
                },
                "sbfmLikelyAutomated": {
                    "type": "string",
                    "description": "Indicates that the zone's likely automated requests are being blocked or challenged.\n"
                },
                "sbfmStaticResourceProtection": {
                    "type": "string",
                    "description": "Indicates that the zone's static resource protection is turned on.\n"
                },
                "sbfmVerifiedBots": {
                    "type": "string",
                    "description": "Indicates that the zone's verified bot requests are being blocked.\n"
                },
                "suppressSessionScore": {
                    "type": "boolean",
                    "description": "Indicates that the zone's session score tracking is disabled.\n"
                }
            },
            "type": "object",
            "required": [
                "fightMode",
                "optimizeWordpress",
                "sbfmDefinitelyAutomated",
                "sbfmLikelyAutomated",
                "sbfmStaticResourceProtection",
                "sbfmVerifiedBots",
                "suppressSessionScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getByoIpPrefixesResult:getByoIpPrefixesResult": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier of a Cloudflare account.\n"
                },
                "advertised": {
                    "type": "boolean",
                    "description": "Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "advertisedModifiedAt": {
                    "type": "string",
                    "description": "Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "approved": {
                    "type": "string",
                    "description": "Approval state of the prefix (P = pending, V = active).\n"
                },
                "asn": {
                    "type": "integer",
                    "description": "Autonomous System Number (ASN) the prefix will be advertised under.\n"
                },
                "cidr": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "delegateLoaCreation": {
                    "type": "boolean",
                    "description": "Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Description of the prefix.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of an IP Prefix.\n"
                },
                "irrValidationState": {
                    "type": "string",
                    "description": "State of one kind of validation for an IP prefix.\n"
                },
                "loaDocumentId": {
                    "type": "string",
                    "description": "Identifier for the uploaded LOA document.\n"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "onDemandEnabled": {
                    "type": "boolean",
                    "description": "Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "onDemandLocked": {
                    "type": "boolean",
                    "description": "Whether advertisement status of the prefix is locked, meaning it cannot be changed.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "ownershipValidationState": {
                    "type": "string",
                    "description": "State of one kind of validation for an IP prefix.\n"
                },
                "ownershipValidationToken": {
                    "type": "string",
                    "description": "Token provided to demonstrate ownership of the prefix.\n"
                },
                "rpkiValidationState": {
                    "type": "string",
                    "description": "State of one kind of validation for an IP prefix.\n"
                }
            },
            "type": "object",
            "required": [
                "accountId",
                "advertised",
                "advertisedModifiedAt",
                "approved",
                "asn",
                "cidr",
                "createdAt",
                "delegateLoaCreation",
                "description",
                "id",
                "irrValidationState",
                "loaDocumentId",
                "modifiedAt",
                "onDemandEnabled",
                "onDemandLocked",
                "ownershipValidationState",
                "ownershipValidationToken",
                "rpkiValidationState"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCallsSfuAppsResult:getCallsSfuAppsResult": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and time the item was created.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the item was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of Calls app, not shown to end users.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                }
            },
            "type": "object",
            "required": [
                "created",
                "modified",
                "name",
                "uid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCallsTurnAppsResult:getCallsTurnAppsResult": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and time the item was created.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the item was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of Calls app, not shown to end users.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                }
            },
            "type": "object",
            "required": [
                "created",
                "modified",
                "name",
                "uid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePackCertificate:getCertificatePackCertificate": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "Certificate bundle method.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "geoRestrictions": {
                    "$ref": "#/types/cloudflare:index/getCertificatePackCertificateGeoRestrictions:getCertificatePackCertificateGeoRestrictions",
                    "description": "Specify the region where your private key can be held locally.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Hostnames covered by this certificate.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Certificate identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The order/priority in which the certificate will be used.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Certificate status.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "type": "object",
            "required": [
                "bundleMethod",
                "expiresOn",
                "geoRestrictions",
                "hosts",
                "id",
                "issuer",
                "modifiedOn",
                "priority",
                "signature",
                "status",
                "uploadedOn",
                "zoneId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePackCertificateGeoRestrictions:getCertificatePackCertificateGeoRestrictions": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Available values: \"us\", \"eu\", \u003cspan pulumi-lang-nodejs=\"\"highestSecurity\"\" pulumi-lang-dotnet=\"\"HighestSecurity\"\" pulumi-lang-go=\"\"highestSecurity\"\" pulumi-lang-python=\"\"highest_security\"\" pulumi-lang-yaml=\"\"highestSecurity\"\" pulumi-lang-java=\"\"highestSecurity\"\"\u003e\"highestSecurity\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePackDcvDelegationRecord:getCertificatePackDcvDelegationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePackFilter:getCertificatePackFilter": {
            "properties": {
                "deploy": {
                    "type": "string",
                    "description": "Specify the deployment environment for the certificate packs.\nAvailable values: \"staging\", \"production\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Include Certificate Packs of all statuses, not just active ones.\nAvailable values: \"all\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getCertificatePackValidationError:getCertificatePackValidationError": {
            "properties": {
                "message": {
                    "type": "string",
                    "description": "A domain validation error.\n"
                }
            },
            "type": "object",
            "required": [
                "message"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePackValidationRecord:getCertificatePackValidationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePacksResult:getCertificatePacksResult": {
            "properties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "Certificate Authority selected for the order.  For information on any certificate authority specific details or restrictions [see this page for more details.](https://developers.cloudflare.com/ssl/reference/certificate-authorities)\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "certificates": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCertificatePacksResultCertificate:getCertificatePacksResultCertificate"
                    },
                    "description": "Array of certificates in this pack.\n"
                },
                "cloudflareBranding": {
                    "type": "boolean",
                    "description": "Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.\n"
                },
                "dcvDelegationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCertificatePacksResultDcvDelegationRecord:getCertificatePacksResultDcvDelegationRecord"
                    },
                    "description": "DCV Delegation records for domain validation.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Comma separated list of valid host names for the certificate packs. Must contain the zone apex, may not contain more than 50 hosts, and may not be empty.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "primaryCertificate": {
                    "type": "string",
                    "description": "Identifier of the primary certificate in a pack.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of certificate pack.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of certificate pack.\nAvailable values: \"mh*custom\", \"managed*hostname\", \"sni*custom\", \"universal\", \"advanced\", \"total*tls\", \"keyless\", \u003cspan pulumi-lang-nodejs=\"\"legacyCustom\"\" pulumi-lang-dotnet=\"\"LegacyCustom\"\" pulumi-lang-go=\"\"legacyCustom\"\" pulumi-lang-python=\"\"legacy_custom\"\" pulumi-lang-yaml=\"\"legacyCustom\"\" pulumi-lang-java=\"\"legacyCustom\"\"\u003e\"legacyCustom\"\u003c/span\u003e.\n"
                },
                "validationErrors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCertificatePacksResultValidationError:getCertificatePacksResultValidationError"
                    },
                    "description": "Domain validation errors that have been received by the certificate authority (CA).\n"
                },
                "validationMethod": {
                    "type": "string",
                    "description": "Validation Method selected for the order.\nAvailable values: \"txt\", \"http\", \"email\".\n"
                },
                "validationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCertificatePacksResultValidationRecord:getCertificatePacksResultValidationRecord"
                    },
                    "description": "Certificates' validation records.\n"
                },
                "validityDays": {
                    "type": "integer",
                    "description": "Validity Days selected for the order.\nAvailable values: 14, 30, 90, 365.\n"
                }
            },
            "type": "object",
            "required": [
                "certificateAuthority",
                "certificates",
                "cloudflareBranding",
                "dcvDelegationRecords",
                "hosts",
                "id",
                "primaryCertificate",
                "status",
                "type",
                "validationErrors",
                "validationMethod",
                "validationRecords",
                "validityDays"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePacksResultCertificate:getCertificatePacksResultCertificate": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "Certificate bundle method.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "geoRestrictions": {
                    "$ref": "#/types/cloudflare:index/getCertificatePacksResultCertificateGeoRestrictions:getCertificatePacksResultCertificateGeoRestrictions",
                    "description": "Specify the region where your private key can be held locally.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Hostnames covered by this certificate.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Certificate identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The order/priority in which the certificate will be used.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Certificate status.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "type": "object",
            "required": [
                "bundleMethod",
                "expiresOn",
                "geoRestrictions",
                "hosts",
                "id",
                "issuer",
                "modifiedOn",
                "priority",
                "signature",
                "status",
                "uploadedOn",
                "zoneId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePacksResultCertificateGeoRestrictions:getCertificatePacksResultCertificateGeoRestrictions": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Available values: \"us\", \"eu\", \u003cspan pulumi-lang-nodejs=\"\"highestSecurity\"\" pulumi-lang-dotnet=\"\"HighestSecurity\"\" pulumi-lang-go=\"\"highestSecurity\"\" pulumi-lang-python=\"\"highest_security\"\" pulumi-lang-yaml=\"\"highestSecurity\"\" pulumi-lang-java=\"\"highestSecurity\"\"\u003e\"highestSecurity\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePacksResultDcvDelegationRecord:getCertificatePacksResultDcvDelegationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePacksResultValidationError:getCertificatePacksResultValidationError": {
            "properties": {
                "message": {
                    "type": "string",
                    "description": "A domain validation error.\n"
                }
            },
            "type": "object",
            "required": [
                "message"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCertificatePacksResultValidationRecord:getCertificatePacksResultValidationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getClientCertificateCertificateAuthority:getClientCertificateCertificateAuthority": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getClientCertificateFilter:getClientCertificateFilter": {
            "properties": {
                "limit": {
                    "type": "integer",
                    "description": "Limit to the number of records returned.\n"
                },
                "offset": {
                    "type": "integer",
                    "description": "Offset the results\n"
                },
                "status": {
                    "type": "string",
                    "description": "Client Certitifcate Status to filter results by.\nAvailable values: \"all\", \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getClientCertificatesResult:getClientCertificatesResult": {
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The Client Certificate PEM\n"
                },
                "certificateAuthority": {
                    "$ref": "#/types/cloudflare:index/getClientCertificatesResultCertificateAuthority:getClientCertificatesResultCertificateAuthority",
                    "description": "Certificate Authority used to issue the Client Certificate\n"
                },
                "commonName": {
                    "type": "string",
                    "description": "Common Name of the Client Certificate\n"
                },
                "country": {
                    "type": "string",
                    "description": "Country, provided by the CSR\n"
                },
                "csr": {
                    "type": "string",
                    "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "Date that the Client Certificate expires\n"
                },
                "fingerprintSha256": {
                    "type": "string",
                    "description": "Unique identifier of the Client Certificate\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "issuedOn": {
                    "type": "string",
                    "description": "Date that the Client Certificate was issued by the Certificate Authority\n"
                },
                "location": {
                    "type": "string",
                    "description": "Location, provided by the CSR\n"
                },
                "organization": {
                    "type": "string",
                    "description": "Organization, provided by the CSR\n"
                },
                "organizationalUnit": {
                    "type": "string",
                    "description": "Organizational Unit, provided by the CSR\n"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the created Client Certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the Client Certificate..\n"
                },
                "ski": {
                    "type": "string",
                    "description": "Subject Key Identifier\n"
                },
                "state": {
                    "type": "string",
                    "description": "State, provided by the CSR\n"
                },
                "status": {
                    "type": "string",
                    "description": "Client Certificates may be active or revoked, and the pending*reactivation or pending*revocation represent in-progress asynchronous transitions\nAvailable values: \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n"
                },
                "validityDays": {
                    "type": "integer",
                    "description": "The number of days the Client Certificate will be valid after the\u003cspan pulumi-lang-nodejs=\" issuedOn \" pulumi-lang-dotnet=\" IssuedOn \" pulumi-lang-go=\" issuedOn \" pulumi-lang-python=\" issued_on \" pulumi-lang-yaml=\" issuedOn \" pulumi-lang-java=\" issuedOn \"\u003e issuedOn \u003c/span\u003edate\n"
                }
            },
            "type": "object",
            "required": [
                "certificate",
                "certificateAuthority",
                "commonName",
                "country",
                "csr",
                "expiresOn",
                "fingerprintSha256",
                "id",
                "issuedOn",
                "location",
                "organization",
                "organizationalUnit",
                "serialNumber",
                "signature",
                "ski",
                "state",
                "status",
                "validityDays"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getClientCertificatesResultCertificateAuthority:getClientCertificatesResultCertificateAuthority": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCloudConnectorRulesRule:getCloudConnectorRulesRule": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "expression": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "parameters": {
                    "$ref": "#/types/cloudflare:index/getCloudConnectorRulesRuleParameters:getCloudConnectorRulesRuleParameters",
                    "description": "Parameters of Cloud Connector Rule\n"
                },
                "provider": {
                    "type": "string",
                    "description": "Cloud Provider type\nAvailable values: \"aws*s3\", \"cloudflare*r2\", \"gcp*storage\", \"azure*storage\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "expression",
                "id",
                "parameters",
                "provider"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCloudConnectorRulesRuleParameters:getCloudConnectorRulesRuleParameters": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "Host to perform Cloud Connection to\n"
                }
            },
            "type": "object",
            "required": [
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCloudforceOneRequestFilter:getCloudforceOneRequestFilter": {
            "properties": {
                "completedAfter": {
                    "type": "string",
                    "description": "Retrieve requests completed after this time.\n"
                },
                "completedBefore": {
                    "type": "string",
                    "description": "Retrieve requests completed before this time.\n"
                },
                "createdAfter": {
                    "type": "string",
                    "description": "Retrieve requests created after this time.\n"
                },
                "createdBefore": {
                    "type": "string",
                    "description": "Retrieve requests created before this time.\n"
                },
                "page": {
                    "type": "integer",
                    "description": "Page number of results.\n"
                },
                "perPage": {
                    "type": "integer",
                    "description": "Number of results per page.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "Requested information from request.\n"
                },
                "sortBy": {
                    "type": "string",
                    "description": "Field to sort results by.\n"
                },
                "sortOrder": {
                    "type": "string",
                    "description": "Sort order (asc or desc).\nAvailable values: \"asc\", \"desc\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                }
            },
            "type": "object",
            "required": [
                "page",
                "perPage"
            ]
        },
        "cloudflare:index/getCloudforceOneRequestsResult:getCloudforceOneRequestsResult": {
            "properties": {
                "completed": {
                    "type": "string",
                    "description": "Request completion time.\n"
                },
                "created": {
                    "type": "string",
                    "description": "Request creation time.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "messageTokens": {
                    "type": "integer",
                    "description": "Tokens for the request messages.\n"
                },
                "priority": {
                    "type": "string",
                    "description": "Available values: \"routine\", \"high\", \"urgent\".\n"
                },
                "readableId": {
                    "type": "string",
                    "description": "Readable Request ID.\n"
                },
                "request": {
                    "type": "string",
                    "description": "Requested information from request.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                },
                "summary": {
                    "type": "string",
                    "description": "Brief description of the request.\n"
                },
                "tlp": {
                    "type": "string",
                    "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                },
                "tokens": {
                    "type": "integer",
                    "description": "Tokens for the request.\n"
                },
                "updated": {
                    "type": "string",
                    "description": "Request last updated time.\n"
                }
            },
            "type": "object",
            "required": [
                "completed",
                "created",
                "id",
                "messageTokens",
                "priority",
                "readableId",
                "request",
                "status",
                "summary",
                "tlp",
                "tokens",
                "updated"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServiceFilter:getConnectivityDirectoryServiceFilter": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"tcp\", \"http\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getConnectivityDirectoryServiceHost:getConnectivityDirectoryServiceHost": {
            "properties": {
                "hostname": {
                    "type": "string"
                },
                "ipv4": {
                    "type": "string"
                },
                "ipv6": {
                    "type": "string"
                },
                "network": {
                    "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServiceHostNetwork:getConnectivityDirectoryServiceHostNetwork"
                },
                "resolverNetwork": {
                    "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServiceHostResolverNetwork:getConnectivityDirectoryServiceHostResolverNetwork"
                }
            },
            "type": "object",
            "required": [
                "hostname",
                "ipv4",
                "ipv6",
                "network",
                "resolverNetwork"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServiceHostNetwork:getConnectivityDirectoryServiceHostNetwork": {
            "properties": {
                "tunnelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tunnelId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServiceHostResolverNetwork:getConnectivityDirectoryServiceHostResolverNetwork": {
            "properties": {
                "resolverIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tunnelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "resolverIps",
                "tunnelId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServiceTlsSettings:getConnectivityDirectoryServiceTlsSettings": {
            "properties": {
                "certVerificationMode": {
                    "type": "string",
                    "description": "TLS certificate verification mode for the connection to the origin.\n"
                }
            },
            "type": "object",
            "required": [
                "certVerificationMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServicesResult:getConnectivityDirectoryServicesResult": {
            "properties": {
                "appProtocol": {
                    "type": "string",
                    "description": "Available values: \"postgresql\", \"mysql\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "host": {
                    "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServicesResultHost:getConnectivityDirectoryServicesResultHost"
                },
                "httpPort": {
                    "type": "integer"
                },
                "httpsPort": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "serviceId": {
                    "type": "string"
                },
                "tcpPort": {
                    "type": "integer"
                },
                "tlsSettings": {
                    "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServicesResultTlsSettings:getConnectivityDirectoryServicesResultTlsSettings",
                    "description": "TLS settings for a connectivity service.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"tcp\", \"http\".\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "appProtocol",
                "createdAt",
                "host",
                "httpPort",
                "httpsPort",
                "name",
                "serviceId",
                "tcpPort",
                "tlsSettings",
                "type",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServicesResultHost:getConnectivityDirectoryServicesResultHost": {
            "properties": {
                "hostname": {
                    "type": "string"
                },
                "ipv4": {
                    "type": "string"
                },
                "ipv6": {
                    "type": "string"
                },
                "network": {
                    "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServicesResultHostNetwork:getConnectivityDirectoryServicesResultHostNetwork"
                },
                "resolverNetwork": {
                    "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServicesResultHostResolverNetwork:getConnectivityDirectoryServicesResultHostResolverNetwork"
                }
            },
            "type": "object",
            "required": [
                "hostname",
                "ipv4",
                "ipv6",
                "network",
                "resolverNetwork"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServicesResultHostNetwork:getConnectivityDirectoryServicesResultHostNetwork": {
            "properties": {
                "tunnelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tunnelId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServicesResultHostResolverNetwork:getConnectivityDirectoryServicesResultHostResolverNetwork": {
            "properties": {
                "resolverIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tunnelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "resolverIps",
                "tunnelId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getConnectivityDirectoryServicesResultTlsSettings:getConnectivityDirectoryServicesResultTlsSettings": {
            "properties": {
                "certVerificationMode": {
                    "type": "string",
                    "description": "TLS certificate verification mode for the connection to the origin.\n"
                }
            },
            "type": "object",
            "required": [
                "certVerificationMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getContentScanningExpressionsResult:getContentScanningExpressionsResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "defines the unique ID for this custom scan expression.\n"
                },
                "payload": {
                    "type": "string",
                    "description": "Defines the ruleset expression to use in matching content objects.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "payload"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameFilter:getCustomHostnameFilter": {
            "properties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "Filter by the certificate authority that issued the SSL certificate.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "customOriginServer": {
                    "type": "string",
                    "description": "Filter by custom origin server name.\n"
                },
                "direction": {
                    "type": "string",
                    "description": "Direction to order hostnames.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "hostname": {
                    "$ref": "#/types/cloudflare:index/getCustomHostnameFilterHostname:getCustomHostnameFilterHostname"
                },
                "hostnameStatus": {
                    "type": "string",
                    "description": "Filter by the hostname's activation status.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Hostname ID to match against. This ID was generated and returned during the initial\u003cspan pulumi-lang-nodejs=\" customHostname \" pulumi-lang-dotnet=\" CustomHostname \" pulumi-lang-go=\" customHostname \" pulumi-lang-python=\" custom_hostname \" pulumi-lang-yaml=\" customHostname \" pulumi-lang-java=\" customHostname \"\u003e customHostname \u003c/span\u003ecreation. This parameter cannot be used with the 'hostname' parameter.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order hostnames by.\nAvailable values: \"ssl\", \u003cspan pulumi-lang-nodejs=\"\"sslStatus\"\" pulumi-lang-dotnet=\"\"SslStatus\"\" pulumi-lang-go=\"\"sslStatus\"\" pulumi-lang-python=\"\"ssl_status\"\" pulumi-lang-yaml=\"\"sslStatus\"\" pulumi-lang-java=\"\"sslStatus\"\"\u003e\"sslStatus\"\u003c/span\u003e.\n"
                },
                "ssl": {
                    "type": "number",
                    "description": "Whether to filter hostnames based on if they have SSL enabled.\nAvailable values: 0, 1.\n"
                },
                "sslStatus": {
                    "type": "string",
                    "description": "Filter by SSL certificate status.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                },
                "wildcard": {
                    "type": "boolean",
                    "description": "Filter by whether the custom hostname is a wildcard hostname.\n"
                }
            },
            "type": "object",
            "required": [
                "order"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameFilterHostname:getCustomHostnameFilterHostname": {
            "properties": {
                "contain": {
                    "type": "string",
                    "description": "Filters hostnames by a substring match on the hostname value. This parameter cannot be used with the 'id' parameter.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getCustomHostnameOwnershipVerification:getCustomHostnameOwnershipVerification": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "DNS Name for record.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS Record type.\nAvailable values: \"txt\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Content for the record.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameOwnershipVerificationHttp:getCustomHostnameOwnershipVerificationHttp": {
            "properties": {
                "httpBody": {
                    "type": "string",
                    "description": "Token to be served.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The HTTP URL that will be checked during custom hostname verification and where the customer should host the token.\n"
                }
            },
            "type": "object",
            "required": [
                "httpBody",
                "httpUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameSsl:getCustomHostnameSsl": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificateAuthority": {
                    "type": "string",
                    "description": "The Certificate Authority that will issue the certificate\nAvailable values: \"digicert\", \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "customCertificate": {
                    "type": "string",
                    "description": "If a custom uploaded certificate is used.\n"
                },
                "customCsrId": {
                    "type": "string",
                    "description": "The identifier for the Custom CSR that was used.\n"
                },
                "customKey": {
                    "type": "string",
                    "description": "The key for a custom uploaded certificate.\n",
                    "secret": true
                },
                "dcvDelegationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameSslDcvDelegationRecord:getCustomHostnameSslDcvDelegationRecord"
                    },
                    "description": "DCV Delegation records for domain validation.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The time the custom certificate expires on.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of Hostnames on a custom uploaded certificate.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Custom hostname SSL identifier tag.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The issuer on a custom uploaded certificate.\n"
                },
                "method": {
                    "type": "string",
                    "description": "Domain control validation (DCV) method used for this hostname.\nAvailable values: \"http\", \"txt\", \"email\".\n"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on a custom uploaded certificate.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getCustomHostnameSslSettings:getCustomHostnameSslSettings"
                },
                "signature": {
                    "type": "string",
                    "description": "The signature on a custom uploaded certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the hostname's SSL certificates.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Level of validation to be used for this hostname. Domain validation (dv) must be used.\nAvailable values: \"dv\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "The time the custom certificate was uploaded.\n"
                },
                "validationErrors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameSslValidationError:getCustomHostnameSslValidationError"
                    },
                    "description": "Domain validation errors that have been received by the certificate authority (CA).\n"
                },
                "validationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameSslValidationRecord:getCustomHostnameSslValidationRecord"
                    }
                },
                "wildcard": {
                    "type": "boolean",
                    "description": "Indicates whether the certificate covers a wildcard.\n"
                }
            },
            "type": "object",
            "required": [
                "bundleMethod",
                "certificateAuthority",
                "customCertificate",
                "customCsrId",
                "customKey",
                "dcvDelegationRecords",
                "expiresOn",
                "hosts",
                "id",
                "issuer",
                "method",
                "serialNumber",
                "settings",
                "signature",
                "status",
                "type",
                "uploadedOn",
                "validationErrors",
                "validationRecords",
                "wildcard"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameSslDcvDelegationRecord:getCustomHostnameSslDcvDelegationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameSslSettings:getCustomHostnameSslSettings": {
            "properties": {
                "ciphers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n"
                },
                "earlyHints": {
                    "type": "string",
                    "description": "Whether or not Early Hints is enabled.\nAvailable values: \"on\", \"off\".\n"
                },
                "http2": {
                    "type": "string",
                    "description": "Whether or not HTTP2 is enabled.\nAvailable values: \"on\", \"off\".\n"
                },
                "minTlsVersion": {
                    "type": "string",
                    "description": "The minimum TLS version supported.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n"
                },
                "tls13": {
                    "type": "string",
                    "description": "Whether or not TLS 1.3 is enabled.\nAvailable values: \"on\", \"off\".\n"
                }
            },
            "type": "object",
            "required": [
                "ciphers",
                "earlyHints",
                "http2",
                "minTlsVersion",
                "tls13"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameSslValidationError:getCustomHostnameSslValidationError": {
            "properties": {
                "message": {
                    "type": "string",
                    "description": "A domain validation error.\n"
                }
            },
            "type": "object",
            "required": [
                "message"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnameSslValidationRecord:getCustomHostnameSslValidationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesHostname:getCustomHostnamesHostname": {
            "properties": {
                "contain": {
                    "type": "string",
                    "description": "Filters hostnames by a substring match on the hostname value. This parameter cannot be used with the 'id' parameter.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getCustomHostnamesResult:getCustomHostnamesResult": {
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "This is the time the hostname was created.\n"
                },
                "customMetadata": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Unique key/value metadata for this hostname. These are per-hostname (customer) settings.\n"
                },
                "customOriginServer": {
                    "type": "string",
                    "description": "a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record.\n"
                },
                "customOriginSni": {
                    "type": "string",
                    "description": "A hostname that will be sent to your custom origin server as SNI for TLS handshake. This can be a valid subdomain of the zone or custom origin server name or the string ':request*host*header:' which will cause the host header in the request to be used as SNI. Not configurable with default/fallback origin server.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The custom hostname that will point to your hostname via CNAME.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "ownershipVerification": {
                    "$ref": "#/types/cloudflare:index/getCustomHostnamesResultOwnershipVerification:getCustomHostnamesResultOwnershipVerification",
                    "description": "This is a record which can be placed to activate a hostname.\n"
                },
                "ownershipVerificationHttp": {
                    "$ref": "#/types/cloudflare:index/getCustomHostnamesResultOwnershipVerificationHttp:getCustomHostnamesResultOwnershipVerificationHttp",
                    "description": "This presents the token to be served by the given http url to activate a hostname.\n"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/getCustomHostnamesResultSsl:getCustomHostnamesResultSsl"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n"
                },
                "verificationErrors": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "These are errors that were encountered while trying to activate a hostname.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "customMetadata",
                "customOriginServer",
                "customOriginSni",
                "hostname",
                "id",
                "ownershipVerification",
                "ownershipVerificationHttp",
                "ssl",
                "status",
                "verificationErrors"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultOwnershipVerification:getCustomHostnamesResultOwnershipVerification": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "DNS Name for record.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS Record type.\nAvailable values: \"txt\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Content for the record.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultOwnershipVerificationHttp:getCustomHostnamesResultOwnershipVerificationHttp": {
            "properties": {
                "httpBody": {
                    "type": "string",
                    "description": "Token to be served.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The HTTP URL that will be checked during custom hostname verification and where the customer should host the token.\n"
                }
            },
            "type": "object",
            "required": [
                "httpBody",
                "httpUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultSsl:getCustomHostnamesResultSsl": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificateAuthority": {
                    "type": "string",
                    "description": "The Certificate Authority that will issue the certificate\nAvailable values: \"digicert\", \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "customCertificate": {
                    "type": "string",
                    "description": "If a custom uploaded certificate is used.\n"
                },
                "customCsrId": {
                    "type": "string",
                    "description": "The identifier for the Custom CSR that was used.\n"
                },
                "customKey": {
                    "type": "string",
                    "description": "The key for a custom uploaded certificate.\n",
                    "secret": true
                },
                "dcvDelegationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnamesResultSslDcvDelegationRecord:getCustomHostnamesResultSslDcvDelegationRecord"
                    },
                    "description": "DCV Delegation records for domain validation.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The time the custom certificate expires on.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of Hostnames on a custom uploaded certificate.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Custom hostname SSL identifier tag.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The issuer on a custom uploaded certificate.\n"
                },
                "method": {
                    "type": "string",
                    "description": "Domain control validation (DCV) method used for this hostname.\nAvailable values: \"http\", \"txt\", \"email\".\n"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on a custom uploaded certificate.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getCustomHostnamesResultSslSettings:getCustomHostnamesResultSslSettings"
                },
                "signature": {
                    "type": "string",
                    "description": "The signature on a custom uploaded certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the hostname's SSL certificates.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Level of validation to be used for this hostname. Domain validation (dv) must be used.\nAvailable values: \"dv\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "The time the custom certificate was uploaded.\n"
                },
                "validationErrors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnamesResultSslValidationError:getCustomHostnamesResultSslValidationError"
                    },
                    "description": "Domain validation errors that have been received by the certificate authority (CA).\n"
                },
                "validationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnamesResultSslValidationRecord:getCustomHostnamesResultSslValidationRecord"
                    }
                },
                "wildcard": {
                    "type": "boolean",
                    "description": "Indicates whether the certificate covers a wildcard.\n"
                }
            },
            "type": "object",
            "required": [
                "bundleMethod",
                "certificateAuthority",
                "customCertificate",
                "customCsrId",
                "customKey",
                "dcvDelegationRecords",
                "expiresOn",
                "hosts",
                "id",
                "issuer",
                "method",
                "serialNumber",
                "settings",
                "signature",
                "status",
                "type",
                "uploadedOn",
                "validationErrors",
                "validationRecords",
                "wildcard"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultSslDcvDelegationRecord:getCustomHostnamesResultSslDcvDelegationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultSslSettings:getCustomHostnamesResultSslSettings": {
            "properties": {
                "ciphers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n"
                },
                "earlyHints": {
                    "type": "string",
                    "description": "Whether or not Early Hints is enabled.\nAvailable values: \"on\", \"off\".\n"
                },
                "http2": {
                    "type": "string",
                    "description": "Whether or not HTTP2 is enabled.\nAvailable values: \"on\", \"off\".\n"
                },
                "minTlsVersion": {
                    "type": "string",
                    "description": "The minimum TLS version supported.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n"
                },
                "tls13": {
                    "type": "string",
                    "description": "Whether or not TLS 1.3 is enabled.\nAvailable values: \"on\", \"off\".\n"
                }
            },
            "type": "object",
            "required": [
                "ciphers",
                "earlyHints",
                "http2",
                "minTlsVersion",
                "tls13"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultSslValidationError:getCustomHostnamesResultSslValidationError": {
            "properties": {
                "message": {
                    "type": "string",
                    "description": "A domain validation error.\n"
                }
            },
            "type": "object",
            "required": [
                "message"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomHostnamesResultSslValidationRecord:getCustomHostnamesResultSslValidationRecord": {
            "properties": {
                "cname": {
                    "type": "string",
                    "description": "The CNAME record hostname for DCV delegation.\n"
                },
                "cnameTarget": {
                    "type": "string",
                    "description": "The CNAME record target value for DCV delegation.\n"
                },
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation.\n"
                },
                "httpBody": {
                    "type": "string",
                    "description": "The content that the certificate authority (CA) will expect to find at the\u003cspan pulumi-lang-nodejs=\" httpUrl \" pulumi-lang-dotnet=\" HttpUrl \" pulumi-lang-go=\" httpUrl \" pulumi-lang-python=\" http_url \" pulumi-lang-yaml=\" httpUrl \" pulumi-lang-java=\" httpUrl \"\u003e httpUrl \u003c/span\u003eduring the domain validation.\n"
                },
                "httpUrl": {
                    "type": "string",
                    "description": "The url that will be checked during domain validation.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the validation record.\n"
                },
                "txtName": {
                    "type": "string",
                    "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .\n"
                },
                "txtValue": {
                    "type": "string",
                    "description": "The TXT record that the certificate authority (CA) will check during domain validation.\n"
                }
            },
            "type": "object",
            "required": [
                "cname",
                "cnameTarget",
                "emails",
                "httpBody",
                "httpUrl",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomOriginTrustStoreFilter:getCustomOriginTrustStoreFilter": {
            "properties": {
                "limit": {
                    "type": "integer",
                    "description": "Limit to the number of records returned.\n"
                },
                "offset": {
                    "type": "integer",
                    "description": "Offset the results\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getCustomOriginTrustStoresResult:getCustomOriginTrustStoresResult": {
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate expires.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the zone's custom SSL.\nAvailable values: \"initializing\", \"pending*deployment\", \"active\", \"pending*deletion\", \"deleted\", \"expired\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare.\n"
                }
            },
            "type": "object",
            "required": [
                "certificate",
                "expiresOn",
                "id",
                "issuer",
                "signature",
                "status",
                "updatedAt",
                "uploadedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomPageAssetsResult:getCustomPageAssetsResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A short description of the custom asset.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n"
                },
                "sizeBytes": {
                    "type": "integer",
                    "description": "The size of the asset content in bytes.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL where the asset content is fetched from.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "lastUpdated",
                "name",
                "sizeBytes",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomPagesListResult:getCustomPagesListResult": {
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "previewTarget": {
                    "type": "string"
                },
                "requiredTokens": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "state": {
                    "type": "string",
                    "description": "The custom page state.\nAvailable values: \"default\", \"customized\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL associated with the custom page.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "description",
                "id",
                "modifiedOn",
                "previewTarget",
                "requiredTokens",
                "state",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslFilter:getCustomSslFilter": {
            "properties": {
                "match": {
                    "type": "string",
                    "description": "Whether to match all search requirements or at least one (any).\nAvailable values: \"any\", \"all\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the zone's custom SSL.\nAvailable values: \"active\", \"expired\", \"deleted\", \"pending\", \"initializing\".\n"
                }
            },
            "type": "object",
            "required": [
                "match"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslGeoRestrictions:getCustomSslGeoRestrictions": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Available values: \"us\", \"eu\", \u003cspan pulumi-lang-nodejs=\"\"highestSecurity\"\" pulumi-lang-dotnet=\"\"HighestSecurity\"\" pulumi-lang-go=\"\"highestSecurity\"\" pulumi-lang-python=\"\"highest_security\"\" pulumi-lang-yaml=\"\"highestSecurity\"\" pulumi-lang-java=\"\"highestSecurity\"\"\u003e\"highestSecurity\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslKeylessServer:getCustomSslKeylessServer": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Keyless SSL is on or off.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Keyless certificate identifier tag.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n"
                },
                "tunnel": {
                    "$ref": "#/types/cloudflare:index/getCustomSslKeylessServerTunnel:getCustomSslKeylessServerTunnel",
                    "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "enabled",
                "host",
                "id",
                "modifiedOn",
                "name",
                "permissions",
                "port",
                "status",
                "tunnel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslKeylessServerTunnel:getCustomSslKeylessServerTunnel": {
            "properties": {
                "privateIp": {
                    "type": "string",
                    "description": "Private IP of the Key Server Host\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Cloudflare Tunnel Virtual Network ID\n"
                }
            },
            "type": "object",
            "required": [
                "privateIp",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslsResult:getCustomSslsResult": {
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "customCsrId": {
                    "type": "string",
                    "description": "The identifier for the Custom CSR that was used.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "geoRestrictions": {
                    "$ref": "#/types/cloudflare:index/getCustomSslsResultGeoRestrictions:getCustomSslsResultGeoRestrictions",
                    "description": "Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "keylessServer": {
                    "$ref": "#/types/cloudflare:index/getCustomSslsResultKeylessServer:getCustomSslsResultKeylessServer"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "policyRestrictions": {
                    "type": "string",
                    "description": "The policy restrictions returned by the API. This field is returned in responses\nwhen a policy has been set. The API accepts the \"policy\" field in requests but\nreturns this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e in responses.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The order/priority in which the certificate will be used in a request. The higher priority will break ties across overlapping 'legacy_custom' certificates, but 'legacy_custom' certificates will always supercede 'sni_custom' certificates.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the zone's custom SSL.\nAvailable values: \"active\", \"expired\", \"deleted\", \"pending\", \"initializing\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "type": "object",
            "required": [
                "bundleMethod",
                "customCsrId",
                "expiresOn",
                "geoRestrictions",
                "hosts",
                "id",
                "issuer",
                "keylessServer",
                "modifiedOn",
                "policyRestrictions",
                "priority",
                "signature",
                "status",
                "uploadedOn",
                "zoneId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslsResultGeoRestrictions:getCustomSslsResultGeoRestrictions": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Available values: \"us\", \"eu\", \u003cspan pulumi-lang-nodejs=\"\"highestSecurity\"\" pulumi-lang-dotnet=\"\"HighestSecurity\"\" pulumi-lang-go=\"\"highestSecurity\"\" pulumi-lang-python=\"\"highest_security\"\" pulumi-lang-yaml=\"\"highestSecurity\"\" pulumi-lang-java=\"\"highestSecurity\"\"\u003e\"highestSecurity\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslsResultKeylessServer:getCustomSslsResultKeylessServer": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Keyless SSL is on or off.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Keyless certificate identifier tag.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n"
                },
                "tunnel": {
                    "$ref": "#/types/cloudflare:index/getCustomSslsResultKeylessServerTunnel:getCustomSslsResultKeylessServerTunnel",
                    "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "enabled",
                "host",
                "id",
                "modifiedOn",
                "name",
                "permissions",
                "port",
                "status",
                "tunnel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getCustomSslsResultKeylessServerTunnel:getCustomSslsResultKeylessServerTunnel": {
            "properties": {
                "privateIp": {
                    "type": "string",
                    "description": "Private IP of the Key Server Host\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Cloudflare Tunnel Virtual Network ID\n"
                }
            },
            "type": "object",
            "required": [
                "privateIp",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getD1DatabaseFilter:getD1DatabaseFilter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "a database name to search for.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getD1DatabaseReadReplication:getD1DatabaseReadReplication": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The read replication mode for the database. Use 'auto' to create replicas and allow D1 automatically place them around the world, or 'disabled' to not use any database replicas (it can take a few hours for all replicas to be deleted).\nAvailable values: \"auto\", \"disabled\".\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getD1DatabasesResult:getD1DatabasesResult": {
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Specifies the timestamp the resource was created as an ISO8601 string.\n"
                },
                "id": {
                    "type": "string",
                    "description": "D1 database identifier (UUID).\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.\nAvailable values: \"eu\", \"fedramp\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "D1 database name.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "D1 database identifier (UUID).\n"
                },
                "version": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "id",
                "jurisdiction",
                "name",
                "uuid",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsFirewallAttackMitigation:getDnsFirewallAttackMitigation": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "When enabled, automatically mitigate random-prefix attacks to protect upstream DNS servers\n"
                },
                "onlyWhenUpstreamUnhealthy": {
                    "type": "boolean",
                    "description": "Only mitigate attacks when upstream servers seem unhealthy\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "onlyWhenUpstreamUnhealthy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsFirewallsResult:getDnsFirewallsResult": {
            "properties": {
                "attackMitigation": {
                    "$ref": "#/types/cloudflare:index/getDnsFirewallsResultAttackMitigation:getDnsFirewallsResultAttackMitigation",
                    "description": "Attack mitigation settings\n"
                },
                "deprecateAnyRequests": {
                    "type": "boolean",
                    "description": "Whether to refuse to answer queries for the ANY type\n"
                },
                "dnsFirewallIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ecsFallback": {
                    "type": "boolean",
                    "description": "Whether to forward client IP (resolver) subnet if no EDNS Client Subnet is sent\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "maximumCacheTtl": {
                    "type": "number",
                    "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets an upper bound on this duration. For caching purposes, higher TTLs\nwill be decreased to the maximum value defined by this setting.\n"
                },
                "minimumCacheTtl": {
                    "type": "number",
                    "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets a lower bound on this duration. For caching purposes, lower TTLs\nwill be increased to the minimum value defined by this setting.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n\nNote that, even with this setting, there is no guarantee that a\nresponse will be cached for at least the specified duration. Cached\nresponses may be removed earlier for capacity or other operational\nreasons.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last modification of DNS Firewall cluster\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS Firewall cluster name\n"
                },
                "negativeCacheTtl": {
                    "type": "number",
                    "description": "This setting controls how long DNS Firewall should cache negative\nresponses (e.g., NXDOMAIN) from the upstream servers.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n"
                },
                "ratelimit": {
                    "type": "number",
                    "description": "Ratelimit in queries per second per datacenter (applies to DNS queries sent to the upstream nameservers configured on the cluster)\n"
                },
                "retries": {
                    "type": "number",
                    "description": "Number of retries for fetching DNS responses from upstream nameservers (not counting the initial attempt)\n"
                },
                "upstreamIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "attackMitigation",
                "deprecateAnyRequests",
                "dnsFirewallIps",
                "ecsFallback",
                "id",
                "maximumCacheTtl",
                "minimumCacheTtl",
                "modifiedOn",
                "name",
                "negativeCacheTtl",
                "ratelimit",
                "retries",
                "upstreamIps"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsFirewallsResultAttackMitigation:getDnsFirewallsResultAttackMitigation": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "When enabled, automatically mitigate random-prefix attacks to protect upstream DNS servers\n"
                },
                "onlyWhenUpstreamUnhealthy": {
                    "type": "boolean",
                    "description": "Only mitigate attacks when upstream servers seem unhealthy\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "onlyWhenUpstreamUnhealthy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordData:getDnsRecordData": {
            "properties": {
                "algorithm": {
                    "type": "number",
                    "description": "Algorithm.\n"
                },
                "altitude": {
                    "type": "number",
                    "description": "Altitude of location in meters.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "Certificate.\n"
                },
                "digest": {
                    "type": "string",
                    "description": "Digest.\n"
                },
                "digestType": {
                    "type": "number",
                    "description": "Digest Type.\n"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "Fingerprint.\n"
                },
                "flags": {
                    "$ref": "pulumi.json#/Any",
                    "description": "Flags for the CAA record.\n"
                },
                "keyTag": {
                    "type": "number",
                    "description": "Key Tag.\n"
                },
                "latDegrees": {
                    "type": "number",
                    "description": "Degrees of latitude.\n"
                },
                "latDirection": {
                    "type": "string",
                    "description": "Latitude direction.\nAvailable values: \"N\", \"S\".\n"
                },
                "latMinutes": {
                    "type": "number",
                    "description": "Minutes of latitude.\n"
                },
                "latSeconds": {
                    "type": "number",
                    "description": "Seconds of latitude.\n"
                },
                "longDegrees": {
                    "type": "number",
                    "description": "Degrees of longitude.\n"
                },
                "longDirection": {
                    "type": "string",
                    "description": "Longitude direction.\nAvailable values: \"E\", \"W\".\n"
                },
                "longMinutes": {
                    "type": "number",
                    "description": "Minutes of longitude.\n"
                },
                "longSeconds": {
                    "type": "number",
                    "description": "Seconds of longitude.\n"
                },
                "matchingType": {
                    "type": "number",
                    "description": "Matching Type.\n"
                },
                "order": {
                    "type": "number",
                    "description": "Order.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port of the service.\n"
                },
                "precisionHorz": {
                    "type": "number",
                    "description": "Horizontal precision of location.\n"
                },
                "precisionVert": {
                    "type": "number",
                    "description": "Vertical precision of location.\n"
                },
                "preference": {
                    "type": "number",
                    "description": "Preference.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority.\n"
                },
                "protocol": {
                    "type": "number",
                    "description": "Protocol.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "Public Key.\n"
                },
                "regex": {
                    "type": "string",
                    "description": "Regex.\n"
                },
                "replacement": {
                    "type": "string",
                    "description": "Replacement.\n"
                },
                "selector": {
                    "type": "number",
                    "description": "Selector.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Service.\n"
                },
                "size": {
                    "type": "number",
                    "description": "Size of location in meters.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Name of the property controlled by this record (e.g.: issue, issuewild, iodef).\n"
                },
                "target": {
                    "type": "string",
                    "description": "Target.\n"
                },
                "type": {
                    "type": "number",
                    "description": "Type.\n"
                },
                "usage": {
                    "type": "number",
                    "description": "Usage.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the record. This field's semantics depend on the chosen tag.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The record weight.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm",
                "altitude",
                "certificate",
                "digest",
                "digestType",
                "fingerprint",
                "flags",
                "keyTag",
                "latDegrees",
                "latDirection",
                "latMinutes",
                "latSeconds",
                "longDegrees",
                "longDirection",
                "longMinutes",
                "longSeconds",
                "matchingType",
                "order",
                "port",
                "precisionHorz",
                "precisionVert",
                "preference",
                "priority",
                "protocol",
                "publicKey",
                "regex",
                "replacement",
                "selector",
                "service",
                "size",
                "tag",
                "target",
                "type",
                "usage",
                "value",
                "weight"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordFilter:getDnsRecordFilter": {
            "properties": {
                "comment": {
                    "$ref": "#/types/cloudflare:index/getDnsRecordFilterComment:getDnsRecordFilterComment"
                },
                "content": {
                    "$ref": "#/types/cloudflare:index/getDnsRecordFilterContent:getDnsRecordFilterContent"
                },
                "direction": {
                    "type": "string",
                    "description": "Direction to order DNS records in.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "match": {
                    "type": "string",
                    "description": "Whether to match all search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead. Note that the interaction between tag filters is controlled by the `tag-match` parameter instead.\nAvailable values: \"any\", \"all\".\n"
                },
                "name": {
                    "$ref": "#/types/cloudflare:index/getDnsRecordFilterName:getDnsRecordFilterName"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order DNS records by.\nAvailable values: \"type\", \"name\", \"content\", \"ttl\", \"proxied\".\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                },
                "search": {
                    "type": "string",
                    "description": "Allows searching in multiple properties of a DNS record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future. This parameter works independently of the \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e setting. For automated searches, please use the other available parameters.\n"
                },
                "tag": {
                    "$ref": "#/types/cloudflare:index/getDnsRecordFilterTag:getDnsRecordFilterTag"
                },
                "tagMatch": {
                    "type": "string",
                    "description": "Whether to match all tag search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between tag filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead. Note that the regular \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e parameter is still used to combine the resulting condition with other filters that aren't related to tags.\nAvailable values: \"any\", \"all\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CAA\", \"CERT\", \"CNAME\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"MX\", \"NAPTR\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"TXT\", \"URI\".\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "match",
                "order",
                "proxied",
                "tagMatch"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordFilterComment:getDnsRecordFilterComment": {
            "properties": {
                "absent": {
                    "type": "string",
                    "description": "If this parameter is present, only records *without* a comment are returned.\n"
                },
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS record comment. Comment filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS record comment. Comment filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS record comment. Comment filters are case-insensitive.\n"
                },
                "present": {
                    "type": "string",
                    "description": "If this parameter is present, only records *with* a comment are returned.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS record comment. Comment filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordFilterContent:getDnsRecordFilterContent": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS record content. Content filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS record content. Content filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS record content. Content filters are case-insensitive.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS record content. Content filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordFilterName:getDnsRecordFilterName": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS record name. Name filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS record name. Name filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS record name. Name filters are case-insensitive.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS record name. Name filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordFilterTag:getDnsRecordFilterTag": {
            "properties": {
                "absent": {
                    "type": "string",
                    "description": "Name of a tag which must *not* be present on the DNS record. Tag filters are case-insensitive.\n"
                },
                "contains": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value contains `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value ends with `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value is `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                },
                "present": {
                    "type": "string",
                    "description": "Name of a tag which must be present on the DNS record. Tag filters are case-insensitive.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value starts with `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordSettings:getDnsRecordSettings": {
            "properties": {
                "flattenCname": {
                    "type": "boolean",
                    "description": "If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened.\n"
                },
                "ipv4Only": {
                    "type": "boolean",
                    "description": "When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                },
                "ipv6Only": {
                    "type": "boolean",
                    "description": "When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                }
            },
            "type": "object",
            "required": [
                "flattenCname",
                "ipv4Only",
                "ipv6Only"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordsComment:getDnsRecordsComment": {
            "properties": {
                "absent": {
                    "type": "string",
                    "description": "If this parameter is present, only records *without* a comment are returned.\n"
                },
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS record comment. Comment filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS record comment. Comment filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS record comment. Comment filters are case-insensitive.\n"
                },
                "present": {
                    "type": "string",
                    "description": "If this parameter is present, only records *with* a comment are returned.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS record comment. Comment filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordsContent:getDnsRecordsContent": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS record content. Content filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS record content. Content filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS record content. Content filters are case-insensitive.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS record content. Content filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordsName:getDnsRecordsName": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "Substring of the DNS record name. Name filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "Suffix of the DNS record name. Name filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "Exact value of the DNS record name. Name filters are case-insensitive.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "Prefix of the DNS record name. Name filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsRecordsResult:getDnsRecordsResult": {
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                },
                "commentModifiedOn": {
                    "type": "string",
                    "description": "When the record comment was last modified. Omitted if there is no comment.\n"
                },
                "content": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the record was created.\n"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/getDnsRecordsResultData:getDnsRecordsResultData",
                    "description": "Components of a CAA record.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "Extra Cloudflare-specific information about the record.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the record was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Complete DNS record name, including the zone name, in Punycode.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map.\n"
                },
                "privateRouting": {
                    "type": "boolean",
                    "description": "Enables private network routing to the origin.\n"
                },
                "proxiable": {
                    "type": "boolean",
                    "description": "Whether the record can be proxied by Cloudflare or not.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getDnsRecordsResultSettings:getDnsRecordsResultSettings",
                    "description": "Settings for the DNS record.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                },
                "tagsModifiedOn": {
                    "type": "string",
                    "description": "When the record tags were last modified. Omitted if there are no tags.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "required": [
                "comment",
                "commentModifiedOn",
                "content",
                "createdOn",
                "data",
                "id",
                "meta",
                "modifiedOn",
                "name",
                "priority",
                "privateRouting",
                "proxiable",
                "proxied",
                "settings",
                "tags",
                "tagsModifiedOn",
                "ttl",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordsResultData:getDnsRecordsResultData": {
            "properties": {
                "algorithm": {
                    "type": "number",
                    "description": "Algorithm.\n"
                },
                "altitude": {
                    "type": "number",
                    "description": "Altitude of location in meters.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "Certificate.\n"
                },
                "digest": {
                    "type": "string",
                    "description": "Digest.\n"
                },
                "digestType": {
                    "type": "number",
                    "description": "Digest Type.\n"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "Fingerprint.\n"
                },
                "flags": {
                    "$ref": "pulumi.json#/Any",
                    "description": "Flags for the CAA record.\n"
                },
                "keyTag": {
                    "type": "number",
                    "description": "Key Tag.\n"
                },
                "latDegrees": {
                    "type": "number",
                    "description": "Degrees of latitude.\n"
                },
                "latDirection": {
                    "type": "string",
                    "description": "Latitude direction.\nAvailable values: \"N\", \"S\".\n"
                },
                "latMinutes": {
                    "type": "number",
                    "description": "Minutes of latitude.\n"
                },
                "latSeconds": {
                    "type": "number",
                    "description": "Seconds of latitude.\n"
                },
                "longDegrees": {
                    "type": "number",
                    "description": "Degrees of longitude.\n"
                },
                "longDirection": {
                    "type": "string",
                    "description": "Longitude direction.\nAvailable values: \"E\", \"W\".\n"
                },
                "longMinutes": {
                    "type": "number",
                    "description": "Minutes of longitude.\n"
                },
                "longSeconds": {
                    "type": "number",
                    "description": "Seconds of longitude.\n"
                },
                "matchingType": {
                    "type": "number",
                    "description": "Matching Type.\n"
                },
                "order": {
                    "type": "number",
                    "description": "Order.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port of the service.\n"
                },
                "precisionHorz": {
                    "type": "number",
                    "description": "Horizontal precision of location.\n"
                },
                "precisionVert": {
                    "type": "number",
                    "description": "Vertical precision of location.\n"
                },
                "preference": {
                    "type": "number",
                    "description": "Preference.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority.\n"
                },
                "protocol": {
                    "type": "number",
                    "description": "Protocol.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "Public Key.\n"
                },
                "regex": {
                    "type": "string",
                    "description": "Regex.\n"
                },
                "replacement": {
                    "type": "string",
                    "description": "Replacement.\n"
                },
                "selector": {
                    "type": "number",
                    "description": "Selector.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Service.\n"
                },
                "size": {
                    "type": "number",
                    "description": "Size of location in meters.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Name of the property controlled by this record (e.g.: issue, issuewild, iodef).\n"
                },
                "target": {
                    "type": "string",
                    "description": "Target.\n"
                },
                "type": {
                    "type": "number",
                    "description": "Type.\n"
                },
                "usage": {
                    "type": "number",
                    "description": "Usage.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the record. This field's semantics depend on the chosen tag.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The record weight.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm",
                "altitude",
                "certificate",
                "digest",
                "digestType",
                "fingerprint",
                "flags",
                "keyTag",
                "latDegrees",
                "latDirection",
                "latMinutes",
                "latSeconds",
                "longDegrees",
                "longDirection",
                "longMinutes",
                "longSeconds",
                "matchingType",
                "order",
                "port",
                "precisionHorz",
                "precisionVert",
                "preference",
                "priority",
                "protocol",
                "publicKey",
                "regex",
                "replacement",
                "selector",
                "service",
                "size",
                "tag",
                "target",
                "type",
                "usage",
                "value",
                "weight"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordsResultSettings:getDnsRecordsResultSettings": {
            "properties": {
                "flattenCname": {
                    "type": "boolean",
                    "description": "If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened.\n"
                },
                "ipv4Only": {
                    "type": "boolean",
                    "description": "When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                },
                "ipv6Only": {
                    "type": "boolean",
                    "description": "When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.\n"
                }
            },
            "type": "object",
            "required": [
                "flattenCname",
                "ipv4Only",
                "ipv6Only"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsRecordsTag:getDnsRecordsTag": {
            "properties": {
                "absent": {
                    "type": "string",
                    "description": "Name of a tag which must *not* be present on the DNS record. Tag filters are case-insensitive.\n"
                },
                "contains": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value contains `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                },
                "endswith": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value ends with `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                },
                "exact": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value is `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                },
                "present": {
                    "type": "string",
                    "description": "Name of a tag which must be present on the DNS record. Tag filters are case-insensitive.\n"
                },
                "startswith": {
                    "type": "string",
                    "description": "A tag and value, of the form `\u003ctag-name\u003e:\u003ctag-value\u003e`. The API will only return DNS records that have a tag named `\u003ctag-name\u003e` whose value starts with `\u003ctag-value\u003e`. Tag filters are case-insensitive.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getDnsZoneTransfersAclsResult:getDnsZoneTransfersAclsResult": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "ipRange": {
                    "type": "string",
                    "description": "Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the acl.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "ipRange",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsZoneTransfersPeersResult:getDnsZoneTransfersPeersResult": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "ip": {
                    "type": "string",
                    "description": "IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to.\n"
                },
                "ixfrEnable": {
                    "type": "boolean",
                    "description": "Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the peer.\n"
                },
                "port": {
                    "type": "number",
                    "description": "DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.\n"
                },
                "tsigId": {
                    "type": "string",
                    "description": "TSIG authentication will be used for zone transfer if configured.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "ip",
                "ixfrEnable",
                "name",
                "port",
                "tsigId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getDnsZoneTransfersTsigsResult:getDnsZoneTransfersTsigsResult": {
            "properties": {
                "algo": {
                    "type": "string",
                    "description": "TSIG algorithm.\n"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "TSIG key name.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "TSIG secret.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "algo",
                "id",
                "name",
                "secret"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingAddressFilter:getEmailRoutingAddressFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Sorts results in an ascending or descending order.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "verified": {
                    "type": "boolean",
                    "description": "Filter by verified destination addresses.\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "verified"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingAddressesResult:getEmailRoutingAddressesResult": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and time the destination address has been created.\n"
                },
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Destination address identifier.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the destination address was last modified.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Destination address tag. (Deprecated, replaced by destination address identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "verified": {
                    "type": "string",
                    "description": "The date and time the destination address has been verified. Null means not verified yet.\n"
                }
            },
            "type": "object",
            "required": [
                "created",
                "email",
                "id",
                "modified",
                "tag",
                "verified"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingCatchAllAction:getEmailRoutingCatchAllAction": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of action for catch-all rule.\nAvailable values: \"drop\", \"forward\", \"worker\".\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "type",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingCatchAllMatcher:getEmailRoutingCatchAllMatcher": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of matcher. Default is 'all'.\nAvailable values: \"all\".\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsError:getEmailRoutingDnsError": {
            "properties": {
                "code": {
                    "type": "integer"
                },
                "documentationUrl": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getEmailRoutingDnsErrorSource:getEmailRoutingDnsErrorSource"
                }
            },
            "type": "object",
            "required": [
                "code",
                "documentationUrl",
                "message",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsErrorSource:getEmailRoutingDnsErrorSource": {
            "properties": {
                "pointer": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "pointer"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsMessage:getEmailRoutingDnsMessage": {
            "properties": {
                "code": {
                    "type": "integer"
                },
                "documentationUrl": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getEmailRoutingDnsMessageSource:getEmailRoutingDnsMessageSource"
                }
            },
            "type": "object",
            "required": [
                "code",
                "documentationUrl",
                "message",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsMessageSource:getEmailRoutingDnsMessageSource": {
            "properties": {
                "pointer": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "pointer"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsResult:getEmailRoutingDnsResult": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "DNS record content.\n"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingDnsResultError:getEmailRoutingDnsResultError"
                    }
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex).\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.\n"
                },
                "records": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingDnsResultRecord:getEmailRoutingDnsResultRecord"
                    }
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"HTTPS\", \"TXT\", \"SRV\", \"LOC\", \"MX\", \"NS\", \"CERT\", \"DNSKEY\", \"DS\", \"NAPTR\", \"SMIMEA\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "required": [
                "content",
                "errors",
                "name",
                "priority",
                "records",
                "ttl",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsResultError:getEmailRoutingDnsResultError": {
            "properties": {
                "code": {
                    "type": "string"
                },
                "missing": {
                    "$ref": "#/types/cloudflare:index/getEmailRoutingDnsResultErrorMissing:getEmailRoutingDnsResultErrorMissing",
                    "description": "List of records needed to enable an Email Routing zone.\n"
                }
            },
            "type": "object",
            "required": [
                "code",
                "missing"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsResultErrorMissing:getEmailRoutingDnsResultErrorMissing": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "DNS record content.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex).\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"HTTPS\", \"TXT\", \"SRV\", \"LOC\", \"MX\", \"NS\", \"CERT\", \"DNSKEY\", \"DS\", \"NAPTR\", \"SMIMEA\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "required": [
                "content",
                "name",
                "priority",
                "ttl",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsResultInfo:getEmailRoutingDnsResultInfo": {
            "properties": {
                "emailRoutingDnsCount": {
                    "type": "number",
                    "description": "Total number of results for the requested service.\n"
                },
                "page": {
                    "type": "number",
                    "description": "Current page within paginated list of results.\n"
                },
                "perPage": {
                    "type": "number",
                    "description": "Number of results per page of results.\n"
                },
                "totalCount": {
                    "type": "number",
                    "description": "Total results available without any search parameters.\n"
                },
                "totalPages": {
                    "type": "number",
                    "description": "The number of total pages in the entire result set.\n"
                }
            },
            "type": "object",
            "required": [
                "emailRoutingDnsCount",
                "page",
                "perPage",
                "totalCount",
                "totalPages"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingDnsResultRecord:getEmailRoutingDnsResultRecord": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "DNS record content.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex).\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.\n"
                },
                "type": {
                    "type": "string",
                    "description": "DNS record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"HTTPS\", \"TXT\", \"SRV\", \"LOC\", \"MX\", \"NS\", \"CERT\", \"DNSKEY\", \"DS\", \"NAPTR\", \"SMIMEA\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                }
            },
            "type": "object",
            "required": [
                "content",
                "name",
                "priority",
                "ttl",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingRuleAction:getEmailRoutingRuleAction": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of supported action.\nAvailable values: \"drop\", \"forward\", \"worker\".\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "type",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingRuleFilter:getEmailRoutingRuleFilter": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Filter by enabled routing rules.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getEmailRoutingRuleMatcher:getEmailRoutingRuleMatcher": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Field for type matcher.\nAvailable values: \"to\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of matcher.\nAvailable values: \"all\", \"literal\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value for matcher.\n"
                }
            },
            "type": "object",
            "required": [
                "field",
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingRulesResult:getEmailRoutingRulesResult": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingRulesResultAction:getEmailRoutingRulesResultAction"
                    },
                    "description": "List actions patterns.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Routing rule status.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Routing rule identifier.\n"
                },
                "matchers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingRulesResultMatcher:getEmailRoutingRulesResultMatcher"
                    },
                    "description": "Matching patterns to forward to your actions.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Routing rule name.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority of the routing rule.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "actions",
                "enabled",
                "id",
                "matchers",
                "name",
                "priority",
                "tag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingRulesResultAction:getEmailRoutingRulesResultAction": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of supported action.\nAvailable values: \"drop\", \"forward\", \"worker\".\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "type",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailRoutingRulesResultMatcher:getEmailRoutingRulesResultMatcher": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Field for type matcher.\nAvailable values: \"to\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of matcher.\nAvailable values: \"all\", \"literal\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value for matcher.\n"
                }
            },
            "type": "object",
            "required": [
                "field",
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailSecurityBlockSenderFilter:getEmailSecurityBlockSenderFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "order": {
                    "type": "string",
                    "description": "The field to sort by.\nAvailable values: \"pattern\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                },
                "pattern": {
                    "type": "string"
                },
                "patternType": {
                    "type": "string",
                    "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n"
                },
                "search": {
                    "type": "string",
                    "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getEmailSecurityBlockSendersResult:getEmailSecurityBlockSendersResult": {
            "properties": {
                "comments": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "integer",
                    "description": "The unique identifier for the allow policy.\n"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "lastModified": {
                    "type": "string"
                },
                "pattern": {
                    "type": "string"
                },
                "patternType": {
                    "type": "string",
                    "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n"
                }
            },
            "type": "object",
            "required": [
                "comments",
                "createdAt",
                "id",
                "isRegex",
                "lastModified",
                "pattern",
                "patternType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailSecurityImpersonationRegistriesResult:getEmailSecurityImpersonationRegistriesResult": {
            "properties": {
                "comments": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "directoryId": {
                    "type": "integer"
                },
                "directoryNodeId": {
                    "type": "integer"
                },
                "email": {
                    "type": "string"
                },
                "externalDirectoryNodeId": {
                    "type": "string",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "id": {
                    "type": "integer"
                },
                "isEmailRegex": {
                    "type": "boolean"
                },
                "lastModified": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "provenance": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "comments",
                "createdAt",
                "directoryId",
                "directoryNodeId",
                "email",
                "externalDirectoryNodeId",
                "id",
                "isEmailRegex",
                "lastModified",
                "name",
                "provenance"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getEmailSecurityImpersonationRegistryFilter:getEmailSecurityImpersonationRegistryFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "order": {
                    "type": "string",
                    "description": "The field to sort by.\nAvailable values: \"name\", \"email\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                },
                "provenance": {
                    "type": "string",
                    "description": "Available values: \"A1S*INTERNAL\", \"SNOOPY-CASB*OFFICE*365\", \"SNOOPY-OFFICE*365\", \"SNOOPY-GOOGLE_DIRECTORY\".\n"
                },
                "search": {
                    "type": "string",
                    "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getEmailSecurityTrustedDomainsFilter:getEmailSecurityTrustedDomainsFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "isRecent": {
                    "type": "boolean"
                },
                "isSimilarity": {
                    "type": "boolean"
                },
                "order": {
                    "type": "string",
                    "description": "The field to sort by.\nAvailable values: \"pattern\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                },
                "pattern": {
                    "type": "string"
                },
                "search": {
                    "type": "string",
                    "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getEmailSecurityTrustedDomainsListResult:getEmailSecurityTrustedDomainsListResult": {
            "properties": {
                "comments": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "integer",
                    "description": "The unique identifier for the trusted domain.\n"
                },
                "isRecent": {
                    "type": "boolean",
                    "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.\n"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "isSimilarity": {
                    "type": "boolean",
                    "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.\n"
                },
                "lastModified": {
                    "type": "string"
                },
                "pattern": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "comments",
                "createdAt",
                "id",
                "isRecent",
                "isRegex",
                "isSimilarity",
                "lastModified",
                "pattern"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getFilterFilter:getFilterFilter": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A case-insensitive string to find in the description.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "A case-insensitive string to find in the expression.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the filter.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "The filter ref (a short reference tag) to search for. Must be an exact match.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getFiltersResult:getFiltersResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "An informative summary of the filter.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the filter.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related filters.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "expression",
                "id",
                "paused",
                "ref"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getFirewallRulesResult:getFirewallRulesResult": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to apply to a matched request. The \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e action is only available on an Enterprise plan.\nAvailable values: \"block\", \"challenge\", \"js*challenge\", \"managed*challenge\", \"allow\", \"log\", \"bypass\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the firewall rule.\n"
                },
                "filter": {
                    "$ref": "#/types/cloudflare:index/getFirewallRulesResultFilter:getFirewallRulesResultFilter"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the firewall rule.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the firewall rule is currently paused.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The priority of the rule. Optional value used to define the processing order. A lower number indicates a higher priority. If not provided, rules with a defined priority will be processed before rules without a priority.\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related firewall rules.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "description",
                "filter",
                "id",
                "paused",
                "priority",
                "products",
                "ref"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getFirewallRulesResultFilter:getFirewallRulesResultFilter": {
            "properties": {
                "deleted": {
                    "type": "boolean",
                    "description": "When true, indicates that the firewall rule was deleted.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the filter.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the filter.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related filters.\n"
                }
            },
            "type": "object",
            "required": [
                "deleted",
                "description",
                "expression",
                "id",
                "paused",
                "ref"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHealthcheckHttpConfig:getHealthcheckHttpConfig": {
            "properties": {
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Do not validate the certificate when the health check uses HTTPS.\n"
                },
                "expectedBody": {
                    "type": "string",
                    "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy.\n"
                },
                "expectedCodes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The expected HTTP response codes (e.g. \"200\") or code ranges (e.g. \"2xx\" for all codes starting with 2) of the health check.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Follow redirects if the origin returns a 3xx status code.\n"
                },
                "header": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method to use for the health check.\nAvailable values: \"GET\", \"HEAD\".\n"
                },
                "path": {
                    "type": "string",
                    "description": "The endpoint path to health check against.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Port number to connect to for the health check. Defaults to 80 if type is HTTP or 443 if type is HTTPS.\n"
                }
            },
            "type": "object",
            "required": [
                "allowInsecure",
                "expectedBody",
                "expectedCodes",
                "followRedirects",
                "header",
                "method",
                "path",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHealthcheckTcpConfig:getHealthcheckTcpConfig": {
            "properties": {
                "method": {
                    "type": "string",
                    "description": "The TCP connection method to use for the health check.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"connectionEstablished\"\" pulumi-lang-dotnet=\"\"ConnectionEstablished\"\" pulumi-lang-go=\"\"connectionEstablished\"\" pulumi-lang-python=\"\"connection_established\"\" pulumi-lang-yaml=\"\"connectionEstablished\"\" pulumi-lang-java=\"\"connectionEstablished\"\"\u003e\"connectionEstablished\"\u003c/span\u003e.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Port number to connect to for the health check. Defaults to 80.\n"
                }
            },
            "type": "object",
            "required": [
                "method",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHealthchecksResult:getHealthchecksResult": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The hostname or IP address of the origin server to run health checks on.\n"
                },
                "checkRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.\n"
                },
                "consecutiveFails": {
                    "type": "integer",
                    "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.\n"
                },
                "consecutiveSuccesses": {
                    "type": "integer",
                    "description": "The number of consecutive successes required from a health check before changing the health to healthy.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description of the health check.\n"
                },
                "failureReason": {
                    "type": "string",
                    "description": "The current failure reason if status is unhealthy.\n"
                },
                "httpConfig": {
                    "$ref": "#/types/cloudflare:index/getHealthchecksResultHttpConfig:getHealthchecksResultHttpConfig",
                    "description": "Parameters specific to an HTTP or HTTPS health check.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The current status of the origin server according to the health check.\nAvailable values: \"unknown\", \"healthy\", \"unhealthy\", \"suspended\".\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "If suspended, no health checks are sent to the origin.\n"
                },
                "tcpConfig": {
                    "$ref": "#/types/cloudflare:index/getHealthchecksResultTcpConfig:getHealthchecksResultTcpConfig",
                    "description": "Parameters specific to TCP health check.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The timeout (in seconds) before marking the health check as failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "checkRegions",
                "consecutiveFails",
                "consecutiveSuccesses",
                "createdOn",
                "description",
                "failureReason",
                "httpConfig",
                "id",
                "interval",
                "modifiedOn",
                "name",
                "retries",
                "status",
                "suspended",
                "tcpConfig",
                "timeout",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHealthchecksResultHttpConfig:getHealthchecksResultHttpConfig": {
            "properties": {
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Do not validate the certificate when the health check uses HTTPS.\n"
                },
                "expectedBody": {
                    "type": "string",
                    "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy.\n"
                },
                "expectedCodes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The expected HTTP response codes (e.g. \"200\") or code ranges (e.g. \"2xx\" for all codes starting with 2) of the health check.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Follow redirects if the origin returns a 3xx status code.\n"
                },
                "header": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method to use for the health check.\nAvailable values: \"GET\", \"HEAD\".\n"
                },
                "path": {
                    "type": "string",
                    "description": "The endpoint path to health check against.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Port number to connect to for the health check. Defaults to 80 if type is HTTP or 443 if type is HTTPS.\n"
                }
            },
            "type": "object",
            "required": [
                "allowInsecure",
                "expectedBody",
                "expectedCodes",
                "followRedirects",
                "header",
                "method",
                "path",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHealthchecksResultTcpConfig:getHealthchecksResultTcpConfig": {
            "properties": {
                "method": {
                    "type": "string",
                    "description": "The TCP connection method to use for the health check.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"connectionEstablished\"\" pulumi-lang-dotnet=\"\"ConnectionEstablished\"\" pulumi-lang-go=\"\"connectionEstablished\"\" pulumi-lang-python=\"\"connection_established\"\" pulumi-lang-yaml=\"\"connectionEstablished\"\" pulumi-lang-java=\"\"connectionEstablished\"\"\u003e\"connectionEstablished\"\u003c/span\u003e.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Port number to connect to for the health check. Defaults to 80.\n"
                }
            },
            "type": "object",
            "required": [
                "method",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigCaching:getHyperdriveConfigCaching": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Set to true to disable caching of SQL responses. Default is false.\n"
                },
                "maxAge": {
                    "type": "integer",
                    "description": "Specify the maximum duration (in seconds) items should persist in the cache. Defaults to 60 seconds if not specified.\n"
                },
                "staleWhileRevalidate": {
                    "type": "integer",
                    "description": "Specify the number of seconds the cache may serve a stale response. Defaults to 15 seconds if not specified.\n"
                }
            },
            "type": "object",
            "required": [
                "disabled",
                "maxAge",
                "staleWhileRevalidate"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigMtls:getHyperdriveConfigMtls": {
            "properties": {
                "caCertificateId": {
                    "type": "string",
                    "description": "Define CA certificate ID obtained after uploading CA cert.\n"
                },
                "mtlsCertificateId": {
                    "type": "string",
                    "description": "Define mTLS certificate ID obtained after uploading client cert.\n"
                },
                "sslmode": {
                    "type": "string",
                    "description": "Set SSL mode to 'require', 'verify-ca', or 'verify-full' to verify the CA.\n"
                }
            },
            "type": "object",
            "required": [
                "caCertificateId",
                "mtlsCertificateId",
                "sslmode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigOrigin:getHyperdriveConfigOrigin": {
            "properties": {
                "accessClientId": {
                    "type": "string",
                    "description": "Defines the Client ID of the Access token to use when connecting to the origin database.\n"
                },
                "accessClientSecret": {
                    "type": "string",
                    "description": "Defines the Client Secret of the Access Token to use when connecting to the origin database. The API never returns this write-only value.\n",
                    "secret": true
                },
                "database": {
                    "type": "string",
                    "description": "Set the name of your origin database.\n"
                },
                "host": {
                    "type": "string",
                    "description": "Defines the host (hostname or IP) of your origin database.\n"
                },
                "password": {
                    "type": "string",
                    "description": "Set the password needed to access your origin database. The API never returns this write-only value.\n",
                    "secret": true
                },
                "port": {
                    "type": "integer",
                    "description": "Defines the port of your origin database. Defaults to 5432 for PostgreSQL or 3306 for MySQL if not specified.\n"
                },
                "scheme": {
                    "type": "string",
                    "description": "Specifies the URL scheme used to connect to your origin database.\nAvailable values: \"postgres\", \"postgresql\", \"mysql\".\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "The identifier of the Workers VPC Service to connect through. Hyperdrive will egress through the specified VPC Service to reach the origin database.\n"
                },
                "user": {
                    "type": "string",
                    "description": "Set the user of your origin database.\n"
                }
            },
            "type": "object",
            "required": [
                "accessClientId",
                "accessClientSecret",
                "database",
                "host",
                "password",
                "port",
                "scheme",
                "serviceId",
                "user"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigsResult:getHyperdriveConfigsResult": {
            "properties": {
                "caching": {
                    "$ref": "#/types/cloudflare:index/getHyperdriveConfigsResultCaching:getHyperdriveConfigsResultCaching"
                },
                "createdOn": {
                    "type": "string",
                    "description": "Defines the creation time of the Hyperdrive configuration.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Define configurations using a unique string identifier.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Defines the last modified time of the Hyperdrive configuration.\n"
                },
                "mtls": {
                    "$ref": "#/types/cloudflare:index/getHyperdriveConfigsResultMtls:getHyperdriveConfigsResultMtls",
                    "description": "mTLS configuration for the origin connection. Cannot be used with VPC Service origins; TLS must be managed on the VPC Service.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API.\n"
                },
                "origin": {
                    "$ref": "#/types/cloudflare:index/getHyperdriveConfigsResultOrigin:getHyperdriveConfigsResultOrigin"
                },
                "originConnectionLimit": {
                    "type": "integer",
                    "description": "The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.\n"
                }
            },
            "type": "object",
            "required": [
                "caching",
                "createdOn",
                "id",
                "modifiedOn",
                "mtls",
                "name",
                "origin",
                "originConnectionLimit"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigsResultCaching:getHyperdriveConfigsResultCaching": {
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Set to true to disable caching of SQL responses. Default is false.\n"
                },
                "maxAge": {
                    "type": "integer",
                    "description": "Specify the maximum duration (in seconds) items should persist in the cache. Defaults to 60 seconds if not specified.\n"
                },
                "staleWhileRevalidate": {
                    "type": "integer",
                    "description": "Specify the number of seconds the cache may serve a stale response. Defaults to 15 seconds if not specified.\n"
                }
            },
            "type": "object",
            "required": [
                "disabled",
                "maxAge",
                "staleWhileRevalidate"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigsResultMtls:getHyperdriveConfigsResultMtls": {
            "properties": {
                "caCertificateId": {
                    "type": "string",
                    "description": "Define CA certificate ID obtained after uploading CA cert.\n"
                },
                "mtlsCertificateId": {
                    "type": "string",
                    "description": "Define mTLS certificate ID obtained after uploading client cert.\n"
                },
                "sslmode": {
                    "type": "string",
                    "description": "Set SSL mode to 'require', 'verify-ca', or 'verify-full' to verify the CA.\n"
                }
            },
            "type": "object",
            "required": [
                "caCertificateId",
                "mtlsCertificateId",
                "sslmode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getHyperdriveConfigsResultOrigin:getHyperdriveConfigsResultOrigin": {
            "properties": {
                "accessClientId": {
                    "type": "string",
                    "description": "Defines the Client ID of the Access token to use when connecting to the origin database.\n"
                },
                "accessClientSecret": {
                    "type": "string",
                    "description": "Defines the Client Secret of the Access Token to use when connecting to the origin database. The API never returns this write-only value.\n",
                    "secret": true
                },
                "database": {
                    "type": "string",
                    "description": "Set the name of your origin database.\n"
                },
                "host": {
                    "type": "string",
                    "description": "Defines the host (hostname or IP) of your origin database.\n"
                },
                "password": {
                    "type": "string",
                    "description": "Set the password needed to access your origin database. The API never returns this write-only value.\n",
                    "secret": true
                },
                "port": {
                    "type": "integer",
                    "description": "Defines the port of your origin database. Defaults to 5432 for PostgreSQL or 3306 for MySQL if not specified.\n"
                },
                "scheme": {
                    "type": "string",
                    "description": "Specifies the URL scheme used to connect to your origin database.\nAvailable values: \"postgres\", \"postgresql\", \"mysql\".\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "The identifier of the Workers VPC Service to connect through. Hyperdrive will egress through the specified VPC Service to reach the origin database.\n"
                },
                "user": {
                    "type": "string",
                    "description": "Set the user of your origin database.\n"
                }
            },
            "type": "object",
            "required": [
                "accessClientId",
                "accessClientSecret",
                "database",
                "host",
                "password",
                "port",
                "scheme",
                "serviceId",
                "user"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getImageVariantVariant:getImageVariantVariant": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "neverRequireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the variant can access an image without a signature, regardless of image access control.\n"
                },
                "options": {
                    "$ref": "#/types/cloudflare:index/getImageVariantVariantOptions:getImageVariantVariantOptions",
                    "description": "Allows you to define image resizing sizes for different use cases.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "neverRequireSignedUrls",
                "options"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getImageVariantVariantOptions:getImageVariantVariantOptions": {
            "properties": {
                "fit": {
                    "type": "string",
                    "description": "The fit property describes how the width and height dimensions should be interpreted.\nAvailable values: \"scale-down\", \"contain\", \"cover\", \"crop\", \"pad\".\n"
                },
                "height": {
                    "type": "number",
                    "description": "Maximum height in image pixels.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "What EXIF data should be preserved in the output image.\nAvailable values: \"keep\", \"copyright\", \"none\".\n"
                },
                "width": {
                    "type": "number",
                    "description": "Maximum width in image pixels.\n"
                }
            },
            "type": "object",
            "required": [
                "fit",
                "height",
                "metadata",
                "width"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getImagesResult:getImagesResult": {
            "properties": {
                "images": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getImagesResultImage:getImagesResultImage"
                    }
                }
            },
            "type": "object",
            "required": [
                "images"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getImagesResultImage:getImagesResultImage": {
            "properties": {
                "creator": {
                    "type": "string",
                    "description": "Can set the creator field with an internal user ID.\n"
                },
                "filename": {
                    "type": "string",
                    "description": "Image file name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Image unique identifier.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "User modifiable key-value store. Can be used for keeping references to another system of record for managing images. Metadata must not exceed 1024 bytes.\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the image can be a accessed only using it's UID. If set to true, a signed token needs to be generated with a signing key to view the image.\n"
                },
                "uploaded": {
                    "type": "string",
                    "description": "When the media item was uploaded.\n"
                },
                "variants": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Object specifying available variants for an image.\n"
                }
            },
            "type": "object",
            "required": [
                "creator",
                "filename",
                "id",
                "meta",
                "requireSignedUrls",
                "uploaded",
                "variants"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getKeylessCertificateTunnel:getKeylessCertificateTunnel": {
            "properties": {
                "privateIp": {
                    "type": "string",
                    "description": "Private IP of the Key Server Host\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Cloudflare Tunnel Virtual Network ID\n"
                }
            },
            "type": "object",
            "required": [
                "privateIp",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getKeylessCertificatesResult:getKeylessCertificatesResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Keyless SSL is on or off.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Keyless certificate identifier tag.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n"
                },
                "tunnel": {
                    "$ref": "#/types/cloudflare:index/getKeylessCertificatesResultTunnel:getKeylessCertificatesResultTunnel",
                    "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "enabled",
                "host",
                "id",
                "modifiedOn",
                "name",
                "permissions",
                "port",
                "status",
                "tunnel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getKeylessCertificatesResultTunnel:getKeylessCertificatesResultTunnel": {
            "properties": {
                "privateIp": {
                    "type": "string",
                    "description": "Private IP of the Key Server Host\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Cloudflare Tunnel Virtual Network ID\n"
                }
            },
            "type": "object",
            "required": [
                "privateIp",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLeakedCredentialCheckRulesResult:getLeakedCredentialCheckRulesResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Defines the unique ID for this custom detection.\n"
                },
                "password": {
                    "type": "string",
                    "description": "Defines ehe ruleset expression to use in matching the password in a request.\n"
                },
                "username": {
                    "type": "string",
                    "description": "Defines the ruleset expression to use in matching the username in a request.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "password",
                "username"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListItem:getListItem": {
            "properties": {
                "asn": {
                    "type": "integer",
                    "description": "A non-negative 32 bit integer\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An informative summary of the list item.\n"
                },
                "hostname": {
                    "$ref": "#/types/cloudflare:index/getListItemHostname:getListItemHostname",
                    "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                },
                "ip": {
                    "type": "string",
                    "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/getListItemRedirect:getListItemRedirect",
                    "description": "The definition of the redirect.\n"
                }
            },
            "type": "object",
            "required": [
                "asn",
                "comment",
                "hostname",
                "ip",
                "redirect"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListItemHostname:getListItemHostname": {
            "properties": {
                "excludeExactHostname": {
                    "type": "boolean",
                    "description": "Only applies to wildcard hostnames (e.g., *.example.com). When true (default), only subdomains are blocked. When false, both the root domain and subdomains are blocked.\n"
                },
                "urlHostname": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "excludeExactHostname",
                "urlHostname"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListItemRedirect:getListItemRedirect": {
            "properties": {
                "includeSubdomains": {
                    "type": "boolean"
                },
                "preservePathSuffix": {
                    "type": "boolean"
                },
                "preserveQueryString": {
                    "type": "boolean"
                },
                "sourceUrl": {
                    "type": "string"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "Available values: 301, 302, 307, 308.\n"
                },
                "subpathMatching": {
                    "type": "boolean"
                },
                "targetUrl": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "includeSubdomains",
                "preservePathSuffix",
                "preserveQueryString",
                "sourceUrl",
                "statusCode",
                "subpathMatching",
                "targetUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListItemsResult:getListItemsResult": {
            "properties": {
                "asn": {
                    "type": "integer",
                    "description": "Defines a non-negative 32 bit integer.\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Defines\tan informative summary of the list item.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the item was created.\n"
                },
                "hostname": {
                    "$ref": "#/types/cloudflare:index/getListItemsResultHostname:getListItemsResultHostname",
                    "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                },
                "id": {
                    "type": "string",
                    "description": "Defines the unique ID of the item in the List.\n"
                },
                "ip": {
                    "type": "string",
                    "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the item was last modified.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/getListItemsResultRedirect:getListItemsResultRedirect",
                    "description": "The definition of the redirect.\n"
                }
            },
            "type": "object",
            "required": [
                "asn",
                "comment",
                "createdOn",
                "hostname",
                "id",
                "ip",
                "modifiedOn",
                "redirect"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListItemsResultHostname:getListItemsResultHostname": {
            "properties": {
                "excludeExactHostname": {
                    "type": "boolean",
                    "description": "Only applies to wildcard hostnames (e.g., *.example.com). When true (default), only subdomains are blocked. When false, both the root domain and subdomains are blocked.\n"
                },
                "urlHostname": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "excludeExactHostname",
                "urlHostname"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListItemsResultRedirect:getListItemsResultRedirect": {
            "properties": {
                "includeSubdomains": {
                    "type": "boolean"
                },
                "preservePathSuffix": {
                    "type": "boolean"
                },
                "preserveQueryString": {
                    "type": "boolean"
                },
                "sourceUrl": {
                    "type": "string"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "Available values: 301, 302, 307, 308.\n"
                },
                "subpathMatching": {
                    "type": "boolean"
                },
                "targetUrl": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "includeSubdomains",
                "preservePathSuffix",
                "preserveQueryString",
                "sourceUrl",
                "statusCode",
                "subpathMatching",
                "targetUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getListsResult:getListsResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the list was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the list.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the list.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects).\nAvailable values: \"ip\", \"redirect\", \"hostname\", \"asn\".\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the list was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "An informative name for the list. Use this name in filter and rule expressions.\n"
                },
                "numItems": {
                    "type": "number",
                    "description": "The number of items in the list.\n"
                },
                "numReferencingFilters": {
                    "type": "number",
                    "description": "The number of [filters](https://www.terraform.io/api/resources/filters/) referencing the list.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "description",
                "id",
                "kind",
                "modifiedOn",
                "name",
                "numItems",
                "numReferencingFilters"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerAdaptiveRouting:getLoadBalancerAdaptiveRouting": {
            "properties": {
                "failoverAcrossPools": {
                    "type": "boolean",
                    "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for control over when sessions are broken or reassigned.\n"
                }
            },
            "type": "object",
            "required": [
                "failoverAcrossPools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerLocationStrategy:getLoadBalancerLocationStrategy": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n"
                },
                "preferEcs": {
                    "type": "string",
                    "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "preferEcs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerMonitorsResult:getLoadBalancerMonitorsResult": {
            "properties": {
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Do not validate the certificate when monitor use HTTPS. This parameter is currently only valid for HTTP and HTTPS monitors.\n"
                },
                "consecutiveDown": {
                    "type": "integer",
                    "description": "To be marked unhealthy the monitored origin must fail this healthcheck N consecutive times.\n"
                },
                "consecutiveUp": {
                    "type": "integer",
                    "description": "To be marked healthy the monitored origin must pass this healthcheck N consecutive times.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Object description.\n"
                },
                "expectedBody": {
                    "type": "string",
                    "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "expectedCodes": {
                    "type": "string",
                    "description": "The expected HTTP response code or code range of the health check. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Follow redirects if returned by the origin. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "header": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "id": {
                    "type": "string"
                },
                "interval": {
                    "type": "integer",
                    "description": "The interval between each health check. Shorter intervals may improve failover time, but will increase load on the origins as we check from multiple locations.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The method to use for the health check. This defaults to 'GET' for HTTP/HTTPS based checks and 'connection_established' for TCP based health checks.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "path": {
                    "type": "string",
                    "description": "The endpoint path you want to conduct a health check against. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "The port number to connect to for the health check. Required for TCP, UDP, and SMTP checks. HTTP and HTTPS checks should only define the port when using a non-standard port (HTTP: default 80, HTTPS: default 443).\n"
                },
                "probeZone": {
                    "type": "string",
                    "description": "Assign this monitor to emulate the specified zone while probing. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The timeout (in seconds) before marking the health check as failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP','HTTPS', 'TCP', 'ICMP-PING', 'UDP-ICMP', and 'SMTP'.\nAvailable values: \"http\", \"https\", \"tcp\", \"udp*icmp\", \"icmp*ping\", \"smtp\".\n"
                }
            },
            "type": "object",
            "required": [
                "allowInsecure",
                "consecutiveDown",
                "consecutiveUp",
                "createdOn",
                "description",
                "expectedBody",
                "expectedCodes",
                "followRedirects",
                "header",
                "id",
                "interval",
                "method",
                "modifiedOn",
                "path",
                "port",
                "probeZone",
                "retries",
                "timeout",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolFilter:getLoadBalancerPoolFilter": {
            "properties": {
                "monitor": {
                    "type": "string",
                    "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getLoadBalancerPoolLoadShedding:getLoadBalancerPoolLoadShedding": {
            "properties": {
                "defaultPercent": {
                    "type": "number",
                    "description": "The percent of traffic to shed from the pool, according to the default policy. Applies to new sessions and traffic without session affinity.\n"
                },
                "defaultPolicy": {
                    "type": "string",
                    "description": "The default policy to use when load shedding. A random policy randomly sheds a given percent of requests. A hash policy computes a hash over the CF-Connecting-IP address and sheds all requests originating from a percent of IPs.\nAvailable values: \"random\", \"hash\".\n"
                },
                "sessionPercent": {
                    "type": "number",
                    "description": "The percent of existing sessions to shed from the pool, according to the session policy.\n"
                },
                "sessionPolicy": {
                    "type": "string",
                    "description": "Only the hash policy is supported for existing sessions (to avoid exponential decay).\nAvailable values: \"hash\".\n"
                }
            },
            "type": "object",
            "required": [
                "defaultPercent",
                "defaultPolicy",
                "sessionPercent",
                "sessionPolicy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolNotificationFilter:getLoadBalancerPoolNotificationFilter": {
            "properties": {
                "origin": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolNotificationFilterOrigin:getLoadBalancerPoolNotificationFilterOrigin",
                    "description": "Filter options for a particular resource type (pool or origin). Use null to reset.\n"
                },
                "pool": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolNotificationFilterPool:getLoadBalancerPoolNotificationFilterPool",
                    "description": "Filter options for a particular resource type (pool or origin). Use null to reset.\n"
                }
            },
            "type": "object",
            "required": [
                "origin",
                "pool"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolNotificationFilterOrigin:getLoadBalancerPoolNotificationFilterOrigin": {
            "properties": {
                "disable": {
                    "type": "boolean",
                    "description": "If set true, disable notifications for this type of resource (pool or origin).\n"
                },
                "healthy": {
                    "type": "boolean",
                    "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).\n"
                }
            },
            "type": "object",
            "required": [
                "disable",
                "healthy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolNotificationFilterPool:getLoadBalancerPoolNotificationFilterPool": {
            "properties": {
                "disable": {
                    "type": "boolean",
                    "description": "If set true, disable notifications for this type of resource (pool or origin).\n"
                },
                "healthy": {
                    "type": "boolean",
                    "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).\n"
                }
            },
            "type": "object",
            "required": [
                "disable",
                "healthy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolOrigin:getLoadBalancerPoolOrigin": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The IP address (IPv4 or IPv6) of the origin, or its publicly addressable hostname. Hostnames entered here should resolve directly to the origin, and not be a hostname proxied by Cloudflare. To set an internal/reserved address, virtual*network*id must also be set.\n"
                },
                "disabledAt": {
                    "type": "string",
                    "description": "This field shows up only if the origin is disabled. This field is set with the time the origin was disabled.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) this origin within the pool. Disabled origins will not receive traffic and are excluded from health checks. The origin will only be disabled for the current pool.\n"
                },
                "flattenCname": {
                    "type": "boolean",
                    "description": "Whether to flatten CNAME records for this origin, resolving them to A/AAAA records before returning to the client. When true (the default), the director resolves CNAME addresses to their underlying A/AAAA records. When false, the origin address is returned as a raw CNAME record without resolution. This setting mirrors the DNS API record\u003cspan pulumi-lang-nodejs=\" flattenCname \" pulumi-lang-dotnet=\" FlattenCname \" pulumi-lang-go=\" flattenCname \" pulumi-lang-python=\" flatten_cname \" pulumi-lang-yaml=\" flattenCname \" pulumi-lang-java=\" flattenCname \"\u003e flattenCname \u003c/span\u003esetting.\n"
                },
                "header": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolOriginHeader:getLoadBalancerPoolOriginHeader",
                    "description": "The request header is used to pass additional information with an HTTP request. Currently supported header is 'Host'.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-identifiable name for the origin.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "The port for upstream connections. A value of 0 means the default port for the protocol will be used.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "The virtual network subnet ID the origin belongs in. Virtual network must also belong to the account.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The weight of this origin relative to other origins in the pool. Based on the configured weight the total traffic is distributed among origins within the pool.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "disabledAt",
                "enabled",
                "flattenCname",
                "header",
                "name",
                "port",
                "virtualNetworkId",
                "weight"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolOriginHeader:getLoadBalancerPoolOriginHeader": {
            "properties": {
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The 'Host' header allows to override the hostname set in the HTTP request. Current support is 1 'Host' header override per origin.\n"
                }
            },
            "type": "object",
            "required": [
                "hosts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolOriginSteering:getLoadBalancerPoolOriginSteering": {
            "properties": {
                "policy": {
                    "type": "string",
                    "description": "The type of origin steering policy to use.\n"
                }
            },
            "type": "object",
            "required": [
                "policy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResult:getLoadBalancerPoolsResult": {
            "properties": {
                "checkRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of regions from which to run health checks. Null means every Cloudflare data center.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description of the pool.\n"
                },
                "disabledAt": {
                    "type": "string",
                    "description": "This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any).\n"
                },
                "id": {
                    "type": "string"
                },
                "latitude": {
                    "type": "number",
                    "description": "The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set.\n"
                },
                "loadShedding": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultLoadShedding:getLoadBalancerPoolsResultLoadShedding",
                    "description": "Configures load shedding policies and percentages for the pool.\n"
                },
                "longitude": {
                    "type": "number",
                    "description": "The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set.\n"
                },
                "minimumOrigins": {
                    "type": "integer",
                    "description": "The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "monitor": {
                    "type": "string",
                    "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n"
                },
                "monitorGroup": {
                    "type": "string",
                    "description": "The ID of the Monitor Group to use for checking the health of origins within this pool.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of networks where Load Balancer or Pool is enabled.\n"
                },
                "notificationEmail": {
                    "type": "string",
                    "description": "This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list.\n"
                },
                "notificationFilter": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultNotificationFilter:getLoadBalancerPoolsResultNotificationFilter",
                    "description": "Filter pool and origin health notifications by resource type or health status. Use null to reset.\n"
                },
                "originSteering": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultOriginSteering:getLoadBalancerPoolsResultOriginSteering",
                    "description": "Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.\n"
                },
                "origins": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultOrigin:getLoadBalancerPoolsResultOrigin"
                    },
                    "description": "The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.\n"
                }
            },
            "type": "object",
            "required": [
                "checkRegions",
                "createdOn",
                "description",
                "disabledAt",
                "enabled",
                "id",
                "latitude",
                "loadShedding",
                "longitude",
                "minimumOrigins",
                "modifiedOn",
                "monitor",
                "monitorGroup",
                "name",
                "networks",
                "notificationEmail",
                "notificationFilter",
                "originSteering",
                "origins"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultLoadShedding:getLoadBalancerPoolsResultLoadShedding": {
            "properties": {
                "defaultPercent": {
                    "type": "number",
                    "description": "The percent of traffic to shed from the pool, according to the default policy. Applies to new sessions and traffic without session affinity.\n"
                },
                "defaultPolicy": {
                    "type": "string",
                    "description": "The default policy to use when load shedding. A random policy randomly sheds a given percent of requests. A hash policy computes a hash over the CF-Connecting-IP address and sheds all requests originating from a percent of IPs.\nAvailable values: \"random\", \"hash\".\n"
                },
                "sessionPercent": {
                    "type": "number",
                    "description": "The percent of existing sessions to shed from the pool, according to the session policy.\n"
                },
                "sessionPolicy": {
                    "type": "string",
                    "description": "Only the hash policy is supported for existing sessions (to avoid exponential decay).\nAvailable values: \"hash\".\n"
                }
            },
            "type": "object",
            "required": [
                "defaultPercent",
                "defaultPolicy",
                "sessionPercent",
                "sessionPolicy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultNotificationFilter:getLoadBalancerPoolsResultNotificationFilter": {
            "properties": {
                "origin": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultNotificationFilterOrigin:getLoadBalancerPoolsResultNotificationFilterOrigin",
                    "description": "Filter options for a particular resource type (pool or origin). Use null to reset.\n"
                },
                "pool": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultNotificationFilterPool:getLoadBalancerPoolsResultNotificationFilterPool",
                    "description": "Filter options for a particular resource type (pool or origin). Use null to reset.\n"
                }
            },
            "type": "object",
            "required": [
                "origin",
                "pool"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultNotificationFilterOrigin:getLoadBalancerPoolsResultNotificationFilterOrigin": {
            "properties": {
                "disable": {
                    "type": "boolean",
                    "description": "If set true, disable notifications for this type of resource (pool or origin).\n"
                },
                "healthy": {
                    "type": "boolean",
                    "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).\n"
                }
            },
            "type": "object",
            "required": [
                "disable",
                "healthy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultNotificationFilterPool:getLoadBalancerPoolsResultNotificationFilterPool": {
            "properties": {
                "disable": {
                    "type": "boolean",
                    "description": "If set true, disable notifications for this type of resource (pool or origin).\n"
                },
                "healthy": {
                    "type": "boolean",
                    "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).\n"
                }
            },
            "type": "object",
            "required": [
                "disable",
                "healthy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultOrigin:getLoadBalancerPoolsResultOrigin": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The IP address (IPv4 or IPv6) of the origin, or its publicly addressable hostname. Hostnames entered here should resolve directly to the origin, and not be a hostname proxied by Cloudflare. To set an internal/reserved address, virtual*network*id must also be set.\n"
                },
                "disabledAt": {
                    "type": "string",
                    "description": "This field shows up only if the origin is disabled. This field is set with the time the origin was disabled.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) this origin within the pool. Disabled origins will not receive traffic and are excluded from health checks. The origin will only be disabled for the current pool.\n"
                },
                "flattenCname": {
                    "type": "boolean",
                    "description": "Whether to flatten CNAME records for this origin, resolving them to A/AAAA records before returning to the client. When true (the default), the director resolves CNAME addresses to their underlying A/AAAA records. When false, the origin address is returned as a raw CNAME record without resolution. This setting mirrors the DNS API record\u003cspan pulumi-lang-nodejs=\" flattenCname \" pulumi-lang-dotnet=\" FlattenCname \" pulumi-lang-go=\" flattenCname \" pulumi-lang-python=\" flatten_cname \" pulumi-lang-yaml=\" flattenCname \" pulumi-lang-java=\" flattenCname \"\u003e flattenCname \u003c/span\u003esetting.\n"
                },
                "header": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResultOriginHeader:getLoadBalancerPoolsResultOriginHeader",
                    "description": "The request header is used to pass additional information with an HTTP request. Currently supported header is 'Host'.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-identifiable name for the origin.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "The port for upstream connections. A value of 0 means the default port for the protocol will be used.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "The virtual network subnet ID the origin belongs in. Virtual network must also belong to the account.\n"
                },
                "weight": {
                    "type": "number",
                    "description": "The weight of this origin relative to other origins in the pool. Based on the configured weight the total traffic is distributed among origins within the pool.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "disabledAt",
                "enabled",
                "flattenCname",
                "header",
                "name",
                "port",
                "virtualNetworkId",
                "weight"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultOriginHeader:getLoadBalancerPoolsResultOriginHeader": {
            "properties": {
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The 'Host' header allows to override the hostname set in the HTTP request. Current support is 1 'Host' header override per origin.\n"
                }
            },
            "type": "object",
            "required": [
                "hosts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerPoolsResultOriginSteering:getLoadBalancerPoolsResultOriginSteering": {
            "properties": {
                "policy": {
                    "type": "string",
                    "description": "The type of origin steering policy to use.\n"
                }
            },
            "type": "object",
            "required": [
                "policy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRandomSteering:getLoadBalancerRandomSteering": {
            "properties": {
                "defaultWeight": {
                    "type": "number",
                    "description": "The default weight for pools in the load balancer that are not specified in the\u003cspan pulumi-lang-nodejs=\" poolWeights \" pulumi-lang-dotnet=\" PoolWeights \" pulumi-lang-go=\" poolWeights \" pulumi-lang-python=\" pool_weights \" pulumi-lang-yaml=\" poolWeights \" pulumi-lang-java=\" poolWeights \"\u003e poolWeights \u003c/span\u003emap.\n"
                },
                "poolWeights": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.\n"
                }
            },
            "type": "object",
            "required": [
                "defaultWeight",
                "poolWeights"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRule:getLoadBalancerRule": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition expressions to evaluate. If the condition evaluates to true, the overrides or\u003cspan pulumi-lang-nodejs=\" fixedResponse \" pulumi-lang-dotnet=\" FixedResponse \" pulumi-lang-go=\" fixedResponse \" pulumi-lang-python=\" fixed_response \" pulumi-lang-yaml=\" fixedResponse \" pulumi-lang-java=\" fixedResponse \"\u003e fixedResponse \u003c/span\u003ein this rule will be applied. An empty condition is always true. For more details on condition expressions, please see https://developers.cloudflare.com/load-balancing/understand-basics/load-balancing-rules/expressions.\n"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "Disable this specific rule. It will no longer be evaluated by this load balancer.\n"
                },
                "fixedResponse": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerRuleFixedResponse:getLoadBalancerRuleFixedResponse",
                    "description": "A collection of fields used to directly respond to the eyeball instead of routing to a pool. If a fixed*response is supplied the rule will be marked as terminates.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of this rule. Only used for human readability.\n"
                },
                "overrides": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerRuleOverrides:getLoadBalancerRuleOverrides",
                    "description": "A collection of overrides to apply to the load balancer when this rule's condition is true. All fields are optional.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "The order in which rules should be executed in relation to each other. Lower values are executed first. Values do not need to be sequential. If no value is provided for any rule the array order of the rules field will be used to assign a priority.\n"
                },
                "terminates": {
                    "type": "boolean",
                    "description": "If this rule's condition is true, this causes rule evaluation to stop after processing this rule.\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "disabled",
                "fixedResponse",
                "name",
                "overrides",
                "priority",
                "terminates"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRuleFixedResponse:getLoadBalancerRuleFixedResponse": {
            "properties": {
                "contentType": {
                    "type": "string",
                    "description": "The http 'Content-Type' header to include in the response.\n"
                },
                "location": {
                    "type": "string",
                    "description": "The http 'Location' header to include in the response.\n"
                },
                "messageBody": {
                    "type": "string",
                    "description": "Text to include as the http body.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The http status code to respond with.\n"
                }
            },
            "type": "object",
            "required": [
                "contentType",
                "location",
                "messageBody",
                "statusCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRuleOverrides:getLoadBalancerRuleOverrides": {
            "properties": {
                "adaptiveRouting": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerRuleOverridesAdaptiveRouting:getLoadBalancerRuleOverridesAdaptiveRouting",
                    "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                },
                "countryPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                },
                "defaultPools": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                },
                "fallbackPool": {
                    "type": "string",
                    "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                },
                "locationStrategy": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerRuleOverridesLocationStrategy:getLoadBalancerRuleOverridesLocationStrategy",
                    "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                },
                "popPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                },
                "randomSteering": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerRuleOverridesRandomSteering:getLoadBalancerRuleOverridesRandomSteering",
                    "description": "Configures pool weights.\n"
                },
                "regionPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                },
                "sessionAffinity": {
                    "type": "string",
                    "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                },
                "sessionAffinityAttributes": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancerRuleOverridesSessionAffinityAttributes:getLoadBalancerRuleOverridesSessionAffinityAttributes",
                    "description": "Configures attributes for session affinity.\n"
                },
                "sessionAffinityTtl": {
                    "type": "number",
                    "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                },
                "steeringPolicy": {
                    "type": "string",
                    "description": "Steering Policy for this load balancer.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                }
            },
            "type": "object",
            "required": [
                "adaptiveRouting",
                "countryPools",
                "defaultPools",
                "fallbackPool",
                "locationStrategy",
                "popPools",
                "randomSteering",
                "regionPools",
                "sessionAffinity",
                "sessionAffinityAttributes",
                "sessionAffinityTtl",
                "steeringPolicy",
                "ttl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRuleOverridesAdaptiveRouting:getLoadBalancerRuleOverridesAdaptiveRouting": {
            "properties": {
                "failoverAcrossPools": {
                    "type": "boolean",
                    "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for control over when sessions are broken or reassigned.\n"
                }
            },
            "type": "object",
            "required": [
                "failoverAcrossPools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRuleOverridesLocationStrategy:getLoadBalancerRuleOverridesLocationStrategy": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n"
                },
                "preferEcs": {
                    "type": "string",
                    "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "preferEcs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRuleOverridesRandomSteering:getLoadBalancerRuleOverridesRandomSteering": {
            "properties": {
                "defaultWeight": {
                    "type": "number",
                    "description": "The default weight for pools in the load balancer that are not specified in the\u003cspan pulumi-lang-nodejs=\" poolWeights \" pulumi-lang-dotnet=\" PoolWeights \" pulumi-lang-go=\" poolWeights \" pulumi-lang-python=\" pool_weights \" pulumi-lang-yaml=\" poolWeights \" pulumi-lang-java=\" poolWeights \"\u003e poolWeights \u003c/span\u003emap.\n"
                },
                "poolWeights": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.\n"
                }
            },
            "type": "object",
            "required": [
                "defaultWeight",
                "poolWeights"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerRuleOverridesSessionAffinityAttributes:getLoadBalancerRuleOverridesSessionAffinityAttributes": {
            "properties": {
                "drainDuration": {
                    "type": "number",
                    "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configures the names of HTTP headers to base session affinity on when header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:\u003ccookie-name-1\u003e,\u003ccookie-name-2\u003e\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.\n"
                },
                "requireAllHeaders": {
                    "type": "boolean",
                    "description": "When header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created.\n"
                },
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".\nAvailable values: \"Auto\", \"Lax\", \"None\", \"Strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.\nAvailable values: \"Auto\", \"Always\", \"Never\".\n"
                },
                "zeroDowntimeFailover": {
                    "type": "string",
                    "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.\nAvailable values: \"none\", \"temporary\", \"sticky\".\n"
                }
            },
            "type": "object",
            "required": [
                "drainDuration",
                "headers",
                "requireAllHeaders",
                "samesite",
                "secure",
                "zeroDowntimeFailover"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancerSessionAffinityAttributes:getLoadBalancerSessionAffinityAttributes": {
            "properties": {
                "drainDuration": {
                    "type": "number",
                    "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configures the names of HTTP headers to base session affinity on when header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:\u003ccookie-name-1\u003e,\u003ccookie-name-2\u003e\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.\n"
                },
                "requireAllHeaders": {
                    "type": "boolean",
                    "description": "When header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created.\n"
                },
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".\nAvailable values: \"Auto\", \"Lax\", \"None\", \"Strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.\nAvailable values: \"Auto\", \"Always\", \"Never\".\n"
                },
                "zeroDowntimeFailover": {
                    "type": "string",
                    "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.\nAvailable values: \"none\", \"temporary\", \"sticky\".\n"
                }
            },
            "type": "object",
            "required": [
                "drainDuration",
                "headers",
                "requireAllHeaders",
                "samesite",
                "secure",
                "zeroDowntimeFailover"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResult:getLoadBalancersResult": {
            "properties": {
                "adaptiveRouting": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultAdaptiveRouting:getLoadBalancersResultAdaptiveRouting",
                    "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                },
                "countryPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "defaultPools": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Object description.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) this load balancer.\n"
                },
                "fallbackPool": {
                    "type": "string",
                    "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                },
                "id": {
                    "type": "string"
                },
                "locationStrategy": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultLocationStrategy:getLoadBalancersResultLocationStrategy",
                    "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of networks where Load Balancer or Pool is enabled.\n"
                },
                "popPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the hostname should be gray clouded (false) or orange clouded (true).\n"
                },
                "randomSteering": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRandomSteering:getLoadBalancersResultRandomSteering",
                    "description": "Configures pool weights.\n"
                },
                "regionPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancersResultRule:getLoadBalancersResultRule"
                    },
                    "description": "BETA Field Not General Access: A list of rules for this load balancer to execute.\n"
                },
                "sessionAffinity": {
                    "type": "string",
                    "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                },
                "sessionAffinityAttributes": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultSessionAffinityAttributes:getLoadBalancersResultSessionAffinityAttributes",
                    "description": "Configures attributes for session affinity.\n"
                },
                "sessionAffinityTtl": {
                    "type": "number",
                    "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                },
                "steeringPolicy": {
                    "type": "string",
                    "description": "Steering Policy for this load balancer.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                },
                "zoneName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "adaptiveRouting",
                "countryPools",
                "createdOn",
                "defaultPools",
                "description",
                "enabled",
                "fallbackPool",
                "id",
                "locationStrategy",
                "modifiedOn",
                "name",
                "networks",
                "popPools",
                "proxied",
                "randomSteering",
                "regionPools",
                "rules",
                "sessionAffinity",
                "sessionAffinityAttributes",
                "sessionAffinityTtl",
                "steeringPolicy",
                "ttl",
                "zoneName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultAdaptiveRouting:getLoadBalancersResultAdaptiveRouting": {
            "properties": {
                "failoverAcrossPools": {
                    "type": "boolean",
                    "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for control over when sessions are broken or reassigned.\n"
                }
            },
            "type": "object",
            "required": [
                "failoverAcrossPools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultLocationStrategy:getLoadBalancersResultLocationStrategy": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n"
                },
                "preferEcs": {
                    "type": "string",
                    "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "preferEcs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRandomSteering:getLoadBalancersResultRandomSteering": {
            "properties": {
                "defaultWeight": {
                    "type": "number",
                    "description": "The default weight for pools in the load balancer that are not specified in the\u003cspan pulumi-lang-nodejs=\" poolWeights \" pulumi-lang-dotnet=\" PoolWeights \" pulumi-lang-go=\" poolWeights \" pulumi-lang-python=\" pool_weights \" pulumi-lang-yaml=\" poolWeights \" pulumi-lang-java=\" poolWeights \"\u003e poolWeights \u003c/span\u003emap.\n"
                },
                "poolWeights": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.\n"
                }
            },
            "type": "object",
            "required": [
                "defaultWeight",
                "poolWeights"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRule:getLoadBalancersResultRule": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition expressions to evaluate. If the condition evaluates to true, the overrides or\u003cspan pulumi-lang-nodejs=\" fixedResponse \" pulumi-lang-dotnet=\" FixedResponse \" pulumi-lang-go=\" fixedResponse \" pulumi-lang-python=\" fixed_response \" pulumi-lang-yaml=\" fixedResponse \" pulumi-lang-java=\" fixedResponse \"\u003e fixedResponse \u003c/span\u003ein this rule will be applied. An empty condition is always true. For more details on condition expressions, please see https://developers.cloudflare.com/load-balancing/understand-basics/load-balancing-rules/expressions.\n"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "Disable this specific rule. It will no longer be evaluated by this load balancer.\n"
                },
                "fixedResponse": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRuleFixedResponse:getLoadBalancersResultRuleFixedResponse",
                    "description": "A collection of fields used to directly respond to the eyeball instead of routing to a pool. If a fixed*response is supplied the rule will be marked as terminates.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of this rule. Only used for human readability.\n"
                },
                "overrides": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRuleOverrides:getLoadBalancersResultRuleOverrides",
                    "description": "A collection of overrides to apply to the load balancer when this rule's condition is true. All fields are optional.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "The order in which rules should be executed in relation to each other. Lower values are executed first. Values do not need to be sequential. If no value is provided for any rule the array order of the rules field will be used to assign a priority.\n"
                },
                "terminates": {
                    "type": "boolean",
                    "description": "If this rule's condition is true, this causes rule evaluation to stop after processing this rule.\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "disabled",
                "fixedResponse",
                "name",
                "overrides",
                "priority",
                "terminates"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRuleFixedResponse:getLoadBalancersResultRuleFixedResponse": {
            "properties": {
                "contentType": {
                    "type": "string",
                    "description": "The http 'Content-Type' header to include in the response.\n"
                },
                "location": {
                    "type": "string",
                    "description": "The http 'Location' header to include in the response.\n"
                },
                "messageBody": {
                    "type": "string",
                    "description": "Text to include as the http body.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The http status code to respond with.\n"
                }
            },
            "type": "object",
            "required": [
                "contentType",
                "location",
                "messageBody",
                "statusCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRuleOverrides:getLoadBalancersResultRuleOverrides": {
            "properties": {
                "adaptiveRouting": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRuleOverridesAdaptiveRouting:getLoadBalancersResultRuleOverridesAdaptiveRouting",
                    "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                },
                "countryPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                },
                "defaultPools": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                },
                "fallbackPool": {
                    "type": "string",
                    "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                },
                "locationStrategy": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRuleOverridesLocationStrategy:getLoadBalancersResultRuleOverridesLocationStrategy",
                    "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                },
                "popPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                },
                "randomSteering": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRuleOverridesRandomSteering:getLoadBalancersResultRuleOverridesRandomSteering",
                    "description": "Configures pool weights.\n"
                },
                "regionPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                },
                "sessionAffinity": {
                    "type": "string",
                    "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                },
                "sessionAffinityAttributes": {
                    "$ref": "#/types/cloudflare:index/getLoadBalancersResultRuleOverridesSessionAffinityAttributes:getLoadBalancersResultRuleOverridesSessionAffinityAttributes",
                    "description": "Configures attributes for session affinity.\n"
                },
                "sessionAffinityTtl": {
                    "type": "number",
                    "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                },
                "steeringPolicy": {
                    "type": "string",
                    "description": "Steering Policy for this load balancer.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                }
            },
            "type": "object",
            "required": [
                "adaptiveRouting",
                "countryPools",
                "defaultPools",
                "fallbackPool",
                "locationStrategy",
                "popPools",
                "randomSteering",
                "regionPools",
                "sessionAffinity",
                "sessionAffinityAttributes",
                "sessionAffinityTtl",
                "steeringPolicy",
                "ttl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRuleOverridesAdaptiveRouting:getLoadBalancersResultRuleOverridesAdaptiveRouting": {
            "properties": {
                "failoverAcrossPools": {
                    "type": "boolean",
                    "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for control over when sessions are broken or reassigned.\n"
                }
            },
            "type": "object",
            "required": [
                "failoverAcrossPools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRuleOverridesLocationStrategy:getLoadBalancersResultRuleOverridesLocationStrategy": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n"
                },
                "preferEcs": {
                    "type": "string",
                    "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "preferEcs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRuleOverridesRandomSteering:getLoadBalancersResultRuleOverridesRandomSteering": {
            "properties": {
                "defaultWeight": {
                    "type": "number",
                    "description": "The default weight for pools in the load balancer that are not specified in the\u003cspan pulumi-lang-nodejs=\" poolWeights \" pulumi-lang-dotnet=\" PoolWeights \" pulumi-lang-go=\" poolWeights \" pulumi-lang-python=\" pool_weights \" pulumi-lang-yaml=\" poolWeights \" pulumi-lang-java=\" poolWeights \"\u003e poolWeights \u003c/span\u003emap.\n"
                },
                "poolWeights": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.\n"
                }
            },
            "type": "object",
            "required": [
                "defaultWeight",
                "poolWeights"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultRuleOverridesSessionAffinityAttributes:getLoadBalancersResultRuleOverridesSessionAffinityAttributes": {
            "properties": {
                "drainDuration": {
                    "type": "number",
                    "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configures the names of HTTP headers to base session affinity on when header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:\u003ccookie-name-1\u003e,\u003ccookie-name-2\u003e\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.\n"
                },
                "requireAllHeaders": {
                    "type": "boolean",
                    "description": "When header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created.\n"
                },
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".\nAvailable values: \"Auto\", \"Lax\", \"None\", \"Strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.\nAvailable values: \"Auto\", \"Always\", \"Never\".\n"
                },
                "zeroDowntimeFailover": {
                    "type": "string",
                    "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.\nAvailable values: \"none\", \"temporary\", \"sticky\".\n"
                }
            },
            "type": "object",
            "required": [
                "drainDuration",
                "headers",
                "requireAllHeaders",
                "samesite",
                "secure",
                "zeroDowntimeFailover"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLoadBalancersResultSessionAffinityAttributes:getLoadBalancersResultSessionAffinityAttributes": {
            "properties": {
                "drainDuration": {
                    "type": "number",
                    "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configures the names of HTTP headers to base session affinity on when header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:\u003ccookie-name-1\u003e,\u003ccookie-name-2\u003e\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.\n"
                },
                "requireAllHeaders": {
                    "type": "boolean",
                    "description": "When header \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e session affinity attribute, otherwise sessions aren't created.\n"
                },
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".\nAvailable values: \"Auto\", \"Lax\", \"None\", \"Strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.\nAvailable values: \"Auto\", \"Always\", \"Never\".\n"
                },
                "zeroDowntimeFailover": {
                    "type": "string",
                    "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.\nAvailable values: \"none\", \"temporary\", \"sticky\".\n"
                }
            },
            "type": "object",
            "required": [
                "drainDuration",
                "headers",
                "requireAllHeaders",
                "samesite",
                "secure",
                "zeroDowntimeFailover"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLogpushDatasetJobOutputOptions:getLogpushDatasetJobOutputOptions": {
            "properties": {
                "batchPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each batch.\n"
                },
                "batchSuffix": {
                    "type": "string",
                    "description": "String to be appended after each batch.\n"
                },
                "cve202144228": {
                    "type": "boolean",
                    "description": "If set to true, will cause all occurrences of `${` in the generated files to be replaced with `x{`.\n"
                },
                "fieldDelimiter": {
                    "type": "string",
                    "description": "String to join fields. This field be ignored when \u003cspan pulumi-lang-nodejs=\"`recordTemplate`\" pulumi-lang-dotnet=\"`RecordTemplate`\" pulumi-lang-go=\"`recordTemplate`\" pulumi-lang-python=\"`record_template`\" pulumi-lang-yaml=\"`recordTemplate`\" pulumi-lang-java=\"`recordTemplate`\"\u003e`recordTemplate`\u003c/span\u003e is set.\n"
                },
                "fieldNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of field names to be included in the Logpush output. For the moment, there is no option to add all fields at once, so you must specify all the fields names you are interested in.\n"
                },
                "mergeSubrequests": {
                    "type": "boolean",
                    "description": "If set to true, subrequests will be merged into the parent request. Only supported for the \u003cspan pulumi-lang-nodejs=\"`httpRequests`\" pulumi-lang-dotnet=\"`HttpRequests`\" pulumi-lang-go=\"`httpRequests`\" pulumi-lang-python=\"`http_requests`\" pulumi-lang-yaml=\"`httpRequests`\" pulumi-lang-java=\"`httpRequests`\"\u003e`httpRequests`\u003c/span\u003e dataset.\n"
                },
                "outputType": {
                    "type": "string",
                    "description": "Specifies the output type, such as \u003cspan pulumi-lang-nodejs=\"`ndjson`\" pulumi-lang-dotnet=\"`Ndjson`\" pulumi-lang-go=\"`ndjson`\" pulumi-lang-python=\"`ndjson`\" pulumi-lang-yaml=\"`ndjson`\" pulumi-lang-java=\"`ndjson`\"\u003e`ndjson`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`csv`\" pulumi-lang-dotnet=\"`Csv`\" pulumi-lang-go=\"`csv`\" pulumi-lang-python=\"`csv`\" pulumi-lang-yaml=\"`csv`\" pulumi-lang-java=\"`csv`\"\u003e`csv`\u003c/span\u003e. This sets default values for the rest of the settings, depending on the chosen output type. Some formatting rules, like string quoting, are different between output types.\nAvailable values: \"ndjson\", \"csv\".\n"
                },
                "recordDelimiter": {
                    "type": "string",
                    "description": "String to be inserted in-between the records as separator.\n"
                },
                "recordPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each record.\n"
                },
                "recordSuffix": {
                    "type": "string",
                    "description": "String to be appended after each record.\n"
                },
                "recordTemplate": {
                    "type": "string",
                    "description": "String to use as template for each record instead of the default json key value mapping. All fields used in the template must be present in \u003cspan pulumi-lang-nodejs=\"`fieldNames`\" pulumi-lang-dotnet=\"`FieldNames`\" pulumi-lang-go=\"`fieldNames`\" pulumi-lang-python=\"`field_names`\" pulumi-lang-yaml=\"`fieldNames`\" pulumi-lang-java=\"`fieldNames`\"\u003e`fieldNames`\u003c/span\u003e as well, otherwise they will end up as null. Format as a Go `text/template` without any standard functions, like conditionals, loops, sub-templates, etc.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "Floating number to specify sampling rate. Sampling is applied on top of filtering, and regardless of the current \u003cspan pulumi-lang-nodejs=\"`sampleInterval`\" pulumi-lang-dotnet=\"`SampleInterval`\" pulumi-lang-go=\"`sampleInterval`\" pulumi-lang-python=\"`sample_interval`\" pulumi-lang-yaml=\"`sampleInterval`\" pulumi-lang-java=\"`sampleInterval`\"\u003e`sampleInterval`\u003c/span\u003e of the data.\n"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "String to specify the format for timestamps, such as \u003cspan pulumi-lang-nodejs=\"`unixnano`\" pulumi-lang-dotnet=\"`Unixnano`\" pulumi-lang-go=\"`unixnano`\" pulumi-lang-python=\"`unixnano`\" pulumi-lang-yaml=\"`unixnano`\" pulumi-lang-java=\"`unixnano`\"\u003e`unixnano`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`unix`\" pulumi-lang-dotnet=\"`Unix`\" pulumi-lang-go=\"`unix`\" pulumi-lang-python=\"`unix`\" pulumi-lang-yaml=\"`unix`\" pulumi-lang-java=\"`unix`\"\u003e`unix`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339`\" pulumi-lang-dotnet=\"`Rfc3339`\" pulumi-lang-go=\"`rfc3339`\" pulumi-lang-python=\"`rfc3339`\" pulumi-lang-yaml=\"`rfc3339`\" pulumi-lang-java=\"`rfc3339`\"\u003e`rfc3339`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339ms`\" pulumi-lang-dotnet=\"`Rfc3339ms`\" pulumi-lang-go=\"`rfc3339ms`\" pulumi-lang-python=\"`rfc3339ms`\" pulumi-lang-yaml=\"`rfc3339ms`\" pulumi-lang-java=\"`rfc3339ms`\"\u003e`rfc3339ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rfc3339ns`\" pulumi-lang-dotnet=\"`Rfc3339ns`\" pulumi-lang-go=\"`rfc3339ns`\" pulumi-lang-python=\"`rfc3339ns`\" pulumi-lang-yaml=\"`rfc3339ns`\" pulumi-lang-java=\"`rfc3339ns`\"\u003e`rfc3339ns`\u003c/span\u003e.\nAvailable values: \"unixnano\", \"unix\", \"rfc3339\", \"rfc3339ms\", \"rfc3339ns\".\n"
                }
            },
            "type": "object",
            "required": [
                "batchPrefix",
                "batchSuffix",
                "cve202144228",
                "fieldDelimiter",
                "fieldNames",
                "mergeSubrequests",
                "outputType",
                "recordDelimiter",
                "recordPrefix",
                "recordSuffix",
                "recordTemplate",
                "sampleRate",
                "timestampFormat"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLogpushJobOutputOptions:getLogpushJobOutputOptions": {
            "properties": {
                "batchPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each batch.\n"
                },
                "batchSuffix": {
                    "type": "string",
                    "description": "String to be appended after each batch.\n"
                },
                "cve202144228": {
                    "type": "boolean",
                    "description": "If set to true, will cause all occurrences of `${` in the generated files to be replaced with `x{`.\n"
                },
                "fieldDelimiter": {
                    "type": "string",
                    "description": "String to join fields. This field be ignored when \u003cspan pulumi-lang-nodejs=\"`recordTemplate`\" pulumi-lang-dotnet=\"`RecordTemplate`\" pulumi-lang-go=\"`recordTemplate`\" pulumi-lang-python=\"`record_template`\" pulumi-lang-yaml=\"`recordTemplate`\" pulumi-lang-java=\"`recordTemplate`\"\u003e`recordTemplate`\u003c/span\u003e is set.\n"
                },
                "fieldNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of field names to be included in the Logpush output. For the moment, there is no option to add all fields at once, so you must specify all the fields names you are interested in.\n"
                },
                "mergeSubrequests": {
                    "type": "boolean",
                    "description": "If set to true, subrequests will be merged into the parent request. Only supported for the \u003cspan pulumi-lang-nodejs=\"`httpRequests`\" pulumi-lang-dotnet=\"`HttpRequests`\" pulumi-lang-go=\"`httpRequests`\" pulumi-lang-python=\"`http_requests`\" pulumi-lang-yaml=\"`httpRequests`\" pulumi-lang-java=\"`httpRequests`\"\u003e`httpRequests`\u003c/span\u003e dataset.\n"
                },
                "outputType": {
                    "type": "string",
                    "description": "Specifies the output type, such as \u003cspan pulumi-lang-nodejs=\"`ndjson`\" pulumi-lang-dotnet=\"`Ndjson`\" pulumi-lang-go=\"`ndjson`\" pulumi-lang-python=\"`ndjson`\" pulumi-lang-yaml=\"`ndjson`\" pulumi-lang-java=\"`ndjson`\"\u003e`ndjson`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`csv`\" pulumi-lang-dotnet=\"`Csv`\" pulumi-lang-go=\"`csv`\" pulumi-lang-python=\"`csv`\" pulumi-lang-yaml=\"`csv`\" pulumi-lang-java=\"`csv`\"\u003e`csv`\u003c/span\u003e. This sets default values for the rest of the settings, depending on the chosen output type. Some formatting rules, like string quoting, are different between output types.\nAvailable values: \"ndjson\", \"csv\".\n"
                },
                "recordDelimiter": {
                    "type": "string",
                    "description": "String to be inserted in-between the records as separator.\n"
                },
                "recordPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each record.\n"
                },
                "recordSuffix": {
                    "type": "string",
                    "description": "String to be appended after each record.\n"
                },
                "recordTemplate": {
                    "type": "string",
                    "description": "String to use as template for each record instead of the default json key value mapping. All fields used in the template must be present in \u003cspan pulumi-lang-nodejs=\"`fieldNames`\" pulumi-lang-dotnet=\"`FieldNames`\" pulumi-lang-go=\"`fieldNames`\" pulumi-lang-python=\"`field_names`\" pulumi-lang-yaml=\"`fieldNames`\" pulumi-lang-java=\"`fieldNames`\"\u003e`fieldNames`\u003c/span\u003e as well, otherwise they will end up as null. Format as a Go `text/template` without any standard functions, like conditionals, loops, sub-templates, etc.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "Floating number to specify sampling rate. Sampling is applied on top of filtering, and regardless of the current \u003cspan pulumi-lang-nodejs=\"`sampleInterval`\" pulumi-lang-dotnet=\"`SampleInterval`\" pulumi-lang-go=\"`sampleInterval`\" pulumi-lang-python=\"`sample_interval`\" pulumi-lang-yaml=\"`sampleInterval`\" pulumi-lang-java=\"`sampleInterval`\"\u003e`sampleInterval`\u003c/span\u003e of the data.\n"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "String to specify the format for timestamps, such as \u003cspan pulumi-lang-nodejs=\"`unixnano`\" pulumi-lang-dotnet=\"`Unixnano`\" pulumi-lang-go=\"`unixnano`\" pulumi-lang-python=\"`unixnano`\" pulumi-lang-yaml=\"`unixnano`\" pulumi-lang-java=\"`unixnano`\"\u003e`unixnano`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`unix`\" pulumi-lang-dotnet=\"`Unix`\" pulumi-lang-go=\"`unix`\" pulumi-lang-python=\"`unix`\" pulumi-lang-yaml=\"`unix`\" pulumi-lang-java=\"`unix`\"\u003e`unix`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339`\" pulumi-lang-dotnet=\"`Rfc3339`\" pulumi-lang-go=\"`rfc3339`\" pulumi-lang-python=\"`rfc3339`\" pulumi-lang-yaml=\"`rfc3339`\" pulumi-lang-java=\"`rfc3339`\"\u003e`rfc3339`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339ms`\" pulumi-lang-dotnet=\"`Rfc3339ms`\" pulumi-lang-go=\"`rfc3339ms`\" pulumi-lang-python=\"`rfc3339ms`\" pulumi-lang-yaml=\"`rfc3339ms`\" pulumi-lang-java=\"`rfc3339ms`\"\u003e`rfc3339ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rfc3339ns`\" pulumi-lang-dotnet=\"`Rfc3339ns`\" pulumi-lang-go=\"`rfc3339ns`\" pulumi-lang-python=\"`rfc3339ns`\" pulumi-lang-yaml=\"`rfc3339ns`\" pulumi-lang-java=\"`rfc3339ns`\"\u003e`rfc3339ns`\u003c/span\u003e.\nAvailable values: \"unixnano\", \"unix\", \"rfc3339\", \"rfc3339ms\", \"rfc3339ns\".\n"
                }
            },
            "type": "object",
            "required": [
                "batchPrefix",
                "batchSuffix",
                "cve202144228",
                "fieldDelimiter",
                "fieldNames",
                "mergeSubrequests",
                "outputType",
                "recordDelimiter",
                "recordPrefix",
                "recordSuffix",
                "recordTemplate",
                "sampleRate",
                "timestampFormat"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLogpushJobsResult:getLogpushJobsResult": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n"
                },
                "destinationConf": {
                    "type": "string",
                    "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                    "secret": true
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Flag that indicates if the job is enabled.\n"
                },
                "errorMessage": {
                    "type": "string",
                    "description": "If not null, the job is currently failing. Failures are usually. repetitive (example: no permissions to write to destination bucket). Only the last failure is recorded. On successful execution of a job the error*message and last*error are set to null.\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files.\nAvailable values: \"high\", \"low\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "id": {
                    "type": "integer",
                    "description": "Unique id of the job.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).\nAvailable values: \"\", \"edge\".\n"
                },
                "lastComplete": {
                    "type": "string",
                    "description": "Records the last time for which logs have been successfully pushed. If the last successful push was for logs range 2018-07-23T10:00:00Z to 2018-07-23T10:01:00Z then the value of this field will be 2018-07-23T10:01:00Z. If the job has never run or has just been enabled and hasn't run yet then the field will be empty.\n"
                },
                "lastError": {
                    "type": "string",
                    "description": "Records the last time the job failed. If not null, the job is currently. failing. If null, the job has either never failed or has run successfully at least once since last failure. See also the\u003cspan pulumi-lang-nodejs=\" errorMessage \" pulumi-lang-dotnet=\" ErrorMessage \" pulumi-lang-go=\" errorMessage \" pulumi-lang-python=\" error_message \" pulumi-lang-yaml=\" errorMessage \" pulumi-lang-java=\" errorMessage \"\u003e errorMessage \u003c/span\u003efield.\n"
                },
                "logpullOptions": {
                    "type": "string",
                    "description": "This field is deprecated. Use \u003cspan pulumi-lang-nodejs=\"`outputOptions`\" pulumi-lang-dotnet=\"`OutputOptions`\" pulumi-lang-go=\"`outputOptions`\" pulumi-lang-python=\"`output_options`\" pulumi-lang-yaml=\"`outputOptions`\" pulumi-lang-java=\"`outputOptions`\"\u003e`outputOptions`\u003c/span\u003e instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "maxUploadBytes": {
                    "type": "integer",
                    "description": "The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size.\n"
                },
                "maxUploadIntervalSeconds": {
                    "type": "integer",
                    "description": "The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this.\n"
                },
                "maxUploadRecords": {
                    "type": "integer",
                    "description": "The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job.\n"
                },
                "outputOptions": {
                    "$ref": "#/types/cloudflare:index/getLogpushJobsResultOutputOptions:getLogpushJobsResultOutputOptions",
                    "description": "The structured replacement for \u003cspan pulumi-lang-nodejs=\"`logpullOptions`\" pulumi-lang-dotnet=\"`LogpullOptions`\" pulumi-lang-go=\"`logpullOptions`\" pulumi-lang-python=\"`logpull_options`\" pulumi-lang-yaml=\"`logpullOptions`\" pulumi-lang-java=\"`logpullOptions`\"\u003e`logpullOptions`\u003c/span\u003e. When including this field, the \u003cspan pulumi-lang-nodejs=\"`logpullOption`\" pulumi-lang-dotnet=\"`LogpullOption`\" pulumi-lang-go=\"`logpullOption`\" pulumi-lang-python=\"`logpull_option`\" pulumi-lang-yaml=\"`logpullOption`\" pulumi-lang-java=\"`logpullOption`\"\u003e`logpullOption`\u003c/span\u003e field will be ignored.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset",
                "destinationConf",
                "enabled",
                "errorMessage",
                "frequency",
                "id",
                "kind",
                "lastComplete",
                "lastError",
                "logpullOptions",
                "maxUploadBytes",
                "maxUploadIntervalSeconds",
                "maxUploadRecords",
                "name",
                "outputOptions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getLogpushJobsResultOutputOptions:getLogpushJobsResultOutputOptions": {
            "properties": {
                "batchPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each batch.\n"
                },
                "batchSuffix": {
                    "type": "string",
                    "description": "String to be appended after each batch.\n"
                },
                "cve202144228": {
                    "type": "boolean",
                    "description": "If set to true, will cause all occurrences of `${` in the generated files to be replaced with `x{`.\n"
                },
                "fieldDelimiter": {
                    "type": "string",
                    "description": "String to join fields. This field be ignored when \u003cspan pulumi-lang-nodejs=\"`recordTemplate`\" pulumi-lang-dotnet=\"`RecordTemplate`\" pulumi-lang-go=\"`recordTemplate`\" pulumi-lang-python=\"`record_template`\" pulumi-lang-yaml=\"`recordTemplate`\" pulumi-lang-java=\"`recordTemplate`\"\u003e`recordTemplate`\u003c/span\u003e is set.\n"
                },
                "fieldNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of field names to be included in the Logpush output. For the moment, there is no option to add all fields at once, so you must specify all the fields names you are interested in.\n"
                },
                "mergeSubrequests": {
                    "type": "boolean",
                    "description": "If set to true, subrequests will be merged into the parent request. Only supported for the \u003cspan pulumi-lang-nodejs=\"`httpRequests`\" pulumi-lang-dotnet=\"`HttpRequests`\" pulumi-lang-go=\"`httpRequests`\" pulumi-lang-python=\"`http_requests`\" pulumi-lang-yaml=\"`httpRequests`\" pulumi-lang-java=\"`httpRequests`\"\u003e`httpRequests`\u003c/span\u003e dataset.\n"
                },
                "outputType": {
                    "type": "string",
                    "description": "Specifies the output type, such as \u003cspan pulumi-lang-nodejs=\"`ndjson`\" pulumi-lang-dotnet=\"`Ndjson`\" pulumi-lang-go=\"`ndjson`\" pulumi-lang-python=\"`ndjson`\" pulumi-lang-yaml=\"`ndjson`\" pulumi-lang-java=\"`ndjson`\"\u003e`ndjson`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`csv`\" pulumi-lang-dotnet=\"`Csv`\" pulumi-lang-go=\"`csv`\" pulumi-lang-python=\"`csv`\" pulumi-lang-yaml=\"`csv`\" pulumi-lang-java=\"`csv`\"\u003e`csv`\u003c/span\u003e. This sets default values for the rest of the settings, depending on the chosen output type. Some formatting rules, like string quoting, are different between output types.\nAvailable values: \"ndjson\", \"csv\".\n"
                },
                "recordDelimiter": {
                    "type": "string",
                    "description": "String to be inserted in-between the records as separator.\n"
                },
                "recordPrefix": {
                    "type": "string",
                    "description": "String to be prepended before each record.\n"
                },
                "recordSuffix": {
                    "type": "string",
                    "description": "String to be appended after each record.\n"
                },
                "recordTemplate": {
                    "type": "string",
                    "description": "String to use as template for each record instead of the default json key value mapping. All fields used in the template must be present in \u003cspan pulumi-lang-nodejs=\"`fieldNames`\" pulumi-lang-dotnet=\"`FieldNames`\" pulumi-lang-go=\"`fieldNames`\" pulumi-lang-python=\"`field_names`\" pulumi-lang-yaml=\"`fieldNames`\" pulumi-lang-java=\"`fieldNames`\"\u003e`fieldNames`\u003c/span\u003e as well, otherwise they will end up as null. Format as a Go `text/template` without any standard functions, like conditionals, loops, sub-templates, etc.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "Floating number to specify sampling rate. Sampling is applied on top of filtering, and regardless of the current \u003cspan pulumi-lang-nodejs=\"`sampleInterval`\" pulumi-lang-dotnet=\"`SampleInterval`\" pulumi-lang-go=\"`sampleInterval`\" pulumi-lang-python=\"`sample_interval`\" pulumi-lang-yaml=\"`sampleInterval`\" pulumi-lang-java=\"`sampleInterval`\"\u003e`sampleInterval`\u003c/span\u003e of the data.\n"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "String to specify the format for timestamps, such as \u003cspan pulumi-lang-nodejs=\"`unixnano`\" pulumi-lang-dotnet=\"`Unixnano`\" pulumi-lang-go=\"`unixnano`\" pulumi-lang-python=\"`unixnano`\" pulumi-lang-yaml=\"`unixnano`\" pulumi-lang-java=\"`unixnano`\"\u003e`unixnano`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`unix`\" pulumi-lang-dotnet=\"`Unix`\" pulumi-lang-go=\"`unix`\" pulumi-lang-python=\"`unix`\" pulumi-lang-yaml=\"`unix`\" pulumi-lang-java=\"`unix`\"\u003e`unix`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339`\" pulumi-lang-dotnet=\"`Rfc3339`\" pulumi-lang-go=\"`rfc3339`\" pulumi-lang-python=\"`rfc3339`\" pulumi-lang-yaml=\"`rfc3339`\" pulumi-lang-java=\"`rfc3339`\"\u003e`rfc3339`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rfc3339ms`\" pulumi-lang-dotnet=\"`Rfc3339ms`\" pulumi-lang-go=\"`rfc3339ms`\" pulumi-lang-python=\"`rfc3339ms`\" pulumi-lang-yaml=\"`rfc3339ms`\" pulumi-lang-java=\"`rfc3339ms`\"\u003e`rfc3339ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rfc3339ns`\" pulumi-lang-dotnet=\"`Rfc3339ns`\" pulumi-lang-go=\"`rfc3339ns`\" pulumi-lang-python=\"`rfc3339ns`\" pulumi-lang-yaml=\"`rfc3339ns`\" pulumi-lang-java=\"`rfc3339ns`\"\u003e`rfc3339ns`\u003c/span\u003e.\nAvailable values: \"unixnano\", \"unix\", \"rfc3339\", \"rfc3339ms\", \"rfc3339ns\".\n"
                }
            },
            "type": "object",
            "required": [
                "batchPrefix",
                "batchSuffix",
                "cve202144228",
                "fieldDelimiter",
                "fieldNames",
                "mergeSubrequests",
                "outputType",
                "recordDelimiter",
                "recordPrefix",
                "recordSuffix",
                "recordTemplate",
                "sampleRate",
                "timestampFormat"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicNetworkMonitoringConfigurationWarpDevice:getMagicNetworkMonitoringConfigurationWarpDevice": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Unique identifier for the warp device.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the warp device.\n"
                },
                "routerIp": {
                    "type": "string",
                    "description": "IPv4 CIDR of the router sourcing flow data associated with this warp device. Only /32 addresses are currently supported.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "routerIp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicNetworkMonitoringRulesResult:getMagicNetworkMonitoringRulesResult": {
            "properties": {
                "automaticAdvertisement": {
                    "type": "boolean",
                    "description": "Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit.\n"
                },
                "bandwidthThreshold": {
                    "type": "number",
                    "description": "The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"].\nAvailable values: \"1m\", \"5m\", \"10m\", \"15m\", \"20m\", \"30m\", \"45m\", \"60m\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "The id of the rule. Must be unique.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.\n"
                },
                "packetThreshold": {
                    "type": "number",
                    "description": "The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                },
                "prefixMatch": {
                    "type": "string",
                    "description": "Prefix match type to be applied for a prefix auto advertisement when using an\u003cspan pulumi-lang-nodejs=\" advancedDdos \" pulumi-lang-dotnet=\" AdvancedDdos \" pulumi-lang-go=\" advancedDdos \" pulumi-lang-python=\" advanced_ddos \" pulumi-lang-yaml=\" advancedDdos \" pulumi-lang-java=\" advancedDdos \"\u003e advancedDdos \u003c/span\u003erule.\nAvailable values: \"exact\", \"subnet\", \"supernet\".\n"
                },
                "prefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "MNM rule type.\nAvailable values: \"threshold\", \"zscore\", \u003cspan pulumi-lang-nodejs=\"\"advancedDdos\"\" pulumi-lang-dotnet=\"\"AdvancedDdos\"\" pulumi-lang-go=\"\"advancedDdos\"\" pulumi-lang-python=\"\"advanced_ddos\"\" pulumi-lang-yaml=\"\"advancedDdos\"\" pulumi-lang-java=\"\"advancedDdos\"\"\u003e\"advancedDdos\"\u003c/span\u003e.\n"
                },
                "zscoreSensitivity": {
                    "type": "string",
                    "description": "Level of sensitivity set for zscore rules.\nAvailable values: \"low\", \"medium\", \"high\".\n"
                },
                "zscoreTarget": {
                    "type": "string",
                    "description": "Target of the zscore rule analysis.\nAvailable values: \"bits\", \"packets\".\n"
                }
            },
            "type": "object",
            "required": [
                "automaticAdvertisement",
                "bandwidthThreshold",
                "duration",
                "id",
                "name",
                "packetThreshold",
                "prefixMatch",
                "prefixes",
                "type",
                "zscoreSensitivity",
                "zscoreTarget"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitConnectorDevice:getMagicTransitConnectorDevice": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "serialNumber": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "serialNumber"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitConnectorsResult:getMagicTransitConnectorsResult": {
            "properties": {
                "activated": {
                    "type": "boolean"
                },
                "device": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitConnectorsResultDevice:getMagicTransitConnectorsResultDevice"
                },
                "id": {
                    "type": "string"
                },
                "interruptWindowDaysOfWeeks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed days of the week for upgrades. Default is all days.\n"
                },
                "interruptWindowDurationHours": {
                    "type": "number"
                },
                "interruptWindowEmbargoDates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of dates (YYYY-MM-DD) when upgrades are blocked.\n"
                },
                "interruptWindowHourOfDay": {
                    "type": "number"
                },
                "lastHeartbeat": {
                    "type": "string"
                },
                "lastSeenVersion": {
                    "type": "string"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "licenseKey": {
                    "type": "string"
                },
                "notes": {
                    "type": "string"
                },
                "timezone": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "activated",
                "device",
                "id",
                "interruptWindowDaysOfWeeks",
                "interruptWindowDurationHours",
                "interruptWindowEmbargoDates",
                "interruptWindowHourOfDay",
                "lastHeartbeat",
                "lastSeenVersion",
                "lastUpdated",
                "licenseKey",
                "notes",
                "timezone"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitConnectorsResultDevice:getMagicTransitConnectorsResultDevice": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "serialNumber": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "serialNumber"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteAclLan1:getMagicTransitSiteAclLan1": {
            "properties": {
                "lanId": {
                    "type": "string",
                    "description": "The identifier for the LAN you want to create an ACL policy with.\n"
                },
                "lanName": {
                    "type": "string",
                    "description": "The name of the LAN based on the provided lan_id.\n"
                },
                "portRanges": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed.\n"
                },
                "ports": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed.\n"
                },
                "subnets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "lanId",
                "lanName",
                "portRanges",
                "ports",
                "subnets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteAclLan2:getMagicTransitSiteAclLan2": {
            "properties": {
                "lanId": {
                    "type": "string",
                    "description": "The identifier for the LAN you want to create an ACL policy with.\n"
                },
                "lanName": {
                    "type": "string",
                    "description": "The name of the LAN based on the provided lan_id.\n"
                },
                "portRanges": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed.\n"
                },
                "ports": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed.\n"
                },
                "subnets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "lanId",
                "lanName",
                "portRanges",
                "ports",
                "subnets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteAclsResult:getMagicTransitSiteAclsResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description for the ACL.\n"
                },
                "forwardLocally": {
                    "type": "boolean",
                    "description": "The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "lan1": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteAclsResultLan1:getMagicTransitSiteAclsResultLan1"
                },
                "lan2": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteAclsResultLan2:getMagicTransitSiteAclsResultLan2"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the ACL.\n"
                },
                "protocols": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "unidirectional": {
                    "type": "boolean",
                    "description": "The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "forwardLocally",
                "id",
                "lan1",
                "lan2",
                "name",
                "protocols",
                "unidirectional"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteAclsResultLan1:getMagicTransitSiteAclsResultLan1": {
            "properties": {
                "lanId": {
                    "type": "string",
                    "description": "The identifier for the LAN you want to create an ACL policy with.\n"
                },
                "lanName": {
                    "type": "string",
                    "description": "The name of the LAN based on the provided lan_id.\n"
                },
                "portRanges": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed.\n"
                },
                "ports": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed.\n"
                },
                "subnets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "lanId",
                "lanName",
                "portRanges",
                "ports",
                "subnets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteAclsResultLan2:getMagicTransitSiteAclsResultLan2": {
            "properties": {
                "lanId": {
                    "type": "string",
                    "description": "The identifier for the LAN you want to create an ACL policy with.\n"
                },
                "lanName": {
                    "type": "string",
                    "description": "The name of the LAN based on the provided lan_id.\n"
                },
                "portRanges": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed.\n"
                },
                "ports": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed.\n"
                },
                "subnets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "lanId",
                "lanName",
                "portRanges",
                "ports",
                "subnets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteFilter:getMagicTransitSiteFilter": {
            "properties": {
                "connectorid": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getMagicTransitSiteLanNat:getMagicTransitSiteLanNat": {
            "properties": {
                "staticPrefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "staticPrefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLanRoutedSubnet:getMagicTransitSiteLanRoutedSubnet": {
            "properties": {
                "nat": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLanRoutedSubnetNat:getMagicTransitSiteLanRoutedSubnetNat"
                },
                "nextHop": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "nat",
                "nextHop",
                "prefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLanRoutedSubnetNat:getMagicTransitSiteLanRoutedSubnetNat": {
            "properties": {
                "staticPrefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "staticPrefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLanStaticAddressing:getMagicTransitSiteLanStaticAddressing": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "dhcpRelay": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLanStaticAddressingDhcpRelay:getMagicTransitSiteLanStaticAddressingDhcpRelay"
                },
                "dhcpServer": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLanStaticAddressingDhcpServer:getMagicTransitSiteLanStaticAddressingDhcpServer"
                },
                "secondaryAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "virtualAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "dhcpRelay",
                "dhcpServer",
                "secondaryAddress",
                "virtualAddress"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLanStaticAddressingDhcpRelay:getMagicTransitSiteLanStaticAddressingDhcpRelay": {
            "properties": {
                "serverAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of DHCP server IPs.\n"
                }
            },
            "type": "object",
            "required": [
                "serverAddresses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLanStaticAddressingDhcpServer:getMagicTransitSiteLanStaticAddressingDhcpServer": {
            "properties": {
                "dhcpPoolEnd": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dhcpPoolStart": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dnsServer": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "reservations": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Mapping of MAC addresses to IP addresses\n"
                }
            },
            "type": "object",
            "required": [
                "dhcpPoolEnd",
                "dhcpPoolStart",
                "dnsServer",
                "dnsServers",
                "reservations"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResult:getMagicTransitSiteLansResult": {
            "properties": {
                "bondId": {
                    "type": "integer"
                },
                "haLink": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for HA probing. only works for site with HA turned on. only one LAN can be set as the ha_link.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "isBreakout": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for source-based breakout traffic\n"
                },
                "isPrioritized": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for source-based prioritized traffic\n"
                },
                "name": {
                    "type": "string"
                },
                "nat": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResultNat:getMagicTransitSiteLansResultNat"
                },
                "physport": {
                    "type": "integer"
                },
                "routedSubnets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResultRoutedSubnet:getMagicTransitSiteLansResultRoutedSubnet"
                    }
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "staticAddressing": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResultStaticAddressing:getMagicTransitSiteLansResultStaticAddressing",
                    "description": "If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static*address is required along with secondary and virtual address.\n"
                },
                "vlanTag": {
                    "type": "integer",
                    "description": "VLAN ID. Use zero for untagged.\n"
                }
            },
            "type": "object",
            "required": [
                "bondId",
                "haLink",
                "id",
                "isBreakout",
                "isPrioritized",
                "name",
                "nat",
                "physport",
                "routedSubnets",
                "siteId",
                "staticAddressing",
                "vlanTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResultNat:getMagicTransitSiteLansResultNat": {
            "properties": {
                "staticPrefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "staticPrefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResultRoutedSubnet:getMagicTransitSiteLansResultRoutedSubnet": {
            "properties": {
                "nat": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResultRoutedSubnetNat:getMagicTransitSiteLansResultRoutedSubnetNat"
                },
                "nextHop": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "nat",
                "nextHop",
                "prefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResultRoutedSubnetNat:getMagicTransitSiteLansResultRoutedSubnetNat": {
            "properties": {
                "staticPrefix": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "staticPrefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResultStaticAddressing:getMagicTransitSiteLansResultStaticAddressing": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "dhcpRelay": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResultStaticAddressingDhcpRelay:getMagicTransitSiteLansResultStaticAddressingDhcpRelay"
                },
                "dhcpServer": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResultStaticAddressingDhcpServer:getMagicTransitSiteLansResultStaticAddressingDhcpServer"
                },
                "secondaryAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "virtualAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "dhcpRelay",
                "dhcpServer",
                "secondaryAddress",
                "virtualAddress"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResultStaticAddressingDhcpRelay:getMagicTransitSiteLansResultStaticAddressingDhcpRelay": {
            "properties": {
                "serverAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of DHCP server IPs.\n"
                }
            },
            "type": "object",
            "required": [
                "serverAddresses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLansResultStaticAddressingDhcpServer:getMagicTransitSiteLansResultStaticAddressingDhcpServer": {
            "properties": {
                "dhcpPoolEnd": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dhcpPoolStart": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dnsServer": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "reservations": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Mapping of MAC addresses to IP addresses\n"
                }
            },
            "type": "object",
            "required": [
                "dhcpPoolEnd",
                "dhcpPoolStart",
                "dnsServer",
                "dnsServers",
                "reservations"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteLocation:getMagicTransitSiteLocation": {
            "properties": {
                "lat": {
                    "type": "string",
                    "description": "Latitude\n"
                },
                "lon": {
                    "type": "string",
                    "description": "Longitude\n"
                }
            },
            "type": "object",
            "required": [
                "lat",
                "lon"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteWanStaticAddressing:getMagicTransitSiteWanStaticAddressing": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "gatewayAddress": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "secondaryAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "gatewayAddress",
                "secondaryAddress"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteWansResult:getMagicTransitSiteWansResult": {
            "properties": {
                "healthCheckRate": {
                    "type": "string",
                    "description": "Magic WAN health check rate for tunnels created on this link. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string"
                },
                "physport": {
                    "type": "integer"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority of WAN for traffic loadbalancing.\n"
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "staticAddressing": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSiteWansResultStaticAddressing:getMagicTransitSiteWansResultStaticAddressing",
                    "description": "(optional) if omitted, use DHCP. Submit secondary*address when site is in high availability mode.\n"
                },
                "vlanTag": {
                    "type": "integer",
                    "description": "VLAN ID. Use zero for untagged.\n"
                }
            },
            "type": "object",
            "required": [
                "healthCheckRate",
                "id",
                "name",
                "physport",
                "priority",
                "siteId",
                "staticAddressing",
                "vlanTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSiteWansResultStaticAddressing:getMagicTransitSiteWansResultStaticAddressing": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                },
                "gatewayAddress": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "secondaryAddress": {
                    "type": "string",
                    "description": "A valid CIDR notation representing an IP range.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "gatewayAddress",
                "secondaryAddress"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSitesResult:getMagicTransitSitesResult": {
            "properties": {
                "connectorId": {
                    "type": "string",
                    "description": "Magic Connector identifier tag.\n"
                },
                "description": {
                    "type": "string"
                },
                "haMode": {
                    "type": "boolean",
                    "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "location": {
                    "$ref": "#/types/cloudflare:index/getMagicTransitSitesResultLocation:getMagicTransitSitesResultLocation",
                    "description": "Location of site in latitude and longitude.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the site.\n"
                },
                "secondaryConnectorId": {
                    "type": "string",
                    "description": "Magic Connector identifier tag. Used when high availability mode is on.\n"
                }
            },
            "type": "object",
            "required": [
                "connectorId",
                "description",
                "haMode",
                "id",
                "location",
                "name",
                "secondaryConnectorId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicTransitSitesResultLocation:getMagicTransitSitesResultLocation": {
            "properties": {
                "lat": {
                    "type": "string",
                    "description": "Latitude\n"
                },
                "lon": {
                    "type": "string",
                    "description": "Longitude\n"
                }
            },
            "type": "object",
            "required": [
                "lat",
                "lon"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanGreTunnelGreTunnel:getMagicWanGreTunnelGreTunnel": {
            "properties": {
                "automaticReturnRouting": {
                    "type": "boolean",
                    "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                },
                "bgp": {
                    "$ref": "#/types/cloudflare:index/getMagicWanGreTunnelGreTunnelBgp:getMagicWanGreTunnelGreTunnelBgp"
                },
                "bgpStatus": {
                    "$ref": "#/types/cloudflare:index/getMagicWanGreTunnelGreTunnelBgpStatus:getMagicWanGreTunnelGreTunnelBgpStatus"
                },
                "cloudflareGreEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the Cloudflare side of the GRE tunnel.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was created.\n"
                },
                "customerGreEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the customer side of the GRE tunnel.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description of the GRE tunnel.\n"
                },
                "healthCheck": {
                    "$ref": "#/types/cloudflare:index/getMagicWanGreTunnelGreTunnelHealthCheck:getMagicWanGreTunnelGreTunnelHealthCheck"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "interfaceAddress": {
                    "type": "string",
                    "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                },
                "interfaceAddress6": {
                    "type": "string",
                    "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was last modified.\n"
                },
                "mtu": {
                    "type": "integer",
                    "description": "Maximum Transmission Unit (MTU) in bytes for the GRE tunnel. The minimum value is 576.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tunnel. The name cannot contain spaces or special characters, must be 15 characters or less, and cannot share a name with another GRE tunnel.\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "Time To Live (TTL) in number of hops of the GRE tunnel.\n"
                }
            },
            "type": "object",
            "required": [
                "automaticReturnRouting",
                "bgp",
                "bgpStatus",
                "cloudflareGreEndpoint",
                "createdOn",
                "customerGreEndpoint",
                "description",
                "healthCheck",
                "id",
                "interfaceAddress",
                "interfaceAddress6",
                "modifiedOn",
                "mtu",
                "name",
                "ttl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanGreTunnelGreTunnelBgp:getMagicWanGreTunnelGreTunnelBgp": {
            "properties": {
                "customerAsn": {
                    "type": "integer",
                    "description": "ASN used on the customer end of the BGP session\n"
                },
                "extraPrefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Prefixes in this list will be advertised to the customer device, in addition to the routes in the Magic routing table.\n"
                },
                "md5Key": {
                    "type": "string",
                    "description": "MD5 key to use for session authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "customerAsn",
                "extraPrefixes",
                "md5Key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanGreTunnelGreTunnelBgpStatus:getMagicWanGreTunnelGreTunnelBgpStatus": {
            "properties": {
                "bgpState": {
                    "type": "string"
                },
                "cfSpeakerIp": {
                    "type": "string"
                },
                "cfSpeakerPort": {
                    "type": "integer"
                },
                "customerSpeakerIp": {
                    "type": "string"
                },
                "customerSpeakerPort": {
                    "type": "integer"
                },
                "state": {
                    "type": "string",
                    "description": "Available values: \"BGP*DOWN\", \"BGP*UP\", \"BGP_ESTABLISHING\".\n"
                },
                "tcpEstablished": {
                    "type": "boolean"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "bgpState",
                "cfSpeakerIp",
                "cfSpeakerPort",
                "customerSpeakerIp",
                "customerSpeakerPort",
                "state",
                "tcpEstablished",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanGreTunnelGreTunnelHealthCheck:getMagicWanGreTunnelGreTunnelHealthCheck": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The direction of the flow of the healthcheck. Either unidirectional, where the probe comes to you via the tunnel and the result comes back to Cloudflare via the open Internet, or bidirectional where both the probe and result come and go via the tunnel.\nAvailable values: \"unidirectional\", \"bidirectional\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether to run healthchecks for a tunnel.\n"
                },
                "rate": {
                    "type": "string",
                    "description": "How frequent the health check is run. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/getMagicWanGreTunnelGreTunnelHealthCheckTarget:getMagicWanGreTunnelGreTunnelHealthCheckTarget",
                    "description": "The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to \u003cspan pulumi-lang-nodejs=\"`customerGreEndpoint \" pulumi-lang-dotnet=\"`CustomerGreEndpoint \" pulumi-lang-go=\"`customerGreEndpoint \" pulumi-lang-python=\"`customer_gre_endpoint \" pulumi-lang-yaml=\"`customerGreEndpoint \" pulumi-lang-java=\"`customerGreEndpoint \"\u003e`customerGreEndpoint \u003c/span\u003eaddress`. This field is ignored for bidirectional healthchecks as the interface*address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of healthcheck to run, reply or request. The default value is \u003cspan pulumi-lang-nodejs=\"`reply`\" pulumi-lang-dotnet=\"`Reply`\" pulumi-lang-go=\"`reply`\" pulumi-lang-python=\"`reply`\" pulumi-lang-yaml=\"`reply`\" pulumi-lang-java=\"`reply`\"\u003e`reply`\u003c/span\u003e.\nAvailable values: \"reply\", \"request\".\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "enabled",
                "rate",
                "target",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanGreTunnelGreTunnelHealthCheckTarget:getMagicWanGreTunnelGreTunnelHealthCheckTarget": {
            "properties": {
                "effective": {
                    "type": "string",
                    "description": "The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.\n"
                },
                "saved": {
                    "type": "string",
                    "description": "The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.\n"
                }
            },
            "type": "object",
            "required": [
                "effective",
                "saved"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnel:getMagicWanIpsecTunnelIpsecTunnel": {
            "properties": {
                "allowNullCipher": {
                    "type": "boolean",
                    "description": "When \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can use a null-cipher (`ENCR_NULL`) in the ESP tunnel (Phase 2).\n"
                },
                "automaticReturnRouting": {
                    "type": "boolean",
                    "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                },
                "bgp": {
                    "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelBgp:getMagicWanIpsecTunnelIpsecTunnelBgp"
                },
                "bgpStatus": {
                    "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelBgpStatus:getMagicWanIpsecTunnelIpsecTunnelBgpStatus"
                },
                "cloudflareEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the Cloudflare side of the IPsec tunnel.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was created.\n"
                },
                "customRemoteIdentities": {
                    "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelCustomRemoteIdentities:getMagicWanIpsecTunnelIpsecTunnelCustomRemoteIdentities"
                },
                "customerEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the customer side of the IPsec tunnel. Not required, but must be set for proactive traceroutes to work.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description forthe IPsec tunnel.\n"
                },
                "healthCheck": {
                    "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelHealthCheck:getMagicWanIpsecTunnelIpsecTunnelHealthCheck"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "interfaceAddress": {
                    "type": "string",
                    "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                },
                "interfaceAddress6": {
                    "type": "string",
                    "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the IPsec tunnel. The name cannot share a name with other tunnels.\n"
                },
                "pskMetadata": {
                    "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelPskMetadata:getMagicWanIpsecTunnelIpsecTunnelPskMetadata",
                    "description": "The PSK metadata that includes when the PSK was generated.\n"
                },
                "replayProtection": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, then IPsec replay protection will be supported in the Cloudflare-to-customer direction.\n"
                }
            },
            "type": "object",
            "required": [
                "allowNullCipher",
                "automaticReturnRouting",
                "bgp",
                "bgpStatus",
                "cloudflareEndpoint",
                "createdOn",
                "customRemoteIdentities",
                "customerEndpoint",
                "description",
                "healthCheck",
                "id",
                "interfaceAddress",
                "interfaceAddress6",
                "modifiedOn",
                "name",
                "pskMetadata",
                "replayProtection"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelBgp:getMagicWanIpsecTunnelIpsecTunnelBgp": {
            "properties": {
                "customerAsn": {
                    "type": "integer",
                    "description": "ASN used on the customer end of the BGP session\n"
                },
                "extraPrefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Prefixes in this list will be advertised to the customer device, in addition to the routes in the Magic routing table.\n"
                },
                "md5Key": {
                    "type": "string",
                    "description": "MD5 key to use for session authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "customerAsn",
                "extraPrefixes",
                "md5Key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelBgpStatus:getMagicWanIpsecTunnelIpsecTunnelBgpStatus": {
            "properties": {
                "bgpState": {
                    "type": "string"
                },
                "cfSpeakerIp": {
                    "type": "string"
                },
                "cfSpeakerPort": {
                    "type": "integer"
                },
                "customerSpeakerIp": {
                    "type": "string"
                },
                "customerSpeakerPort": {
                    "type": "integer"
                },
                "state": {
                    "type": "string",
                    "description": "Available values: \"BGP*DOWN\", \"BGP*UP\", \"BGP_ESTABLISHING\".\n"
                },
                "tcpEstablished": {
                    "type": "boolean"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "bgpState",
                "cfSpeakerIp",
                "cfSpeakerPort",
                "customerSpeakerIp",
                "customerSpeakerPort",
                "state",
                "tcpEstablished",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelCustomRemoteIdentities:getMagicWanIpsecTunnelIpsecTunnelCustomRemoteIdentities": {
            "properties": {
                "fqdnId": {
                    "type": "string",
                    "description": "A custom IKE ID of type FQDN that may be used to identity the IPsec tunnel. The\ngenerated IKE IDs can still be used even if this custom value is specified.\n"
                }
            },
            "type": "object",
            "required": [
                "fqdnId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelHealthCheck:getMagicWanIpsecTunnelIpsecTunnelHealthCheck": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The direction of the flow of the healthcheck. Either unidirectional, where the probe comes to you via the tunnel and the result comes back to Cloudflare via the open Internet, or bidirectional where both the probe and result come and go via the tunnel.\nAvailable values: \"unidirectional\", \"bidirectional\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether to run healthchecks for a tunnel.\n"
                },
                "rate": {
                    "type": "string",
                    "description": "How frequent the health check is run. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelHealthCheckTarget:getMagicWanIpsecTunnelIpsecTunnelHealthCheckTarget",
                    "description": "The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to \u003cspan pulumi-lang-nodejs=\"`customerGreEndpoint \" pulumi-lang-dotnet=\"`CustomerGreEndpoint \" pulumi-lang-go=\"`customerGreEndpoint \" pulumi-lang-python=\"`customer_gre_endpoint \" pulumi-lang-yaml=\"`customerGreEndpoint \" pulumi-lang-java=\"`customerGreEndpoint \"\u003e`customerGreEndpoint \u003c/span\u003eaddress`. This field is ignored for bidirectional healthchecks as the interface*address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of healthcheck to run, reply or request. The default value is \u003cspan pulumi-lang-nodejs=\"`reply`\" pulumi-lang-dotnet=\"`Reply`\" pulumi-lang-go=\"`reply`\" pulumi-lang-python=\"`reply`\" pulumi-lang-yaml=\"`reply`\" pulumi-lang-java=\"`reply`\"\u003e`reply`\u003c/span\u003e.\nAvailable values: \"reply\", \"request\".\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "enabled",
                "rate",
                "target",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelHealthCheckTarget:getMagicWanIpsecTunnelIpsecTunnelHealthCheckTarget": {
            "properties": {
                "effective": {
                    "type": "string",
                    "description": "The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.\n"
                },
                "saved": {
                    "type": "string",
                    "description": "The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.\n"
                }
            },
            "type": "object",
            "required": [
                "effective",
                "saved"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnelIpsecTunnelPskMetadata:getMagicWanIpsecTunnelIpsecTunnelPskMetadata": {
            "properties": {
                "lastGeneratedOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was last modified.\n"
                }
            },
            "type": "object",
            "required": [
                "lastGeneratedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanStaticRouteRoute:getMagicWanStaticRouteRoute": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the route was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional human provided description of the static route.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the route was last modified.\n"
                },
                "nexthop": {
                    "type": "string",
                    "description": "The next-hop IP Address for the static route.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority of the static route.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/getMagicWanStaticRouteRouteScope:getMagicWanStaticRouteRouteScope",
                    "description": "Used only for ECMP routes.\n"
                },
                "weight": {
                    "type": "integer",
                    "description": "Optional weight of the ECMP scope - if provided.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "description",
                "id",
                "modifiedOn",
                "nexthop",
                "prefix",
                "priority",
                "scope",
                "weight"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMagicWanStaticRouteRouteScope:getMagicWanStaticRouteRouteScope": {
            "properties": {
                "coloNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of colo names for the ECMP scope.\n"
                },
                "coloRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of colo regions for the ECMP scope.\n"
                }
            },
            "type": "object",
            "required": [
                "coloNames",
                "coloRegions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getManagedTransformsManagedRequestHeader:getManagedTransformsManagedRequestHeader": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Managed Transform is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The human-readable identifier of the Managed Transform.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getManagedTransformsManagedResponseHeader:getManagedTransformsManagedResponseHeader": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Managed Transform is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The human-readable identifier of the Managed Transform.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getMtlsCertificatesResult:getMtlsCertificatesResult": {
            "properties": {
                "ca": {
                    "type": "boolean",
                    "description": "Indicates whether the certificate is a CA or leaf certificate.\n"
                },
                "certificates": {
                    "type": "string",
                    "description": "The uploaded root CA certificate.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate expires.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Optional unique name for the certificate. Only used for human readability.\n"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The certificate serial number.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "This is the time the certificate was uploaded.\n"
                }
            },
            "type": "object",
            "required": [
                "ca",
                "certificates",
                "expiresOn",
                "id",
                "issuer",
                "name",
                "serialNumber",
                "signature",
                "uploadedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPoliciesResult:getNotificationPoliciesResult": {
            "properties": {
                "alertInterval": {
                    "type": "string",
                    "description": "Optional specification of how often to re-alert from the same incident, not support on all alert types.\n"
                },
                "alertType": {
                    "type": "string",
                    "description": "Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values.\nAvailable values: \"abuse*report*alert\", \"access*custom*certificate*expiration*type\", \"advanced*ddos*attack*l4*alert\", \"advanced*ddos*attack*l7*alert\", \"advanced*http*alert*error\", \"bgp*hijack*notification\", \"billing*usage*alert\", \"block*notification*block*removed\", \"block*notification*new*block\", \"block*notification*review*rejected\", \"bot*traffic*basic*alert\", \"brand*protection*alert\", \"brand*protection*digest\", \"clickhouse*alert*fw*anomaly\", \"clickhouse*alert*fw*ent*anomaly\", \"cloudforce*one*request*notification\", \"cni*maintenance*notification\", \"custom*analytics\", \"custom*bot*detection*alert\", \"custom*ssl*certificate*event*type\", \"dedicated*ssl*certificate*event*type\", \"device*connectivity*anomaly*alert\", \"dos*attack*l4\", \"dos*attack*l7\", \"expiring*service*token*alert\", \"failing*logpush*job*disabled*alert\", \"fbm*auto*advertisement\", \"fbm*dosd*attack\", \"fbm*volumetric*attack\", \"health*check*status*notification\", \"hostname*aop*custom*certificate*expiration*type\", \"http*alert*edge*error\", \"http*alert*origin*error\", \"image*notification\", \"image*resizing*notification\", \"incident*alert\", \"load*balancing*health*alert\", \"load*balancing*pool*enablement*alert\", \"logo*match*alert\", \"magic*tunnel*health*check*event\", \"magic*wan*tunnel*health\", \"maintenance*event*notification\", \"mtls*certificate*store*certificate*expiration*type\", \"pages*event*alert\", \"radar*notification\", \"real*origin*monitoring\", \"scriptmonitor*alert*new*code*change*detections\", \"scriptmonitor*alert*new*hosts\", \"scriptmonitor*alert*new*malicious*hosts\", \"scriptmonitor*alert*new*malicious*scripts\", \"scriptmonitor*alert*new*malicious*url\", \"scriptmonitor*alert*new*max*length*resource*url\", \"scriptmonitor*alert*new*resources\", \"secondary*dns*all*primaries*failing\", \"secondary*dns*primaries*failing\", \"secondary*dns*warning\", \"secondary*dns*zone*successfully*updated\", \"secondary*dns*zone*validation*warning\", \"security*insights*alert\", \"sentinel*alert\", \"stream*live*notifications\", \"synthetic*test*latency*alert\", \"synthetic*test*low*availability*alert\", \"traffic*anomalies*alert\", \"tunnel*health*event\", \"tunnel*update*event\", \"universal*ssl*event*type\", \"web*analytics*metrics*update\", \"zone*aop*custom*certificate*expiration*type\".\n"
                },
                "created": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Optional description for the Notification policy.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Notification policy is enabled.\n"
                },
                "filters": {
                    "$ref": "#/types/cloudflare:index/getNotificationPoliciesResultFilters:getNotificationPoliciesResultFilters",
                    "description": "Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of a notification policy\n"
                },
                "mechanisms": {
                    "$ref": "#/types/cloudflare:index/getNotificationPoliciesResultMechanisms:getNotificationPoliciesResultMechanisms",
                    "description": "List of IDs that will be used when dispatching a notification. IDs for email type will be the email address.\n"
                },
                "modified": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the policy.\n"
                }
            },
            "type": "object",
            "required": [
                "alertInterval",
                "alertType",
                "created",
                "description",
                "enabled",
                "filters",
                "id",
                "mechanisms",
                "modified",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPoliciesResultFilters:getNotificationPoliciesResultFilters": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "affectedAsns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring radar_notification\n"
                },
                "affectedComponents": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring incident_alert\n"
                },
                "affectedLocations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring radar_notification\n"
                },
                "airportCodes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring maintenance*event*notification\n"
                },
                "alertTriggerPreferences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "alertTriggerPreferencesValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "enableds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*pool*enablement*alert\n"
                },
                "environments": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "eventSources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*health_alert\n"
                },
                "eventTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "healthCheckIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring health*check*status_notification\n"
                },
                "incidentImpacts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring incident_alert\n"
                },
                "inputIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring stream*live*notifications\n"
                },
                "insightClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring security*insights*alert\n"
                },
                "limits": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring billing*usage*alert\n"
                },
                "logoTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring logo*match*alert\n"
                },
                "megabitsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "newHealths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*health_alert\n"
                },
                "newStatuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring tunnel*health*event\n"
                },
                "packetsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "poolIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "popNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring billing*usage*alert\n"
                },
                "projectIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "protocols": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "queryTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "requestsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "selectors": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "services": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring clickhouse*alert*fw*ent*anomaly\n"
                },
                "slos": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "statuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring health*check*status_notification\n"
                },
                "targetHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "targetIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "targetZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "trafficExclusions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring traffic*anomalies*alert\n"
                },
                "tunnelIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring tunnel*health*event\n"
                },
                "tunnelNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "types": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "wheres": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "zones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                }
            },
            "type": "object",
            "required": [
                "actions",
                "affectedAsns",
                "affectedComponents",
                "affectedLocations",
                "airportCodes",
                "alertTriggerPreferences",
                "alertTriggerPreferencesValues",
                "enableds",
                "environments",
                "events",
                "eventSources",
                "eventTypes",
                "groupBies",
                "healthCheckIds",
                "incidentImpacts",
                "inputIds",
                "insightClasses",
                "limits",
                "logoTags",
                "megabitsPerSeconds",
                "newHealths",
                "newStatuses",
                "packetsPerSeconds",
                "poolIds",
                "popNames",
                "products",
                "projectIds",
                "protocols",
                "queryTags",
                "requestsPerSeconds",
                "selectors",
                "services",
                "slos",
                "statuses",
                "targetHostnames",
                "targetIps",
                "targetZoneNames",
                "trafficExclusions",
                "tunnelIds",
                "tunnelNames",
                "types",
                "wheres",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPoliciesResultMechanisms:getNotificationPoliciesResultMechanisms": {
            "properties": {
                "emails": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getNotificationPoliciesResultMechanismsEmail:getNotificationPoliciesResultMechanismsEmail"
                    }
                },
                "pagerduties": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getNotificationPoliciesResultMechanismsPagerduty:getNotificationPoliciesResultMechanismsPagerduty"
                    }
                },
                "webhooks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getNotificationPoliciesResultMechanismsWebhook:getNotificationPoliciesResultMechanismsWebhook"
                    }
                }
            },
            "type": "object",
            "required": [
                "emails",
                "pagerduties",
                "webhooks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPoliciesResultMechanismsEmail:getNotificationPoliciesResultMechanismsEmail": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The email address\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPoliciesResultMechanismsPagerduty:getNotificationPoliciesResultMechanismsPagerduty": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPoliciesResultMechanismsWebhook:getNotificationPoliciesResultMechanismsWebhook": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPolicyFilters:getNotificationPolicyFilters": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "affectedAsns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring radar_notification\n"
                },
                "affectedComponents": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring incident_alert\n"
                },
                "affectedLocations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring radar_notification\n"
                },
                "airportCodes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring maintenance*event*notification\n"
                },
                "alertTriggerPreferences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "alertTriggerPreferencesValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "enableds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*pool*enablement*alert\n"
                },
                "environments": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "eventSources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*health_alert\n"
                },
                "eventTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "healthCheckIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring health*check*status_notification\n"
                },
                "incidentImpacts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring incident_alert\n"
                },
                "inputIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring stream*live*notifications\n"
                },
                "insightClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring security*insights*alert\n"
                },
                "limits": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring billing*usage*alert\n"
                },
                "logoTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring logo*match*alert\n"
                },
                "megabitsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "newHealths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring load*balancing*health_alert\n"
                },
                "newStatuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring tunnel*health*event\n"
                },
                "packetsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "poolIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "popNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring billing*usage*alert\n"
                },
                "projectIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring pages*event*alert\n"
                },
                "protocols": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "queryTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "requestsPerSeconds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "selectors": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "services": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring clickhouse*alert*fw*ent*anomaly\n"
                },
                "slos": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "statuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring health*check*status_notification\n"
                },
                "targetHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "targetIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l4*alert\n"
                },
                "targetZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring advanced*ddos*attack*l7*alert\n"
                },
                "trafficExclusions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring traffic*anomalies*alert\n"
                },
                "tunnelIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Used for configuring tunnel*health*event\n"
                },
                "tunnelNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "types": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "wheres": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                },
                "zones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Usage depends on specific alert type\n"
                }
            },
            "type": "object",
            "required": [
                "actions",
                "affectedAsns",
                "affectedComponents",
                "affectedLocations",
                "airportCodes",
                "alertTriggerPreferences",
                "alertTriggerPreferencesValues",
                "enableds",
                "environments",
                "events",
                "eventSources",
                "eventTypes",
                "groupBies",
                "healthCheckIds",
                "incidentImpacts",
                "inputIds",
                "insightClasses",
                "limits",
                "logoTags",
                "megabitsPerSeconds",
                "newHealths",
                "newStatuses",
                "packetsPerSeconds",
                "poolIds",
                "popNames",
                "products",
                "projectIds",
                "protocols",
                "queryTags",
                "requestsPerSeconds",
                "selectors",
                "services",
                "slos",
                "statuses",
                "targetHostnames",
                "targetIps",
                "targetZoneNames",
                "trafficExclusions",
                "tunnelIds",
                "tunnelNames",
                "types",
                "wheres",
                "zones"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPolicyMechanisms:getNotificationPolicyMechanisms": {
            "properties": {
                "emails": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getNotificationPolicyMechanismsEmail:getNotificationPolicyMechanismsEmail"
                    }
                },
                "pagerduties": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getNotificationPolicyMechanismsPagerduty:getNotificationPolicyMechanismsPagerduty"
                    }
                },
                "webhooks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getNotificationPolicyMechanismsWebhook:getNotificationPolicyMechanismsWebhook"
                    }
                }
            },
            "type": "object",
            "required": [
                "emails",
                "pagerduties",
                "webhooks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPolicyMechanismsEmail:getNotificationPolicyMechanismsEmail": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The email address\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPolicyMechanismsPagerduty:getNotificationPolicyMechanismsPagerduty": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPolicyMechanismsWebhook:getNotificationPolicyMechanismsWebhook": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getNotificationPolicyWebhooksListResult:getNotificationPolicyWebhooksListResult": {
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the webhook destination was created.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of a webhook\n"
                },
                "lastFailure": {
                    "type": "string",
                    "description": "Timestamp of the last time an attempt to dispatch a notification to this webhook failed.\n"
                },
                "lastSuccess": {
                    "type": "string",
                    "description": "Timestamp of the last time Cloudflare was able to successfully dispatch a notification using this webhook.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the webhook destination. This will be included in the request body when you receive a webhook notification.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.\n",
                    "secret": true
                },
                "type": {
                    "type": "string",
                    "description": "Type of webhook endpoint.\nAvailable values: \"datadog\", \"discord\", \"feishu\", \"gchat\", \"generic\", \"opsgenie\", \"slack\", \"splunk\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The POST endpoint to call when dispatching a notification.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "id",
                "lastFailure",
                "lastSuccess",
                "name",
                "secret",
                "type",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationFilter:getOrganizationFilter": {
            "properties": {
                "containing": {
                    "$ref": "#/types/cloudflare:index/getOrganizationFilterContaining:getOrganizationFilterContaining"
                },
                "ids": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Only return organizations with the specified IDs (ex. id=foo\u0026id=bar). Send multiple elements\nby repeating the query value.\n"
                },
                "name": {
                    "$ref": "#/types/cloudflare:index/getOrganizationFilterName:getOrganizationFilterName"
                },
                "pageSize": {
                    "type": "integer",
                    "description": "The amount of items to return. Defaults to 10.\n"
                },
                "pageToken": {
                    "type": "string",
                    "description": "An opaque token returned from the last list response that when\nprovided will retrieve the next page.\n"
                },
                "parent": {
                    "$ref": "#/types/cloudflare:index/getOrganizationFilterParent:getOrganizationFilterParent"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getOrganizationFilterContaining:getOrganizationFilterContaining": {
            "properties": {
                "account": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that contain this particular\naccount.\n"
                },
                "organization": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that contain this particular\norganization.\n"
                },
                "user": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that contain this particular\nuser.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getOrganizationFilterName:getOrganizationFilterName": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "(case-insensitive) Filter the list of organizations to where the name contains a particular\nstring.\n"
                },
                "endsWith": {
                    "type": "string",
                    "description": "(case-insensitive) Filter the list of organizations to where the name ends with a particular\nstring.\n"
                },
                "startsWith": {
                    "type": "string",
                    "description": "(case-insensitive) Filter the list of organizations to where the name starts with a\nparticular string.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getOrganizationFilterParent:getOrganizationFilterParent": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that are a sub-organization\nof the specified organization.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getOrganizationMeta:getOrganizationMeta": {
            "properties": {
                "flags": {
                    "$ref": "#/types/cloudflare:index/getOrganizationMetaFlags:getOrganizationMetaFlags",
                    "description": "Enable features for Organizations.\n"
                },
                "managedBy": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "flags",
                "managedBy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationMetaFlags:getOrganizationMetaFlags": {
            "properties": {
                "accountCreation": {
                    "type": "string"
                },
                "accountDeletion": {
                    "type": "string"
                },
                "accountMigration": {
                    "type": "string"
                },
                "accountMobility": {
                    "type": "string"
                },
                "subOrgCreation": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "accountCreation",
                "accountDeletion",
                "accountMigration",
                "accountMobility",
                "subOrgCreation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationParent:getOrganizationParent": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationProfile:getOrganizationProfile": {
            "properties": {
                "businessAddress": {
                    "type": "string"
                },
                "businessEmail": {
                    "type": "string"
                },
                "businessName": {
                    "type": "string"
                },
                "businessPhone": {
                    "type": "string"
                },
                "externalMetadata": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "businessAddress",
                "businessEmail",
                "businessName",
                "businessPhone",
                "externalMetadata"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationsContaining:getOrganizationsContaining": {
            "properties": {
                "account": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that contain this particular\naccount.\n"
                },
                "organization": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that contain this particular\norganization.\n"
                },
                "user": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that contain this particular\nuser.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getOrganizationsName:getOrganizationsName": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "(case-insensitive) Filter the list of organizations to where the name contains a particular\nstring.\n"
                },
                "endsWith": {
                    "type": "string",
                    "description": "(case-insensitive) Filter the list of organizations to where the name ends with a particular\nstring.\n"
                },
                "startsWith": {
                    "type": "string",
                    "description": "(case-insensitive) Filter the list of organizations to where the name starts with a\nparticular string.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getOrganizationsParent:getOrganizationsParent": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Filter the list of organizations to the ones that are a sub-organization\nof the specified organization.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationsResult:getOrganizationsResult": {
            "properties": {
                "createTime": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getOrganizationsResultMeta:getOrganizationsResultMeta"
                },
                "name": {
                    "type": "string"
                },
                "parent": {
                    "$ref": "#/types/cloudflare:index/getOrganizationsResultParent:getOrganizationsResultParent"
                },
                "profile": {
                    "$ref": "#/types/cloudflare:index/getOrganizationsResultProfile:getOrganizationsResultProfile"
                }
            },
            "type": "object",
            "required": [
                "createTime",
                "id",
                "meta",
                "name",
                "parent",
                "profile"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationsResultMeta:getOrganizationsResultMeta": {
            "properties": {
                "flags": {
                    "$ref": "#/types/cloudflare:index/getOrganizationsResultMetaFlags:getOrganizationsResultMetaFlags",
                    "description": "Enable features for Organizations.\n"
                },
                "managedBy": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "flags",
                "managedBy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationsResultMetaFlags:getOrganizationsResultMetaFlags": {
            "properties": {
                "accountCreation": {
                    "type": "string"
                },
                "accountDeletion": {
                    "type": "string"
                },
                "accountMigration": {
                    "type": "string"
                },
                "accountMobility": {
                    "type": "string"
                },
                "subOrgCreation": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "accountCreation",
                "accountDeletion",
                "accountMigration",
                "accountMobility",
                "subOrgCreation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationsResultParent:getOrganizationsResultParent": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOrganizationsResultProfile:getOrganizationsResultProfile": {
            "properties": {
                "businessAddress": {
                    "type": "string"
                },
                "businessEmail": {
                    "type": "string"
                },
                "businessName": {
                    "type": "string"
                },
                "businessPhone": {
                    "type": "string"
                },
                "externalMetadata": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "businessAddress",
                "businessEmail",
                "businessName",
                "businessPhone",
                "externalMetadata"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getOriginCaCertificateFilter:getOriginCaCertificateFilter": {
            "properties": {
                "limit": {
                    "type": "integer",
                    "description": "Limit to the number of records returned.\n"
                },
                "offset": {
                    "type": "integer",
                    "description": "Offset the results\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "type": "object",
            "required": [
                "zoneId"
            ]
        },
        "cloudflare:index/getOriginCaCertificatesResult:getOriginCaCertificatesResult": {
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The Origin CA certificate. Will be newline-encoded.\n"
                },
                "csr": {
                    "type": "string",
                    "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate will expire.\n"
                },
                "hostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of hostnames or wildcard names bound to the certificate.\nHostnames must be fully qualified domain names (FQDNs) belonging to zones on your account (e.g., `example.com` or `sub.example.com`). Wildcards are supported only as a `*.` prefix for a single level (e.g., `*.example.com`). Double wildcards (`*.*.example.com`) and interior wildcards (`foo.*.example.com`) are not allowed. The wildcard suffix must be a multi-label domain (`*.example.com` is valid, but `*.com` is not). Unicode/IDN hostnames are accepted and automatically converted to punycode.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).\nAvailable values: \"origin-rsa\", \"origin-ecc\", \"keyless-certificate\".\n"
                },
                "requestedValidity": {
                    "type": "number",
                    "description": "The number of days for which the certificate should be valid.\nAvailable values: 7, 30, 90, 365, 730, 1095, 5475.\n"
                }
            },
            "type": "object",
            "required": [
                "certificate",
                "csr",
                "expiresOn",
                "hostnames",
                "id",
                "requestType",
                "requestedValidity"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPageShieldConnectionsListResult:getPageShieldConnectionsListResult": {
            "properties": {
                "addedAt": {
                    "type": "string"
                },
                "domainReportedMalicious": {
                    "type": "boolean"
                },
                "firstPageUrl": {
                    "type": "string"
                },
                "firstSeenAt": {
                    "type": "string"
                },
                "host": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "lastSeenAt": {
                    "type": "string"
                },
                "maliciousDomainCategories": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "maliciousUrlCategories": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "pageUrls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "url": {
                    "type": "string"
                },
                "urlContainsCdnCgiPath": {
                    "type": "boolean"
                },
                "urlReportedMalicious": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "addedAt",
                "domainReportedMalicious",
                "firstPageUrl",
                "firstSeenAt",
                "host",
                "id",
                "lastSeenAt",
                "maliciousDomainCategories",
                "maliciousUrlCategories",
                "pageUrls",
                "url",
                "urlContainsCdnCgiPath",
                "urlReportedMalicious"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPageShieldCookiesListResult:getPageShieldCookiesListResult": {
            "properties": {
                "domainAttribute": {
                    "type": "string"
                },
                "expiresAttribute": {
                    "type": "string"
                },
                "firstSeenAt": {
                    "type": "string"
                },
                "host": {
                    "type": "string"
                },
                "httpOnlyAttribute": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "lastSeenAt": {
                    "type": "string"
                },
                "maxAgeAttribute": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "pageUrls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "pathAttribute": {
                    "type": "string"
                },
                "sameSiteAttribute": {
                    "type": "string",
                    "description": "Available values: \"lax\", \"strict\", \"none\".\n"
                },
                "secureAttribute": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \u003cspan pulumi-lang-nodejs=\"\"firstParty\"\" pulumi-lang-dotnet=\"\"FirstParty\"\" pulumi-lang-go=\"\"firstParty\"\" pulumi-lang-python=\"\"first_party\"\" pulumi-lang-yaml=\"\"firstParty\"\" pulumi-lang-java=\"\"firstParty\"\"\u003e\"firstParty\"\u003c/span\u003e, \"unknown\".\n"
                }
            },
            "type": "object",
            "required": [
                "domainAttribute",
                "expiresAttribute",
                "firstSeenAt",
                "host",
                "httpOnlyAttribute",
                "id",
                "lastSeenAt",
                "maxAgeAttribute",
                "name",
                "pageUrls",
                "pathAttribute",
                "sameSiteAttribute",
                "secureAttribute",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPageShieldPoliciesResult:getPageShieldPoliciesResult": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to take if the expression matches\nAvailable values: \"allow\", \"log\", \"add*reporting*directives\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the policy\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy is enabled\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "value": {
                    "type": "string",
                    "description": "The policy which will be applied\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "description",
                "enabled",
                "expression",
                "id",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPageShieldScriptsListResult:getPageShieldScriptsListResult": {
            "properties": {
                "addedAt": {
                    "type": "string"
                },
                "cryptominingScore": {
                    "type": "integer",
                    "description": "The cryptomining score of the JavaScript content.\n"
                },
                "dataflowScore": {
                    "type": "integer",
                    "description": "The dataflow score of the JavaScript content. This field has been deprecated in favour of js*integrity*score.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "domainReportedMalicious": {
                    "type": "boolean"
                },
                "fetchedAt": {
                    "type": "string",
                    "description": "The timestamp of when the script was last fetched.\n"
                },
                "firstPageUrl": {
                    "type": "string"
                },
                "firstSeenAt": {
                    "type": "string"
                },
                "hash": {
                    "type": "string",
                    "description": "The computed hash of the analyzed script.\n"
                },
                "host": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "jsIntegrityScore": {
                    "type": "integer",
                    "description": "The integrity score of the JavaScript content.\n"
                },
                "lastSeenAt": {
                    "type": "string"
                },
                "magecartScore": {
                    "type": "integer",
                    "description": "The magecart score of the JavaScript content.\n"
                },
                "maliciousDomainCategories": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "maliciousUrlCategories": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "malwareScore": {
                    "type": "integer",
                    "description": "The malware score of the JavaScript content.\n"
                },
                "obfuscationScore": {
                    "type": "integer",
                    "description": "The obfuscation score of the JavaScript content. This field has been deprecated in favour of js*integrity*score.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "pageUrls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "url": {
                    "type": "string"
                },
                "urlContainsCdnCgiPath": {
                    "type": "boolean"
                },
                "urlReportedMalicious": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "addedAt",
                "cryptominingScore",
                "dataflowScore",
                "domainReportedMalicious",
                "fetchedAt",
                "firstPageUrl",
                "firstSeenAt",
                "hash",
                "host",
                "id",
                "jsIntegrityScore",
                "lastSeenAt",
                "magecartScore",
                "maliciousDomainCategories",
                "maliciousUrlCategories",
                "malwareScore",
                "obfuscationScore",
                "pageUrls",
                "url",
                "urlContainsCdnCgiPath",
                "urlReportedMalicious"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPageShieldScriptsVersion:getPageShieldScriptsVersion": {
            "properties": {
                "cryptominingScore": {
                    "type": "integer",
                    "description": "The cryptomining score of the JavaScript content.\n"
                },
                "dataflowScore": {
                    "type": "integer",
                    "description": "The dataflow score of the JavaScript content. This field has been deprecated in favour of js*integrity*score.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "fetchedAt": {
                    "type": "string",
                    "description": "The timestamp of when the script was last fetched.\n"
                },
                "hash": {
                    "type": "string",
                    "description": "The computed hash of the analyzed script.\n"
                },
                "jsIntegrityScore": {
                    "type": "integer",
                    "description": "The integrity score of the JavaScript content.\n"
                },
                "magecartScore": {
                    "type": "integer",
                    "description": "The magecart score of the JavaScript content.\n"
                },
                "malwareScore": {
                    "type": "integer",
                    "description": "The malware score of the JavaScript content.\n"
                },
                "obfuscationScore": {
                    "type": "integer",
                    "description": "The obfuscation score of the JavaScript content. This field has been deprecated in favour of js*integrity*score.\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "cryptominingScore",
                "dataflowScore",
                "fetchedAt",
                "hash",
                "jsIntegrityScore",
                "magecartScore",
                "malwareScore",
                "obfuscationScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesDomainValidationData:getPagesDomainValidationData": {
            "properties": {
                "errorMessage": {
                    "type": "string"
                },
                "method": {
                    "type": "string",
                    "description": "Available values: \"http\", \"txt\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"error\".\n"
                },
                "txtName": {
                    "type": "string"
                },
                "txtValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "errorMessage",
                "method",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesDomainVerificationData:getPagesDomainVerificationData": {
            "properties": {
                "errorMessage": {
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n"
                }
            },
            "type": "object",
            "required": [
                "errorMessage",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesDomainsResult:getPagesDomainsResult": {
            "properties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "Available values: \"google\", \u003cspan pulumi-lang-nodejs=\"\"letsEncrypt\"\" pulumi-lang-dotnet=\"\"LetsEncrypt\"\" pulumi-lang-go=\"\"letsEncrypt\"\" pulumi-lang-python=\"\"lets_encrypt\"\" pulumi-lang-yaml=\"\"letsEncrypt\"\" pulumi-lang-java=\"\"letsEncrypt\"\"\u003e\"letsEncrypt\"\u003c/span\u003e.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "domainId": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The domain name.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n"
                },
                "validationData": {
                    "$ref": "#/types/cloudflare:index/getPagesDomainsResultValidationData:getPagesDomainsResultValidationData"
                },
                "verificationData": {
                    "$ref": "#/types/cloudflare:index/getPagesDomainsResultVerificationData:getPagesDomainsResultVerificationData"
                },
                "zoneTag": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateAuthority",
                "createdOn",
                "domainId",
                "id",
                "name",
                "status",
                "validationData",
                "verificationData",
                "zoneTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesDomainsResultValidationData:getPagesDomainsResultValidationData": {
            "properties": {
                "errorMessage": {
                    "type": "string"
                },
                "method": {
                    "type": "string",
                    "description": "Available values: \"http\", \"txt\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"error\".\n"
                },
                "txtName": {
                    "type": "string"
                },
                "txtValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "errorMessage",
                "method",
                "status",
                "txtName",
                "txtValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesDomainsResultVerificationData:getPagesDomainsResultVerificationData": {
            "properties": {
                "errorMessage": {
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n"
                }
            },
            "type": "object",
            "required": [
                "errorMessage",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectBuildConfig:getPagesProjectBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "buildCaching",
                "buildCommand",
                "destinationDir",
                "rootDir",
                "webAnalyticsTag",
                "webAnalyticsToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeployment:getPagesProjectCanonicalDeployment": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of alias URLs pointing to this deployment.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentBuildConfig:getPagesProjectCanonicalDeploymentBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the deployment was created.\n"
                },
                "deploymentTrigger": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentDeploymentTrigger:getPagesProjectCanonicalDeploymentDeploymentTrigger",
                    "description": "Info about what caused the deployment.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentEnvVars:getPagesProjectCanonicalDeploymentEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Type of deploy.\nAvailable values: \"preview\", \"production\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Id of the deployment.\n"
                },
                "isSkipped": {
                    "type": "boolean",
                    "description": "If the deployment has been skipped.\n"
                },
                "latestStage": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentLatestStage:getPagesProjectCanonicalDeploymentLatestStage",
                    "description": "The status of the deployment.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the deployment was last modified.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Id of the project.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "shortId": {
                    "type": "string",
                    "description": "Short Id (8 character) of the deployment.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentSource:getPagesProjectCanonicalDeploymentSource",
                    "description": "Configs for the project source control.\n"
                },
                "stages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentStage:getPagesProjectCanonicalDeploymentStage"
                    },
                    "description": "List of past stages.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The live URL to view this deployment.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the deployment uses functions.\n"
                }
            },
            "type": "object",
            "required": [
                "aliases",
                "buildConfig",
                "createdOn",
                "deploymentTrigger",
                "envVars",
                "environment",
                "id",
                "isSkipped",
                "latestStage",
                "modifiedOn",
                "projectId",
                "projectName",
                "shortId",
                "source",
                "stages",
                "url",
                "usesFunctions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentBuildConfig:getPagesProjectCanonicalDeploymentBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "buildCaching",
                "buildCommand",
                "destinationDir",
                "rootDir",
                "webAnalyticsTag",
                "webAnalyticsToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentDeploymentTrigger:getPagesProjectCanonicalDeploymentDeploymentTrigger": {
            "properties": {
                "metadata": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentDeploymentTriggerMetadata:getPagesProjectCanonicalDeploymentDeploymentTriggerMetadata",
                    "description": "Additional info about the trigger.\n"
                },
                "type": {
                    "type": "string",
                    "description": "What caused the deployment.\nAvailable values: \"github:push\", \"ad*hoc\", \"deploy*hook\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadata",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentDeploymentTriggerMetadata:getPagesProjectCanonicalDeploymentDeploymentTriggerMetadata": {
            "properties": {
                "branch": {
                    "type": "string",
                    "description": "Where the trigger happened.\n"
                },
                "commitDirty": {
                    "type": "boolean",
                    "description": "Whether the deployment trigger commit was dirty.\n"
                },
                "commitHash": {
                    "type": "string",
                    "description": "Hash of the deployment trigger commit.\n"
                },
                "commitMessage": {
                    "type": "string",
                    "description": "Message of the deployment trigger commit.\n"
                }
            },
            "type": "object",
            "required": [
                "branch",
                "commitDirty",
                "commitHash",
                "commitMessage"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentEnvVars:getPagesProjectCanonicalDeploymentEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentLatestStage:getPagesProjectCanonicalDeploymentLatestStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentSource:getPagesProjectCanonicalDeploymentSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeploymentSourceConfig:getPagesProjectCanonicalDeploymentSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentSourceConfig:getPagesProjectCanonicalDeploymentSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "required": [
                "deploymentsEnabled",
                "owner",
                "ownerId",
                "pathExcludes",
                "pathIncludes",
                "prCommentsEnabled",
                "previewBranchExcludes",
                "previewBranchIncludes",
                "previewDeploymentSetting",
                "productionBranch",
                "productionDeploymentsEnabled",
                "repoId",
                "repoName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectCanonicalDeploymentStage:getPagesProjectCanonicalDeploymentStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigs:getPagesProjectDeploymentConfigs": {
            "properties": {
                "preview": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreview:getPagesProjectDeploymentConfigsPreview",
                    "description": "Configs for preview deploys.\n"
                },
                "production": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProduction:getPagesProjectDeploymentConfigsProduction",
                    "description": "Configs for production deploys.\n"
                }
            },
            "type": "object",
            "required": [
                "preview",
                "production"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreview:getPagesProjectDeploymentConfigsPreview": {
            "properties": {
                "aiBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewAiBindings:getPagesProjectDeploymentConfigsPreviewAiBindings"
                    },
                    "description": "Constellation bindings used for Pages Functions.\n"
                },
                "alwaysUseLatestCompatibilityDate": {
                    "type": "boolean",
                    "description": "Whether to always use the latest compatibility date for Pages Functions.\n"
                },
                "analyticsEngineDatasets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets:getPagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets"
                    },
                    "description": "Analytics Engine bindings used for Pages Functions.\n"
                },
                "browsers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewBrowsers:getPagesProjectDeploymentConfigsPreviewBrowsers"
                    },
                    "description": "Browser bindings used for Pages Functions.\n"
                },
                "buildImageMajorVersion": {
                    "type": "integer",
                    "description": "The major version of the build image to use for Pages Functions.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Compatibility date used for Pages Functions.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Compatibility flags used for Pages Functions.\n"
                },
                "d1Databases": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewD1Databases:getPagesProjectDeploymentConfigsPreviewD1Databases"
                    },
                    "description": "D1 databases used for Pages Functions.\n"
                },
                "durableObjectNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewDurableObjectNamespaces:getPagesProjectDeploymentConfigsPreviewDurableObjectNamespaces"
                    },
                    "description": "Durable Object namespaces used for Pages Functions.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewEnvVars:getPagesProjectDeploymentConfigsPreviewEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "failOpen": {
                    "type": "boolean",
                    "description": "Whether to fail open when the deployment config cannot be applied.\n"
                },
                "hyperdriveBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewHyperdriveBindings:getPagesProjectDeploymentConfigsPreviewHyperdriveBindings"
                    },
                    "description": "Hyperdrive bindings used for Pages Functions.\n"
                },
                "kvNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewKvNamespaces:getPagesProjectDeploymentConfigsPreviewKvNamespaces"
                    },
                    "description": "KV namespaces used for Pages Functions.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewLimits:getPagesProjectDeploymentConfigsPreviewLimits",
                    "description": "Limits for Pages Functions.\n"
                },
                "mtlsCertificates": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewMtlsCertificates:getPagesProjectDeploymentConfigsPreviewMtlsCertificates"
                    },
                    "description": "mTLS bindings used for Pages Functions.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewPlacement:getPagesProjectDeploymentConfigsPreviewPlacement",
                    "description": "Placement setting used for Pages Functions.\n"
                },
                "queueProducers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewQueueProducers:getPagesProjectDeploymentConfigsPreviewQueueProducers"
                    },
                    "description": "Queue Producer bindings used for Pages Functions.\n"
                },
                "r2Buckets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewR2Buckets:getPagesProjectDeploymentConfigsPreviewR2Buckets"
                    },
                    "description": "R2 buckets used for Pages Functions.\n"
                },
                "services": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewServices:getPagesProjectDeploymentConfigsPreviewServices"
                    },
                    "description": "Services used for Pages Functions.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "The usage model for Pages Functions.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "All new projects now use the Standard usage model."
                },
                "vectorizeBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsPreviewVectorizeBindings:getPagesProjectDeploymentConfigsPreviewVectorizeBindings"
                    },
                    "description": "Vectorize bindings used for Pages Functions.\n"
                },
                "wranglerConfigHash": {
                    "type": "string",
                    "description": "Hash of the Wrangler configuration used for the deployment.\n"
                }
            },
            "type": "object",
            "required": [
                "aiBindings",
                "alwaysUseLatestCompatibilityDate",
                "analyticsEngineDatasets",
                "browsers",
                "buildImageMajorVersion",
                "compatibilityDate",
                "compatibilityFlags",
                "d1Databases",
                "durableObjectNamespaces",
                "envVars",
                "failOpen",
                "hyperdriveBindings",
                "kvNamespaces",
                "limits",
                "mtlsCertificates",
                "placement",
                "queueProducers",
                "r2Buckets",
                "services",
                "usageModel",
                "vectorizeBindings",
                "wranglerConfigHash"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewAiBindings:getPagesProjectDeploymentConfigsPreviewAiBindings": {
            "properties": {
                "projectId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "projectId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets:getPagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasets": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewBrowsers:getPagesProjectDeploymentConfigsPreviewBrowsers": {
            "type": "object"
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewD1Databases:getPagesProjectDeploymentConfigsPreviewD1Databases": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the D1 database.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewDurableObjectNamespaces:getPagesProjectDeploymentConfigsPreviewDurableObjectNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewEnvVars:getPagesProjectDeploymentConfigsPreviewEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewHyperdriveBindings:getPagesProjectDeploymentConfigsPreviewHyperdriveBindings": {
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewKvNamespaces:getPagesProjectDeploymentConfigsPreviewKvNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the KV namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewLimits:getPagesProjectDeploymentConfigsPreviewLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewMtlsCertificates:getPagesProjectDeploymentConfigsPreviewMtlsCertificates": {
            "properties": {
                "certificateId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewPlacement:getPagesProjectDeploymentConfigsPreviewPlacement": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Placement mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewQueueProducers:getPagesProjectDeploymentConfigsPreviewQueueProducers": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the Queue.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewR2Buckets:getPagesProjectDeploymentConfigsPreviewR2Buckets": {
            "properties": {
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the R2 bucket.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the R2 bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "jurisdiction",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewServices:getPagesProjectDeploymentConfigsPreviewServices": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "The entrypoint to bind to.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The Service environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The Service name.\n"
                }
            },
            "type": "object",
            "required": [
                "entrypoint",
                "environment",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsPreviewVectorizeBindings:getPagesProjectDeploymentConfigsPreviewVectorizeBindings": {
            "properties": {
                "indexName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "indexName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProduction:getPagesProjectDeploymentConfigsProduction": {
            "properties": {
                "aiBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionAiBindings:getPagesProjectDeploymentConfigsProductionAiBindings"
                    },
                    "description": "Constellation bindings used for Pages Functions.\n"
                },
                "alwaysUseLatestCompatibilityDate": {
                    "type": "boolean",
                    "description": "Whether to always use the latest compatibility date for Pages Functions.\n"
                },
                "analyticsEngineDatasets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets:getPagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets"
                    },
                    "description": "Analytics Engine bindings used for Pages Functions.\n"
                },
                "browsers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionBrowsers:getPagesProjectDeploymentConfigsProductionBrowsers"
                    },
                    "description": "Browser bindings used for Pages Functions.\n"
                },
                "buildImageMajorVersion": {
                    "type": "integer",
                    "description": "The major version of the build image to use for Pages Functions.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Compatibility date used for Pages Functions.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Compatibility flags used for Pages Functions.\n"
                },
                "d1Databases": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionD1Databases:getPagesProjectDeploymentConfigsProductionD1Databases"
                    },
                    "description": "D1 databases used for Pages Functions.\n"
                },
                "durableObjectNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionDurableObjectNamespaces:getPagesProjectDeploymentConfigsProductionDurableObjectNamespaces"
                    },
                    "description": "Durable Object namespaces used for Pages Functions.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionEnvVars:getPagesProjectDeploymentConfigsProductionEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "failOpen": {
                    "type": "boolean",
                    "description": "Whether to fail open when the deployment config cannot be applied.\n"
                },
                "hyperdriveBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionHyperdriveBindings:getPagesProjectDeploymentConfigsProductionHyperdriveBindings"
                    },
                    "description": "Hyperdrive bindings used for Pages Functions.\n"
                },
                "kvNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionKvNamespaces:getPagesProjectDeploymentConfigsProductionKvNamespaces"
                    },
                    "description": "KV namespaces used for Pages Functions.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionLimits:getPagesProjectDeploymentConfigsProductionLimits",
                    "description": "Limits for Pages Functions.\n"
                },
                "mtlsCertificates": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionMtlsCertificates:getPagesProjectDeploymentConfigsProductionMtlsCertificates"
                    },
                    "description": "mTLS bindings used for Pages Functions.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionPlacement:getPagesProjectDeploymentConfigsProductionPlacement",
                    "description": "Placement setting used for Pages Functions.\n"
                },
                "queueProducers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionQueueProducers:getPagesProjectDeploymentConfigsProductionQueueProducers"
                    },
                    "description": "Queue Producer bindings used for Pages Functions.\n"
                },
                "r2Buckets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionR2Buckets:getPagesProjectDeploymentConfigsProductionR2Buckets"
                    },
                    "description": "R2 buckets used for Pages Functions.\n"
                },
                "services": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionServices:getPagesProjectDeploymentConfigsProductionServices"
                    },
                    "description": "Services used for Pages Functions.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "The usage model for Pages Functions.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "All new projects now use the Standard usage model."
                },
                "vectorizeBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigsProductionVectorizeBindings:getPagesProjectDeploymentConfigsProductionVectorizeBindings"
                    },
                    "description": "Vectorize bindings used for Pages Functions.\n"
                },
                "wranglerConfigHash": {
                    "type": "string",
                    "description": "Hash of the Wrangler configuration used for the deployment.\n"
                }
            },
            "type": "object",
            "required": [
                "aiBindings",
                "alwaysUseLatestCompatibilityDate",
                "analyticsEngineDatasets",
                "browsers",
                "buildImageMajorVersion",
                "compatibilityDate",
                "compatibilityFlags",
                "d1Databases",
                "durableObjectNamespaces",
                "envVars",
                "failOpen",
                "hyperdriveBindings",
                "kvNamespaces",
                "limits",
                "mtlsCertificates",
                "placement",
                "queueProducers",
                "r2Buckets",
                "services",
                "usageModel",
                "vectorizeBindings",
                "wranglerConfigHash"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionAiBindings:getPagesProjectDeploymentConfigsProductionAiBindings": {
            "properties": {
                "projectId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "projectId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets:getPagesProjectDeploymentConfigsProductionAnalyticsEngineDatasets": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionBrowsers:getPagesProjectDeploymentConfigsProductionBrowsers": {
            "type": "object"
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionD1Databases:getPagesProjectDeploymentConfigsProductionD1Databases": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the D1 database.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionDurableObjectNamespaces:getPagesProjectDeploymentConfigsProductionDurableObjectNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionEnvVars:getPagesProjectDeploymentConfigsProductionEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionHyperdriveBindings:getPagesProjectDeploymentConfigsProductionHyperdriveBindings": {
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionKvNamespaces:getPagesProjectDeploymentConfigsProductionKvNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the KV namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionLimits:getPagesProjectDeploymentConfigsProductionLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionMtlsCertificates:getPagesProjectDeploymentConfigsProductionMtlsCertificates": {
            "properties": {
                "certificateId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionPlacement:getPagesProjectDeploymentConfigsProductionPlacement": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Placement mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionQueueProducers:getPagesProjectDeploymentConfigsProductionQueueProducers": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the Queue.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionR2Buckets:getPagesProjectDeploymentConfigsProductionR2Buckets": {
            "properties": {
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the R2 bucket.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the R2 bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "jurisdiction",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionServices:getPagesProjectDeploymentConfigsProductionServices": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "The entrypoint to bind to.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The Service environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The Service name.\n"
                }
            },
            "type": "object",
            "required": [
                "entrypoint",
                "environment",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectDeploymentConfigsProductionVectorizeBindings:getPagesProjectDeploymentConfigsProductionVectorizeBindings": {
            "properties": {
                "indexName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "indexName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeployment:getPagesProjectLatestDeployment": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of alias URLs pointing to this deployment.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentBuildConfig:getPagesProjectLatestDeploymentBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the deployment was created.\n"
                },
                "deploymentTrigger": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentDeploymentTrigger:getPagesProjectLatestDeploymentDeploymentTrigger",
                    "description": "Info about what caused the deployment.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentEnvVars:getPagesProjectLatestDeploymentEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Type of deploy.\nAvailable values: \"preview\", \"production\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Id of the deployment.\n"
                },
                "isSkipped": {
                    "type": "boolean",
                    "description": "If the deployment has been skipped.\n"
                },
                "latestStage": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentLatestStage:getPagesProjectLatestDeploymentLatestStage",
                    "description": "The status of the deployment.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the deployment was last modified.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Id of the project.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "shortId": {
                    "type": "string",
                    "description": "Short Id (8 character) of the deployment.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentSource:getPagesProjectLatestDeploymentSource",
                    "description": "Configs for the project source control.\n"
                },
                "stages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentStage:getPagesProjectLatestDeploymentStage"
                    },
                    "description": "List of past stages.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The live URL to view this deployment.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the deployment uses functions.\n"
                }
            },
            "type": "object",
            "required": [
                "aliases",
                "buildConfig",
                "createdOn",
                "deploymentTrigger",
                "envVars",
                "environment",
                "id",
                "isSkipped",
                "latestStage",
                "modifiedOn",
                "projectId",
                "projectName",
                "shortId",
                "source",
                "stages",
                "url",
                "usesFunctions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentBuildConfig:getPagesProjectLatestDeploymentBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "buildCaching",
                "buildCommand",
                "destinationDir",
                "rootDir",
                "webAnalyticsTag",
                "webAnalyticsToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentDeploymentTrigger:getPagesProjectLatestDeploymentDeploymentTrigger": {
            "properties": {
                "metadata": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentDeploymentTriggerMetadata:getPagesProjectLatestDeploymentDeploymentTriggerMetadata",
                    "description": "Additional info about the trigger.\n"
                },
                "type": {
                    "type": "string",
                    "description": "What caused the deployment.\nAvailable values: \"github:push\", \"ad*hoc\", \"deploy*hook\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadata",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentDeploymentTriggerMetadata:getPagesProjectLatestDeploymentDeploymentTriggerMetadata": {
            "properties": {
                "branch": {
                    "type": "string",
                    "description": "Where the trigger happened.\n"
                },
                "commitDirty": {
                    "type": "boolean",
                    "description": "Whether the deployment trigger commit was dirty.\n"
                },
                "commitHash": {
                    "type": "string",
                    "description": "Hash of the deployment trigger commit.\n"
                },
                "commitMessage": {
                    "type": "string",
                    "description": "Message of the deployment trigger commit.\n"
                }
            },
            "type": "object",
            "required": [
                "branch",
                "commitDirty",
                "commitHash",
                "commitMessage"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentEnvVars:getPagesProjectLatestDeploymentEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentLatestStage:getPagesProjectLatestDeploymentLatestStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentSource:getPagesProjectLatestDeploymentSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeploymentSourceConfig:getPagesProjectLatestDeploymentSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentSourceConfig:getPagesProjectLatestDeploymentSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "required": [
                "deploymentsEnabled",
                "owner",
                "ownerId",
                "pathExcludes",
                "pathIncludes",
                "prCommentsEnabled",
                "previewBranchExcludes",
                "previewBranchIncludes",
                "previewDeploymentSetting",
                "productionBranch",
                "productionDeploymentsEnabled",
                "repoId",
                "repoName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectLatestDeploymentStage:getPagesProjectLatestDeploymentStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectSource:getPagesProjectSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectSourceConfig:getPagesProjectSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectSourceConfig:getPagesProjectSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "required": [
                "deploymentsEnabled",
                "owner",
                "ownerId",
                "pathExcludes",
                "pathIncludes",
                "prCommentsEnabled",
                "previewBranchExcludes",
                "previewBranchIncludes",
                "previewDeploymentSetting",
                "productionBranch",
                "productionDeploymentsEnabled",
                "repoId",
                "repoName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResult:getPagesProjectsResult": {
            "properties": {
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultBuildConfig:getPagesProjectsResultBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "canonicalDeployment": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeployment:getPagesProjectsResultCanonicalDeployment",
                    "description": "Most recent production deployment of the project.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the project was created.\n"
                },
                "deploymentConfigs": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigs:getPagesProjectsResultDeploymentConfigs",
                    "description": "Configs for deployments in a project.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of associated custom domains for the project.\n"
                },
                "framework": {
                    "type": "string",
                    "description": "Framework the project is using.\n"
                },
                "frameworkVersion": {
                    "type": "string",
                    "description": "Version of the framework the project is using.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the project.\n"
                },
                "latestDeployment": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeployment:getPagesProjectsResultLatestDeployment",
                    "description": "Most recent deployment of the project.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "previewScriptName": {
                    "type": "string",
                    "description": "Name of the preview script.\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "Production branch of the project. Used to identify production deployments.\n"
                },
                "productionScriptName": {
                    "type": "string",
                    "description": "Name of the production script.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultSource:getPagesProjectsResultSource",
                    "description": "Configs for the project source control.\n"
                },
                "subdomain": {
                    "type": "string",
                    "description": "The Cloudflare subdomain associated with the project.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the project uses functions.\n"
                }
            },
            "type": "object",
            "required": [
                "buildConfig",
                "canonicalDeployment",
                "createdOn",
                "deploymentConfigs",
                "domains",
                "framework",
                "frameworkVersion",
                "id",
                "latestDeployment",
                "name",
                "previewScriptName",
                "productionBranch",
                "productionScriptName",
                "source",
                "subdomain",
                "usesFunctions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultBuildConfig:getPagesProjectsResultBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "buildCaching",
                "buildCommand",
                "destinationDir",
                "rootDir",
                "webAnalyticsTag",
                "webAnalyticsToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeployment:getPagesProjectsResultCanonicalDeployment": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of alias URLs pointing to this deployment.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentBuildConfig:getPagesProjectsResultCanonicalDeploymentBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the deployment was created.\n"
                },
                "deploymentTrigger": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentDeploymentTrigger:getPagesProjectsResultCanonicalDeploymentDeploymentTrigger",
                    "description": "Info about what caused the deployment.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentEnvVars:getPagesProjectsResultCanonicalDeploymentEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Type of deploy.\nAvailable values: \"preview\", \"production\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Id of the deployment.\n"
                },
                "isSkipped": {
                    "type": "boolean",
                    "description": "If the deployment has been skipped.\n"
                },
                "latestStage": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentLatestStage:getPagesProjectsResultCanonicalDeploymentLatestStage",
                    "description": "The status of the deployment.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the deployment was last modified.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Id of the project.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "shortId": {
                    "type": "string",
                    "description": "Short Id (8 character) of the deployment.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentSource:getPagesProjectsResultCanonicalDeploymentSource",
                    "description": "Configs for the project source control.\n"
                },
                "stages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentStage:getPagesProjectsResultCanonicalDeploymentStage"
                    },
                    "description": "List of past stages.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The live URL to view this deployment.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the deployment uses functions.\n"
                }
            },
            "type": "object",
            "required": [
                "aliases",
                "buildConfig",
                "createdOn",
                "deploymentTrigger",
                "envVars",
                "environment",
                "id",
                "isSkipped",
                "latestStage",
                "modifiedOn",
                "projectId",
                "projectName",
                "shortId",
                "source",
                "stages",
                "url",
                "usesFunctions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentBuildConfig:getPagesProjectsResultCanonicalDeploymentBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "buildCaching",
                "buildCommand",
                "destinationDir",
                "rootDir",
                "webAnalyticsTag",
                "webAnalyticsToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentDeploymentTrigger:getPagesProjectsResultCanonicalDeploymentDeploymentTrigger": {
            "properties": {
                "metadata": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentDeploymentTriggerMetadata:getPagesProjectsResultCanonicalDeploymentDeploymentTriggerMetadata",
                    "description": "Additional info about the trigger.\n"
                },
                "type": {
                    "type": "string",
                    "description": "What caused the deployment.\nAvailable values: \"github:push\", \"ad*hoc\", \"deploy*hook\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadata",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentDeploymentTriggerMetadata:getPagesProjectsResultCanonicalDeploymentDeploymentTriggerMetadata": {
            "properties": {
                "branch": {
                    "type": "string",
                    "description": "Where the trigger happened.\n"
                },
                "commitDirty": {
                    "type": "boolean",
                    "description": "Whether the deployment trigger commit was dirty.\n"
                },
                "commitHash": {
                    "type": "string",
                    "description": "Hash of the deployment trigger commit.\n"
                },
                "commitMessage": {
                    "type": "string",
                    "description": "Message of the deployment trigger commit.\n"
                }
            },
            "type": "object",
            "required": [
                "branch",
                "commitDirty",
                "commitHash",
                "commitMessage"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentEnvVars:getPagesProjectsResultCanonicalDeploymentEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentLatestStage:getPagesProjectsResultCanonicalDeploymentLatestStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentSource:getPagesProjectsResultCanonicalDeploymentSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultCanonicalDeploymentSourceConfig:getPagesProjectsResultCanonicalDeploymentSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentSourceConfig:getPagesProjectsResultCanonicalDeploymentSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "required": [
                "deploymentsEnabled",
                "owner",
                "ownerId",
                "pathExcludes",
                "pathIncludes",
                "prCommentsEnabled",
                "previewBranchExcludes",
                "previewBranchIncludes",
                "previewDeploymentSetting",
                "productionBranch",
                "productionDeploymentsEnabled",
                "repoId",
                "repoName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultCanonicalDeploymentStage:getPagesProjectsResultCanonicalDeploymentStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigs:getPagesProjectsResultDeploymentConfigs": {
            "properties": {
                "preview": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreview:getPagesProjectsResultDeploymentConfigsPreview",
                    "description": "Configs for preview deploys.\n"
                },
                "production": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProduction:getPagesProjectsResultDeploymentConfigsProduction",
                    "description": "Configs for production deploys.\n"
                }
            },
            "type": "object",
            "required": [
                "preview",
                "production"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreview:getPagesProjectsResultDeploymentConfigsPreview": {
            "properties": {
                "aiBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewAiBindings:getPagesProjectsResultDeploymentConfigsPreviewAiBindings"
                    },
                    "description": "Constellation bindings used for Pages Functions.\n"
                },
                "alwaysUseLatestCompatibilityDate": {
                    "type": "boolean",
                    "description": "Whether to always use the latest compatibility date for Pages Functions.\n"
                },
                "analyticsEngineDatasets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewAnalyticsEngineDatasets:getPagesProjectsResultDeploymentConfigsPreviewAnalyticsEngineDatasets"
                    },
                    "description": "Analytics Engine bindings used for Pages Functions.\n"
                },
                "browsers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewBrowsers:getPagesProjectsResultDeploymentConfigsPreviewBrowsers"
                    },
                    "description": "Browser bindings used for Pages Functions.\n"
                },
                "buildImageMajorVersion": {
                    "type": "integer",
                    "description": "The major version of the build image to use for Pages Functions.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Compatibility date used for Pages Functions.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Compatibility flags used for Pages Functions.\n"
                },
                "d1Databases": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewD1Databases:getPagesProjectsResultDeploymentConfigsPreviewD1Databases"
                    },
                    "description": "D1 databases used for Pages Functions.\n"
                },
                "durableObjectNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewDurableObjectNamespaces:getPagesProjectsResultDeploymentConfigsPreviewDurableObjectNamespaces"
                    },
                    "description": "Durable Object namespaces used for Pages Functions.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewEnvVars:getPagesProjectsResultDeploymentConfigsPreviewEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "failOpen": {
                    "type": "boolean",
                    "description": "Whether to fail open when the deployment config cannot be applied.\n"
                },
                "hyperdriveBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewHyperdriveBindings:getPagesProjectsResultDeploymentConfigsPreviewHyperdriveBindings"
                    },
                    "description": "Hyperdrive bindings used for Pages Functions.\n"
                },
                "kvNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewKvNamespaces:getPagesProjectsResultDeploymentConfigsPreviewKvNamespaces"
                    },
                    "description": "KV namespaces used for Pages Functions.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewLimits:getPagesProjectsResultDeploymentConfigsPreviewLimits",
                    "description": "Limits for Pages Functions.\n"
                },
                "mtlsCertificates": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewMtlsCertificates:getPagesProjectsResultDeploymentConfigsPreviewMtlsCertificates"
                    },
                    "description": "mTLS bindings used for Pages Functions.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewPlacement:getPagesProjectsResultDeploymentConfigsPreviewPlacement",
                    "description": "Placement setting used for Pages Functions.\n"
                },
                "queueProducers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewQueueProducers:getPagesProjectsResultDeploymentConfigsPreviewQueueProducers"
                    },
                    "description": "Queue Producer bindings used for Pages Functions.\n"
                },
                "r2Buckets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewR2Buckets:getPagesProjectsResultDeploymentConfigsPreviewR2Buckets"
                    },
                    "description": "R2 buckets used for Pages Functions.\n"
                },
                "services": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewServices:getPagesProjectsResultDeploymentConfigsPreviewServices"
                    },
                    "description": "Services used for Pages Functions.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "The usage model for Pages Functions.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "All new projects now use the Standard usage model."
                },
                "vectorizeBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewVectorizeBindings:getPagesProjectsResultDeploymentConfigsPreviewVectorizeBindings"
                    },
                    "description": "Vectorize bindings used for Pages Functions.\n"
                },
                "wranglerConfigHash": {
                    "type": "string",
                    "description": "Hash of the Wrangler configuration used for the deployment.\n"
                }
            },
            "type": "object",
            "required": [
                "aiBindings",
                "alwaysUseLatestCompatibilityDate",
                "analyticsEngineDatasets",
                "browsers",
                "buildImageMajorVersion",
                "compatibilityDate",
                "compatibilityFlags",
                "d1Databases",
                "durableObjectNamespaces",
                "envVars",
                "failOpen",
                "hyperdriveBindings",
                "kvNamespaces",
                "limits",
                "mtlsCertificates",
                "placement",
                "queueProducers",
                "r2Buckets",
                "services",
                "usageModel",
                "vectorizeBindings",
                "wranglerConfigHash"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewAiBindings:getPagesProjectsResultDeploymentConfigsPreviewAiBindings": {
            "properties": {
                "projectId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "projectId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewAnalyticsEngineDatasets:getPagesProjectsResultDeploymentConfigsPreviewAnalyticsEngineDatasets": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewBrowsers:getPagesProjectsResultDeploymentConfigsPreviewBrowsers": {
            "type": "object"
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewD1Databases:getPagesProjectsResultDeploymentConfigsPreviewD1Databases": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the D1 database.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewDurableObjectNamespaces:getPagesProjectsResultDeploymentConfigsPreviewDurableObjectNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewEnvVars:getPagesProjectsResultDeploymentConfigsPreviewEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewHyperdriveBindings:getPagesProjectsResultDeploymentConfigsPreviewHyperdriveBindings": {
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewKvNamespaces:getPagesProjectsResultDeploymentConfigsPreviewKvNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the KV namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewLimits:getPagesProjectsResultDeploymentConfigsPreviewLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewMtlsCertificates:getPagesProjectsResultDeploymentConfigsPreviewMtlsCertificates": {
            "properties": {
                "certificateId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewPlacement:getPagesProjectsResultDeploymentConfigsPreviewPlacement": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Placement mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewQueueProducers:getPagesProjectsResultDeploymentConfigsPreviewQueueProducers": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the Queue.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewR2Buckets:getPagesProjectsResultDeploymentConfigsPreviewR2Buckets": {
            "properties": {
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the R2 bucket.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the R2 bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "jurisdiction",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewServices:getPagesProjectsResultDeploymentConfigsPreviewServices": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "The entrypoint to bind to.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The Service environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The Service name.\n"
                }
            },
            "type": "object",
            "required": [
                "entrypoint",
                "environment",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsPreviewVectorizeBindings:getPagesProjectsResultDeploymentConfigsPreviewVectorizeBindings": {
            "properties": {
                "indexName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "indexName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProduction:getPagesProjectsResultDeploymentConfigsProduction": {
            "properties": {
                "aiBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionAiBindings:getPagesProjectsResultDeploymentConfigsProductionAiBindings"
                    },
                    "description": "Constellation bindings used for Pages Functions.\n"
                },
                "alwaysUseLatestCompatibilityDate": {
                    "type": "boolean",
                    "description": "Whether to always use the latest compatibility date for Pages Functions.\n"
                },
                "analyticsEngineDatasets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionAnalyticsEngineDatasets:getPagesProjectsResultDeploymentConfigsProductionAnalyticsEngineDatasets"
                    },
                    "description": "Analytics Engine bindings used for Pages Functions.\n"
                },
                "browsers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionBrowsers:getPagesProjectsResultDeploymentConfigsProductionBrowsers"
                    },
                    "description": "Browser bindings used for Pages Functions.\n"
                },
                "buildImageMajorVersion": {
                    "type": "integer",
                    "description": "The major version of the build image to use for Pages Functions.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Compatibility date used for Pages Functions.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Compatibility flags used for Pages Functions.\n"
                },
                "d1Databases": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionD1Databases:getPagesProjectsResultDeploymentConfigsProductionD1Databases"
                    },
                    "description": "D1 databases used for Pages Functions.\n"
                },
                "durableObjectNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionDurableObjectNamespaces:getPagesProjectsResultDeploymentConfigsProductionDurableObjectNamespaces"
                    },
                    "description": "Durable Object namespaces used for Pages Functions.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionEnvVars:getPagesProjectsResultDeploymentConfigsProductionEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "failOpen": {
                    "type": "boolean",
                    "description": "Whether to fail open when the deployment config cannot be applied.\n"
                },
                "hyperdriveBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionHyperdriveBindings:getPagesProjectsResultDeploymentConfigsProductionHyperdriveBindings"
                    },
                    "description": "Hyperdrive bindings used for Pages Functions.\n"
                },
                "kvNamespaces": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionKvNamespaces:getPagesProjectsResultDeploymentConfigsProductionKvNamespaces"
                    },
                    "description": "KV namespaces used for Pages Functions.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionLimits:getPagesProjectsResultDeploymentConfigsProductionLimits",
                    "description": "Limits for Pages Functions.\n"
                },
                "mtlsCertificates": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionMtlsCertificates:getPagesProjectsResultDeploymentConfigsProductionMtlsCertificates"
                    },
                    "description": "mTLS bindings used for Pages Functions.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionPlacement:getPagesProjectsResultDeploymentConfigsProductionPlacement",
                    "description": "Placement setting used for Pages Functions.\n"
                },
                "queueProducers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionQueueProducers:getPagesProjectsResultDeploymentConfigsProductionQueueProducers"
                    },
                    "description": "Queue Producer bindings used for Pages Functions.\n"
                },
                "r2Buckets": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionR2Buckets:getPagesProjectsResultDeploymentConfigsProductionR2Buckets"
                    },
                    "description": "R2 buckets used for Pages Functions.\n"
                },
                "services": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionServices:getPagesProjectsResultDeploymentConfigsProductionServices"
                    },
                    "description": "Services used for Pages Functions.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "The usage model for Pages Functions.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "All new projects now use the Standard usage model."
                },
                "vectorizeBindings": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionVectorizeBindings:getPagesProjectsResultDeploymentConfigsProductionVectorizeBindings"
                    },
                    "description": "Vectorize bindings used for Pages Functions.\n"
                },
                "wranglerConfigHash": {
                    "type": "string",
                    "description": "Hash of the Wrangler configuration used for the deployment.\n"
                }
            },
            "type": "object",
            "required": [
                "aiBindings",
                "alwaysUseLatestCompatibilityDate",
                "analyticsEngineDatasets",
                "browsers",
                "buildImageMajorVersion",
                "compatibilityDate",
                "compatibilityFlags",
                "d1Databases",
                "durableObjectNamespaces",
                "envVars",
                "failOpen",
                "hyperdriveBindings",
                "kvNamespaces",
                "limits",
                "mtlsCertificates",
                "placement",
                "queueProducers",
                "r2Buckets",
                "services",
                "usageModel",
                "vectorizeBindings",
                "wranglerConfigHash"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionAiBindings:getPagesProjectsResultDeploymentConfigsProductionAiBindings": {
            "properties": {
                "projectId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "projectId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionAnalyticsEngineDatasets:getPagesProjectsResultDeploymentConfigsProductionAnalyticsEngineDatasets": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset.\n"
                }
            },
            "type": "object",
            "required": [
                "dataset"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionBrowsers:getPagesProjectsResultDeploymentConfigsProductionBrowsers": {
            "type": "object"
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionD1Databases:getPagesProjectsResultDeploymentConfigsProductionD1Databases": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the D1 database.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionDurableObjectNamespaces:getPagesProjectsResultDeploymentConfigsProductionDurableObjectNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionEnvVars:getPagesProjectsResultDeploymentConfigsProductionEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionHyperdriveBindings:getPagesProjectsResultDeploymentConfigsProductionHyperdriveBindings": {
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionKvNamespaces:getPagesProjectsResultDeploymentConfigsProductionKvNamespaces": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the KV namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionLimits:getPagesProjectsResultDeploymentConfigsProductionLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionMtlsCertificates:getPagesProjectsResultDeploymentConfigsProductionMtlsCertificates": {
            "properties": {
                "certificateId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "certificateId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionPlacement:getPagesProjectsResultDeploymentConfigsProductionPlacement": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Placement mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionQueueProducers:getPagesProjectsResultDeploymentConfigsProductionQueueProducers": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the Queue.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionR2Buckets:getPagesProjectsResultDeploymentConfigsProductionR2Buckets": {
            "properties": {
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the R2 bucket.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the R2 bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "jurisdiction",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionServices:getPagesProjectsResultDeploymentConfigsProductionServices": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "The entrypoint to bind to.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The Service environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The Service name.\n"
                }
            },
            "type": "object",
            "required": [
                "entrypoint",
                "environment",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultDeploymentConfigsProductionVectorizeBindings:getPagesProjectsResultDeploymentConfigsProductionVectorizeBindings": {
            "properties": {
                "indexName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "indexName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeployment:getPagesProjectsResultLatestDeployment": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of alias URLs pointing to this deployment.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentBuildConfig:getPagesProjectsResultLatestDeploymentBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the deployment was created.\n"
                },
                "deploymentTrigger": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentDeploymentTrigger:getPagesProjectsResultLatestDeploymentDeploymentTrigger",
                    "description": "Info about what caused the deployment.\n"
                },
                "envVars": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentEnvVars:getPagesProjectsResultLatestDeploymentEnvVars"
                    },
                    "description": "Environment variables used for builds and Pages Functions.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Type of deploy.\nAvailable values: \"preview\", \"production\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Id of the deployment.\n"
                },
                "isSkipped": {
                    "type": "boolean",
                    "description": "If the deployment has been skipped.\n"
                },
                "latestStage": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentLatestStage:getPagesProjectsResultLatestDeploymentLatestStage",
                    "description": "The status of the deployment.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the deployment was last modified.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Id of the project.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "shortId": {
                    "type": "string",
                    "description": "Short Id (8 character) of the deployment.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentSource:getPagesProjectsResultLatestDeploymentSource",
                    "description": "Configs for the project source control.\n"
                },
                "stages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentStage:getPagesProjectsResultLatestDeploymentStage"
                    },
                    "description": "List of past stages.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The live URL to view this deployment.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the deployment uses functions.\n"
                }
            },
            "type": "object",
            "required": [
                "aliases",
                "buildConfig",
                "createdOn",
                "deploymentTrigger",
                "envVars",
                "environment",
                "id",
                "isSkipped",
                "latestStage",
                "modifiedOn",
                "projectId",
                "projectName",
                "shortId",
                "source",
                "stages",
                "url",
                "usesFunctions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentBuildConfig:getPagesProjectsResultLatestDeploymentBuildConfig": {
            "properties": {
                "buildCaching": {
                    "type": "boolean",
                    "description": "Enable build caching for the project.\n"
                },
                "buildCommand": {
                    "type": "string",
                    "description": "Command used to build project.\n"
                },
                "destinationDir": {
                    "type": "string",
                    "description": "Assets output directory of the build.\n"
                },
                "rootDir": {
                    "type": "string",
                    "description": "Directory to run the command.\n"
                },
                "webAnalyticsTag": {
                    "type": "string",
                    "description": "The classifying tag for analytics.\n"
                },
                "webAnalyticsToken": {
                    "type": "string",
                    "description": "The auth token for analytics.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "buildCaching",
                "buildCommand",
                "destinationDir",
                "rootDir",
                "webAnalyticsTag",
                "webAnalyticsToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentDeploymentTrigger:getPagesProjectsResultLatestDeploymentDeploymentTrigger": {
            "properties": {
                "metadata": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentDeploymentTriggerMetadata:getPagesProjectsResultLatestDeploymentDeploymentTriggerMetadata",
                    "description": "Additional info about the trigger.\n"
                },
                "type": {
                    "type": "string",
                    "description": "What caused the deployment.\nAvailable values: \"github:push\", \"ad*hoc\", \"deploy*hook\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadata",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentDeploymentTriggerMetadata:getPagesProjectsResultLatestDeploymentDeploymentTriggerMetadata": {
            "properties": {
                "branch": {
                    "type": "string",
                    "description": "Where the trigger happened.\n"
                },
                "commitDirty": {
                    "type": "boolean",
                    "description": "Whether the deployment trigger commit was dirty.\n"
                },
                "commitHash": {
                    "type": "string",
                    "description": "Hash of the deployment trigger commit.\n"
                },
                "commitMessage": {
                    "type": "string",
                    "description": "Message of the deployment trigger commit.\n"
                }
            },
            "type": "object",
            "required": [
                "branch",
                "commitDirty",
                "commitHash",
                "commitMessage"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentEnvVars:getPagesProjectsResultLatestDeploymentEnvVars": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"plain*text\", \"secret*text\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "Environment variable value.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentLatestStage:getPagesProjectsResultLatestDeploymentLatestStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentSource:getPagesProjectsResultLatestDeploymentSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultLatestDeploymentSourceConfig:getPagesProjectsResultLatestDeploymentSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentSourceConfig:getPagesProjectsResultLatestDeploymentSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "required": [
                "deploymentsEnabled",
                "owner",
                "ownerId",
                "pathExcludes",
                "pathIncludes",
                "prCommentsEnabled",
                "previewBranchExcludes",
                "previewBranchIncludes",
                "previewDeploymentSetting",
                "productionBranch",
                "productionDeploymentsEnabled",
                "repoId",
                "repoName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultLatestDeploymentStage:getPagesProjectsResultLatestDeploymentStage": {
            "properties": {
                "endedOn": {
                    "type": "string",
                    "description": "When the stage ended.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The current build stage.\nAvailable values: \"queued\", \"initialize\", \u003cspan pulumi-lang-nodejs=\"\"cloneRepo\"\" pulumi-lang-dotnet=\"\"CloneRepo\"\" pulumi-lang-go=\"\"cloneRepo\"\" pulumi-lang-python=\"\"clone_repo\"\" pulumi-lang-yaml=\"\"cloneRepo\"\" pulumi-lang-java=\"\"cloneRepo\"\"\u003e\"cloneRepo\"\u003c/span\u003e, \"build\", \"deploy\".\n"
                },
                "startedOn": {
                    "type": "string",
                    "description": "When the stage started.\n"
                },
                "status": {
                    "type": "string",
                    "description": "State of the current stage.\nAvailable values: \"success\", \"idle\", \"active\", \"failure\", \"canceled\".\n"
                }
            },
            "type": "object",
            "required": [
                "endedOn",
                "name",
                "startedOn",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultSource:getPagesProjectsResultSource": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPagesProjectsResultSourceConfig:getPagesProjectsResultSourceConfig"
                },
                "type": {
                    "type": "string",
                    "description": "The source control management provider.\nAvailable values: \"github\", \"gitlab\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPagesProjectsResultSourceConfig:getPagesProjectsResultSourceConfig": {
            "properties": {
                "deploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`productionDeploymentsEnabled`\" pulumi-lang-dotnet=\"`ProductionDeploymentsEnabled`\" pulumi-lang-go=\"`productionDeploymentsEnabled`\" pulumi-lang-python=\"`production_deployments_enabled`\" pulumi-lang-yaml=\"`productionDeploymentsEnabled`\" pulumi-lang-java=\"`productionDeploymentsEnabled`\"\u003e`productionDeploymentsEnabled`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e for more granular control."
                },
                "owner": {
                    "type": "string",
                    "description": "The owner of the repository.\n"
                },
                "ownerId": {
                    "type": "string",
                    "description": "The owner ID of the repository.\n"
                },
                "pathExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "pathIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported.\n"
                },
                "prCommentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to enable PR comments.\n"
                },
                "previewBranchExcludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewBranchIncludes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with \u003cspan pulumi-lang-nodejs=\"`previewDeploymentSetting`\" pulumi-lang-dotnet=\"`PreviewDeploymentSetting`\" pulumi-lang-go=\"`previewDeploymentSetting`\" pulumi-lang-python=\"`preview_deployment_setting`\" pulumi-lang-yaml=\"`previewDeploymentSetting`\" pulumi-lang-java=\"`previewDeploymentSetting`\"\u003e`previewDeploymentSetting`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "previewDeploymentSetting": {
                    "type": "string",
                    "description": "Controls whether commits to preview branches trigger a preview deployment.\nAvailable values: \"all\", \"none\", \"custom\".\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "The production branch of the repository.\n"
                },
                "productionDeploymentsEnabled": {
                    "type": "boolean",
                    "description": "Whether to trigger a production deployment on commits to the production branch.\n"
                },
                "repoId": {
                    "type": "string",
                    "description": "The ID of the repository.\n"
                },
                "repoName": {
                    "type": "string",
                    "description": "The name of the repository.\n"
                }
            },
            "type": "object",
            "required": [
                "deploymentsEnabled",
                "owner",
                "ownerId",
                "pathExcludes",
                "pathIncludes",
                "prCommentsEnabled",
                "previewBranchExcludes",
                "previewBranchIncludes",
                "previewDeploymentSetting",
                "productionBranch",
                "productionDeploymentsEnabled",
                "repoId",
                "repoName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkConfig:getPipelineSinkConfig": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare Account ID for the bucket\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "R2 Bucket to write to\n"
                },
                "fileNaming": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinkConfigFileNaming:getPipelineSinkConfigFileNaming",
                    "description": "Controls filename prefix/suffix and strategy.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction this bucket is hosted in\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "Table namespace\n"
                },
                "partitioning": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinkConfigPartitioning:getPipelineSinkConfigPartitioning",
                    "description": "Data-layout partitioning for sinks.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Subpath within the bucket to write to\n"
                },
                "rollingPolicy": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinkConfigRollingPolicy:getPipelineSinkConfigRollingPolicy",
                    "description": "Rolling policy for file sinks (when \u0026 why to close a file and open a new one).\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "Table name\n"
                }
            },
            "type": "object",
            "required": [
                "accountId",
                "bucket",
                "fileNaming",
                "jurisdiction",
                "namespace",
                "partitioning",
                "path",
                "rollingPolicy",
                "tableName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkConfigFileNaming:getPipelineSinkConfigFileNaming": {
            "properties": {
                "prefix": {
                    "type": "string",
                    "description": "The prefix to use in file name. i.e prefix-\\n\\n.parquet\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "Filename generation strategy.\nAvailable values: \"serial\", \"uuid\", \u003cspan pulumi-lang-nodejs=\"\"uuidV7\"\" pulumi-lang-dotnet=\"\"UuidV7\"\" pulumi-lang-go=\"\"uuidV7\"\" pulumi-lang-python=\"\"uuid_v7\"\" pulumi-lang-yaml=\"\"uuidV7\"\" pulumi-lang-java=\"\"uuidV7\"\"\u003e\"uuidV7\"\u003c/span\u003e, \"ulid\".\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "This will overwrite the default file suffix. i.e .parquet, use with caution\n"
                }
            },
            "type": "object",
            "required": [
                "prefix",
                "strategy",
                "suffix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkConfigPartitioning:getPipelineSinkConfigPartitioning": {
            "properties": {
                "timePattern": {
                    "type": "string",
                    "description": "The pattern of the date string\n"
                }
            },
            "type": "object",
            "required": [
                "timePattern"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkConfigRollingPolicy:getPipelineSinkConfigRollingPolicy": {
            "properties": {
                "fileSizeBytes": {
                    "type": "integer",
                    "description": "Files will be rolled after reaching this number of bytes\n"
                },
                "inactivitySeconds": {
                    "type": "integer",
                    "description": "Number of seconds of inactivity to wait before rolling over to a new file\n"
                },
                "intervalSeconds": {
                    "type": "integer",
                    "description": "Number of seconds to wait before rolling over to a new file\n"
                }
            },
            "type": "object",
            "required": [
                "fileSizeBytes",
                "inactivitySeconds",
                "intervalSeconds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkFilter:getPipelineSinkFilter": {
            "properties": {
                "pipelineId": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getPipelineSinkFormat:getPipelineSinkFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkSchema:getPipelineSinkSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinkSchemaField:getPipelineSinkSchemaField"
                    }
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinkSchemaFormat:getPipelineSinkSchemaFormat"
                },
                "inferred": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "fields",
                "format",
                "inferred"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkSchemaField:getPipelineSinkSchemaField": {
            "properties": {
                "metadataKey": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "required": {
                    "type": "boolean"
                },
                "sqlName": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"int32\", \"int64\", \"float32\", \"float64\", \"bool\", \"string\", \"binary\", \"timestamp\", \"json\".\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Available values: \"second\", \"millisecond\", \"microsecond\", \"nanosecond\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadataKey",
                "name",
                "required",
                "sqlName",
                "type",
                "unit"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinkSchemaFormat:getPipelineSinkSchemaFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResult:getPipelineSinksResult": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultConfig:getPipelineSinksResultConfig",
                    "description": "Defines the configuration of the R2 Sink.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultFormat:getPipelineSinksResultFormat"
                },
                "id": {
                    "type": "string",
                    "description": "Indicates a unique identifier for this sink.\n"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Defines the name of the Sink.\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultSchema:getPipelineSinksResultSchema"
                },
                "type": {
                    "type": "string",
                    "description": "Specifies the type of sink.\nAvailable values: \"r2\", \"r2*data*catalog\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "createdAt",
                "format",
                "id",
                "modifiedAt",
                "name",
                "schema",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultConfig:getPipelineSinksResultConfig": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare Account ID for the bucket\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "R2 Bucket to write to\n"
                },
                "fileNaming": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultConfigFileNaming:getPipelineSinksResultConfigFileNaming",
                    "description": "Controls filename prefix/suffix and strategy.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction this bucket is hosted in\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "Table namespace\n"
                },
                "partitioning": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultConfigPartitioning:getPipelineSinksResultConfigPartitioning",
                    "description": "Data-layout partitioning for sinks.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Subpath within the bucket to write to\n"
                },
                "rollingPolicy": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultConfigRollingPolicy:getPipelineSinksResultConfigRollingPolicy",
                    "description": "Rolling policy for file sinks (when \u0026 why to close a file and open a new one).\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "Table name\n"
                }
            },
            "type": "object",
            "required": [
                "accountId",
                "bucket",
                "fileNaming",
                "jurisdiction",
                "namespace",
                "partitioning",
                "path",
                "rollingPolicy",
                "tableName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultConfigFileNaming:getPipelineSinksResultConfigFileNaming": {
            "properties": {
                "prefix": {
                    "type": "string",
                    "description": "The prefix to use in file name. i.e prefix-\\n\\n.parquet\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "Filename generation strategy.\nAvailable values: \"serial\", \"uuid\", \u003cspan pulumi-lang-nodejs=\"\"uuidV7\"\" pulumi-lang-dotnet=\"\"UuidV7\"\" pulumi-lang-go=\"\"uuidV7\"\" pulumi-lang-python=\"\"uuid_v7\"\" pulumi-lang-yaml=\"\"uuidV7\"\" pulumi-lang-java=\"\"uuidV7\"\"\u003e\"uuidV7\"\u003c/span\u003e, \"ulid\".\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "This will overwrite the default file suffix. i.e .parquet, use with caution\n"
                }
            },
            "type": "object",
            "required": [
                "prefix",
                "strategy",
                "suffix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultConfigPartitioning:getPipelineSinksResultConfigPartitioning": {
            "properties": {
                "timePattern": {
                    "type": "string",
                    "description": "The pattern of the date string\n"
                }
            },
            "type": "object",
            "required": [
                "timePattern"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultConfigRollingPolicy:getPipelineSinksResultConfigRollingPolicy": {
            "properties": {
                "fileSizeBytes": {
                    "type": "integer",
                    "description": "Files will be rolled after reaching this number of bytes\n"
                },
                "inactivitySeconds": {
                    "type": "integer",
                    "description": "Number of seconds of inactivity to wait before rolling over to a new file\n"
                },
                "intervalSeconds": {
                    "type": "integer",
                    "description": "Number of seconds to wait before rolling over to a new file\n"
                }
            },
            "type": "object",
            "required": [
                "fileSizeBytes",
                "inactivitySeconds",
                "intervalSeconds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultFormat:getPipelineSinksResultFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultSchema:getPipelineSinksResultSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinksResultSchemaField:getPipelineSinksResultSchemaField"
                    }
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/getPipelineSinksResultSchemaFormat:getPipelineSinksResultSchemaFormat"
                },
                "inferred": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "fields",
                "format",
                "inferred"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultSchemaField:getPipelineSinksResultSchemaField": {
            "properties": {
                "metadataKey": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "required": {
                    "type": "boolean"
                },
                "sqlName": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"int32\", \"int64\", \"float32\", \"float64\", \"bool\", \"string\", \"binary\", \"timestamp\", \"json\".\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Available values: \"second\", \"millisecond\", \"microsecond\", \"nanosecond\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadataKey",
                "name",
                "required",
                "sqlName",
                "type",
                "unit"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineSinksResultSchemaFormat:getPipelineSinksResultSchemaFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamFilter:getPipelineStreamFilter": {
            "properties": {
                "pipelineId": {
                    "type": "string",
                    "description": "Specifies the public ID of the pipeline.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getPipelineStreamFormat:getPipelineStreamFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamHttp:getPipelineStreamHttp": {
            "properties": {
                "authentication": {
                    "type": "boolean",
                    "description": "Indicates that authentication is required for the HTTP endpoint.\n"
                },
                "cors": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamHttpCors:getPipelineStreamHttpCors",
                    "description": "Specifies the CORS options for the HTTP endpoint.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates that the HTTP endpoint is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "authentication",
                "cors",
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamHttpCors:getPipelineStreamHttpCors": {
            "properties": {
                "origins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "origins"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamSchema:getPipelineStreamSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamSchemaField:getPipelineStreamSchemaField"
                    }
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamSchemaFormat:getPipelineStreamSchemaFormat"
                },
                "inferred": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "fields",
                "format",
                "inferred"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamSchemaField:getPipelineStreamSchemaField": {
            "properties": {
                "metadataKey": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "required": {
                    "type": "boolean"
                },
                "sqlName": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"int32\", \"int64\", \"float32\", \"float64\", \"bool\", \"string\", \"binary\", \"timestamp\", \"json\".\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Available values: \"second\", \"millisecond\", \"microsecond\", \"nanosecond\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadataKey",
                "name",
                "required",
                "sqlName",
                "type",
                "unit"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamSchemaFormat:getPipelineStreamSchemaFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamWorkerBinding:getPipelineStreamWorkerBinding": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates that the worker binding is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResult:getPipelineStreamsResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "endpoint": {
                    "type": "string",
                    "description": "Indicates the endpoint URL of this stream.\n"
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamsResultFormat:getPipelineStreamsResultFormat"
                },
                "http": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamsResultHttp:getPipelineStreamsResultHttp"
                },
                "id": {
                    "type": "string",
                    "description": "Indicates a unique identifier for this stream.\n"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Indicates the name of the Stream.\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamsResultSchema:getPipelineStreamsResultSchema"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicates the current version of this stream.\n"
                },
                "workerBinding": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamsResultWorkerBinding:getPipelineStreamsResultWorkerBinding"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "endpoint",
                "format",
                "http",
                "id",
                "modifiedAt",
                "name",
                "schema",
                "version",
                "workerBinding"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultFormat:getPipelineStreamsResultFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultHttp:getPipelineStreamsResultHttp": {
            "properties": {
                "authentication": {
                    "type": "boolean",
                    "description": "Indicates that authentication is required for the HTTP endpoint.\n"
                },
                "cors": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamsResultHttpCors:getPipelineStreamsResultHttpCors",
                    "description": "Specifies the CORS options for the HTTP endpoint.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates that the HTTP endpoint is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "authentication",
                "cors",
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultHttpCors:getPipelineStreamsResultHttpCors": {
            "properties": {
                "origins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "origins"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultSchema:getPipelineStreamsResultSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamsResultSchemaField:getPipelineStreamsResultSchemaField"
                    }
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/getPipelineStreamsResultSchemaFormat:getPipelineStreamsResultSchemaFormat"
                },
                "inferred": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "fields",
                "format",
                "inferred"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultSchemaField:getPipelineStreamsResultSchemaField": {
            "properties": {
                "metadataKey": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "required": {
                    "type": "boolean"
                },
                "sqlName": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"int32\", \"int64\", \"float32\", \"float64\", \"bool\", \"string\", \"binary\", \"timestamp\", \"json\".\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Available values: \"second\", \"millisecond\", \"microsecond\", \"nanosecond\".\n"
                }
            },
            "type": "object",
            "required": [
                "metadataKey",
                "name",
                "required",
                "sqlName",
                "type",
                "unit"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultSchemaFormat:getPipelineStreamsResultSchemaFormat": {
            "properties": {
                "compression": {
                    "type": "string",
                    "description": "Available values: \"uncompressed\", \"snappy\", \"gzip\", \"zstd\", \"lz4\".\n"
                },
                "decimalEncoding": {
                    "type": "string",
                    "description": "Available values: \"number\", \"string\", \"bytes\".\n"
                },
                "rowGroupBytes": {
                    "type": "integer"
                },
                "timestampFormat": {
                    "type": "string",
                    "description": "Available values: \"rfc3339\", \u003cspan pulumi-lang-nodejs=\"\"unixMillis\"\" pulumi-lang-dotnet=\"\"UnixMillis\"\" pulumi-lang-go=\"\"unixMillis\"\" pulumi-lang-python=\"\"unix_millis\"\" pulumi-lang-yaml=\"\"unixMillis\"\" pulumi-lang-java=\"\"unixMillis\"\"\u003e\"unixMillis\"\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"json\", \"parquet\".\n"
                },
                "unstructured": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "compression",
                "decimalEncoding",
                "rowGroupBytes",
                "timestampFormat",
                "type",
                "unstructured"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineStreamsResultWorkerBinding:getPipelineStreamsResultWorkerBinding": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates that the worker binding is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getPipelineTable:getPipelineTable": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Unique identifier for the connection (stream or sink).\n"
                },
                "latest": {
                    "type": "integer",
                    "description": "Latest available version of the connection.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the connection.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the connection.\nAvailable values: \"stream\", \"sink\".\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Current version of the connection used by this pipeline.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "latest",
                "name",
                "type",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueueConsumer:getQueueConsumer": {
            "properties": {
                "consumerId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "deadLetterQueue": {
                    "type": "string",
                    "description": "Name of the dead letter queue, or empty string if not configured\n"
                },
                "queueName": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of a Worker\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getQueueConsumerSettings:getQueueConsumerSettings"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "consumerId",
                "createdOn",
                "deadLetterQueue",
                "queueName",
                "scriptName",
                "settings",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueueConsumerSettings:getQueueConsumerSettings": {
            "properties": {
                "batchSize": {
                    "type": "number",
                    "description": "The maximum number of messages to include in a batch.\n"
                },
                "maxConcurrency": {
                    "type": "number",
                    "description": "Maximum number of concurrent consumers that may consume from this Queue. Set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e to automatically opt in to the platform's maximum (recommended).\n"
                },
                "maxRetries": {
                    "type": "number",
                    "description": "The maximum number of retries\n"
                },
                "maxWaitTimeMs": {
                    "type": "number",
                    "description": "The number of milliseconds to wait for a batch to fill up before attempting to deliver it\n"
                },
                "retryDelay": {
                    "type": "number",
                    "description": "The number of seconds to delay before making the message available for another attempt.\n"
                },
                "visibilityTimeoutMs": {
                    "type": "number",
                    "description": "The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.\n"
                }
            },
            "type": "object",
            "required": [
                "batchSize",
                "maxConcurrency",
                "maxRetries",
                "maxWaitTimeMs",
                "retryDelay",
                "visibilityTimeoutMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueueConsumersResult:getQueueConsumersResult": {
            "properties": {
                "consumerId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "deadLetterQueue": {
                    "type": "string",
                    "description": "Name of the dead letter queue, or empty string if not configured\n"
                },
                "queueName": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of a Worker\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getQueueConsumersResultSettings:getQueueConsumersResultSettings"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "consumerId",
                "createdOn",
                "deadLetterQueue",
                "queueName",
                "scriptName",
                "settings",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueueConsumersResultSettings:getQueueConsumersResultSettings": {
            "properties": {
                "batchSize": {
                    "type": "number",
                    "description": "The maximum number of messages to include in a batch.\n"
                },
                "maxConcurrency": {
                    "type": "number",
                    "description": "Maximum number of concurrent consumers that may consume from this Queue. Set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e to automatically opt in to the platform's maximum (recommended).\n"
                },
                "maxRetries": {
                    "type": "number",
                    "description": "The maximum number of retries\n"
                },
                "maxWaitTimeMs": {
                    "type": "number",
                    "description": "The number of milliseconds to wait for a batch to fill up before attempting to deliver it\n"
                },
                "retryDelay": {
                    "type": "number",
                    "description": "The number of seconds to delay before making the message available for another attempt.\n"
                },
                "visibilityTimeoutMs": {
                    "type": "number",
                    "description": "The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.\n"
                }
            },
            "type": "object",
            "required": [
                "batchSize",
                "maxConcurrency",
                "maxRetries",
                "maxWaitTimeMs",
                "retryDelay",
                "visibilityTimeoutMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueueProducer:getQueueProducer": {
            "properties": {
                "bucketName": {
                    "type": "string"
                },
                "script": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"r2Bucket\"\" pulumi-lang-dotnet=\"\"R2Bucket\"\" pulumi-lang-go=\"\"r2Bucket\"\" pulumi-lang-python=\"\"r2_bucket\"\" pulumi-lang-yaml=\"\"r2Bucket\"\" pulumi-lang-java=\"\"r2Bucket\"\"\u003e\"r2Bucket\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "bucketName",
                "script",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueueSettings:getQueueSettings": {
            "properties": {
                "deliveryDelay": {
                    "type": "number",
                    "description": "Number of seconds to delay delivery of all messages to consumers.\n"
                },
                "deliveryPaused": {
                    "type": "boolean",
                    "description": "Indicates if message delivery to consumers is currently paused.\n"
                },
                "messageRetentionPeriod": {
                    "type": "number",
                    "description": "Number of seconds after which an unconsumed message will be delayed.\n"
                }
            },
            "type": "object",
            "required": [
                "deliveryDelay",
                "deliveryPaused",
                "messageRetentionPeriod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueuesResult:getQueuesResult": {
            "properties": {
                "consumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getQueuesResultConsumer:getQueuesResultConsumer"
                    }
                },
                "consumersTotalCount": {
                    "type": "number"
                },
                "createdOn": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "producers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getQueuesResultProducer:getQueuesResultProducer"
                    }
                },
                "producersTotalCount": {
                    "type": "number"
                },
                "queueId": {
                    "type": "string"
                },
                "queueName": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getQueuesResultSettings:getQueuesResultSettings"
                }
            },
            "type": "object",
            "required": [
                "consumers",
                "consumersTotalCount",
                "createdOn",
                "id",
                "modifiedOn",
                "producers",
                "producersTotalCount",
                "queueId",
                "queueName",
                "settings"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueuesResultConsumer:getQueuesResultConsumer": {
            "properties": {
                "consumerId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "deadLetterQueue": {
                    "type": "string",
                    "description": "Name of the dead letter queue, or empty string if not configured\n"
                },
                "queueName": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of a Worker\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/getQueuesResultConsumerSettings:getQueuesResultConsumerSettings"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "consumerId",
                "createdOn",
                "deadLetterQueue",
                "queueName",
                "scriptName",
                "settings",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueuesResultConsumerSettings:getQueuesResultConsumerSettings": {
            "properties": {
                "batchSize": {
                    "type": "number",
                    "description": "The maximum number of messages to include in a batch.\n"
                },
                "maxConcurrency": {
                    "type": "number",
                    "description": "Maximum number of concurrent consumers that may consume from this Queue. Set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e to automatically opt in to the platform's maximum (recommended).\n"
                },
                "maxRetries": {
                    "type": "number",
                    "description": "The maximum number of retries\n"
                },
                "maxWaitTimeMs": {
                    "type": "number",
                    "description": "The number of milliseconds to wait for a batch to fill up before attempting to deliver it\n"
                },
                "retryDelay": {
                    "type": "number",
                    "description": "The number of seconds to delay before making the message available for another attempt.\n"
                },
                "visibilityTimeoutMs": {
                    "type": "number",
                    "description": "The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.\n"
                }
            },
            "type": "object",
            "required": [
                "batchSize",
                "maxConcurrency",
                "maxRetries",
                "maxWaitTimeMs",
                "retryDelay",
                "visibilityTimeoutMs"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueuesResultProducer:getQueuesResultProducer": {
            "properties": {
                "bucketName": {
                    "type": "string"
                },
                "script": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"r2Bucket\"\" pulumi-lang-dotnet=\"\"R2Bucket\"\" pulumi-lang-go=\"\"r2Bucket\"\" pulumi-lang-python=\"\"r2_bucket\"\" pulumi-lang-yaml=\"\"r2Bucket\"\" pulumi-lang-java=\"\"r2Bucket\"\"\u003e\"r2Bucket\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "bucketName",
                "script",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getQueuesResultSettings:getQueuesResultSettings": {
            "properties": {
                "deliveryDelay": {
                    "type": "number",
                    "description": "Number of seconds to delay delivery of all messages to consumers.\n"
                },
                "deliveryPaused": {
                    "type": "boolean",
                    "description": "Indicates if message delivery to consumers is currently paused.\n"
                },
                "messageRetentionPeriod": {
                    "type": "number",
                    "description": "Number of seconds after which an unconsumed message will be delayed.\n"
                }
            },
            "type": "object",
            "required": [
                "deliveryDelay",
                "deliveryPaused",
                "messageRetentionPeriod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketCorsRule:getR2BucketCorsRule": {
            "properties": {
                "allowed": {
                    "$ref": "#/types/cloudflare:index/getR2BucketCorsRuleAllowed:getR2BucketCorsRuleAllowed",
                    "description": "Object specifying allowed origins, methods and headers for this CORS rule.\n"
                },
                "exposeHeaders": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "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.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier for this rule.\n"
                },
                "maxAgeSeconds": {
                    "type": "number",
                    "description": "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.\n"
                }
            },
            "type": "object",
            "required": [
                "allowed",
                "exposeHeaders",
                "id",
                "maxAgeSeconds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketCorsRuleAllowed:getR2BucketCorsRuleAllowed": {
            "properties": {
                "headers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "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.\n"
                },
                "methods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the value for the Access-Control-Allow-Methods header R2 sets when requesting objects in a bucket from a browser.\n"
                },
                "origins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the value for the Access-Control-Allow-Origin header R2 sets when requesting objects in a bucket from a browser.\n"
                }
            },
            "type": "object",
            "required": [
                "headers",
                "methods",
                "origins"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketEventNotificationRule:getR2BucketEventNotificationRule": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of R2 object actions that will trigger notifications.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp when the rule was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description that can be used to identify the event notification rule after creation.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "Notifications will be sent only for objects with this prefix.\n"
                },
                "ruleId": {
                    "type": "string",
                    "description": "Rule ID.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "Notifications will be sent only for objects with this suffix.\n"
                }
            },
            "type": "object",
            "required": [
                "actions",
                "createdAt",
                "description",
                "prefix",
                "ruleId",
                "suffix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRule:getR2BucketLifecycleRule": {
            "properties": {
                "abortMultipartUploadsTransition": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleAbortMultipartUploadsTransition:getR2BucketLifecycleRuleAbortMultipartUploadsTransition",
                    "description": "Transition to abort ongoing multipart uploads.\n"
                },
                "conditions": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleConditions:getR2BucketLifecycleRuleConditions",
                    "description": "Conditions that apply to all transitions of this rule.\n"
                },
                "deleteObjectsTransition": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleDeleteObjectsTransition:getR2BucketLifecycleRuleDeleteObjectsTransition",
                    "description": "Transition to delete objects.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this rule is in effect.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Unique identifier for this rule.\n"
                },
                "storageClassTransitions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleStorageClassTransition:getR2BucketLifecycleRuleStorageClassTransition"
                    },
                    "description": "Transitions to change the storage class of objects.\n"
                }
            },
            "type": "object",
            "required": [
                "abortMultipartUploadsTransition",
                "conditions",
                "deleteObjectsTransition",
                "enabled",
                "id",
                "storageClassTransitions"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleAbortMultipartUploadsTransition:getR2BucketLifecycleRuleAbortMultipartUploadsTransition": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition:getR2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition",
                    "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "condition"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition:getR2BucketLifecycleRuleAbortMultipartUploadsTransitionCondition": {
            "properties": {
                "maxAge": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\".\n"
                }
            },
            "type": "object",
            "required": [
                "maxAge",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleConditions:getR2BucketLifecycleRuleConditions": {
            "properties": {
                "prefix": {
                    "type": "string",
                    "description": "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.\n"
                }
            },
            "type": "object",
            "required": [
                "prefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleDeleteObjectsTransition:getR2BucketLifecycleRuleDeleteObjectsTransition": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleDeleteObjectsTransitionCondition:getR2BucketLifecycleRuleDeleteObjectsTransitionCondition",
                    "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "condition"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleDeleteObjectsTransitionCondition:getR2BucketLifecycleRuleDeleteObjectsTransitionCondition": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "maxAge": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\", \"Date\".\n"
                }
            },
            "type": "object",
            "required": [
                "date",
                "maxAge",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleStorageClassTransition:getR2BucketLifecycleRuleStorageClassTransition": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRuleStorageClassTransitionCondition:getR2BucketLifecycleRuleStorageClassTransitionCondition",
                    "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "Available values: \"InfrequentAccess\".\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "storageClass"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLifecycleRuleStorageClassTransitionCondition:getR2BucketLifecycleRuleStorageClassTransitionCondition": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "maxAge": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\", \"Date\".\n"
                }
            },
            "type": "object",
            "required": [
                "date",
                "maxAge",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLockRule:getR2BucketLockRule": {
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/getR2BucketLockRuleCondition:getR2BucketLockRuleCondition",
                    "description": "Condition to apply a lock rule to an object for how long in seconds.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this rule is in effect.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Unique identifier for this rule.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "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.\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "enabled",
                "id",
                "prefix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketLockRuleCondition:getR2BucketLockRuleCondition": {
            "properties": {
                "date": {
                    "type": "string"
                },
                "maxAgeSeconds": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"Age\", \"Date\", \"Indefinite\".\n"
                }
            },
            "type": "object",
            "required": [
                "date",
                "maxAgeSeconds",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketSippyDestination:getR2BucketSippyDestination": {
            "properties": {
                "accessKeyId": {
                    "type": "string",
                    "description": "ID of the Cloudflare API token used when writing objects to this\nbucket.\n"
                },
                "account": {
                    "type": "string"
                },
                "bucket": {
                    "type": "string",
                    "description": "Name of the bucket on the provider.\n"
                },
                "r2BucketSippyProvider": {
                    "type": "string",
                    "description": "Available values: \"r2\".\n"
                }
            },
            "type": "object",
            "required": [
                "accessKeyId",
                "account",
                "bucket",
                "r2BucketSippyProvider"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2BucketSippySource:getR2BucketSippySource": {
            "properties": {
                "bucket": {
                    "type": "string",
                    "description": "Name of the bucket on the provider (AWS, GCS only).\n"
                },
                "bucketUrl": {
                    "type": "string",
                    "description": "S3-compatible URL (Generic S3-compatible providers only).\n"
                },
                "r2BucketSippyProvider": {
                    "type": "string",
                    "description": "Available values: \"aws\", \"gcs\", \"s3\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Region where the bucket resides (AWS only).\n"
                }
            },
            "type": "object",
            "required": [
                "bucket",
                "bucketUrl",
                "r2BucketSippyProvider",
                "region"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2CustomDomainStatus:getR2CustomDomainStatus": {
            "properties": {
                "ownership": {
                    "type": "string",
                    "description": "Ownership status of the domain.\nAvailable values: \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\", \"unknown\".\n"
                },
                "ssl": {
                    "type": "string",
                    "description": "SSL certificate status.\nAvailable values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"error\", \"unknown\".\n"
                }
            },
            "type": "object",
            "required": [
                "ownership",
                "ssl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2DataCatalogMaintenanceConfig:getR2DataCatalogMaintenanceConfig": {
            "properties": {
                "compaction": {
                    "$ref": "#/types/cloudflare:index/getR2DataCatalogMaintenanceConfigCompaction:getR2DataCatalogMaintenanceConfigCompaction",
                    "description": "Configures compaction for catalog maintenance.\n"
                },
                "snapshotExpiration": {
                    "$ref": "#/types/cloudflare:index/getR2DataCatalogMaintenanceConfigSnapshotExpiration:getR2DataCatalogMaintenanceConfigSnapshotExpiration",
                    "description": "Configures snapshot expiration settings.\n"
                }
            },
            "type": "object",
            "required": [
                "compaction",
                "snapshotExpiration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2DataCatalogMaintenanceConfigCompaction:getR2DataCatalogMaintenanceConfigCompaction": {
            "properties": {
                "state": {
                    "type": "string",
                    "description": "Specifies the state of maintenance operations.\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "targetSizeMb": {
                    "type": "string",
                    "description": "Sets the target file size for compaction in megabytes. Defaults to \"128\".\nAvailable values: \"64\", \"128\", \"256\", \"512\".\n"
                }
            },
            "type": "object",
            "required": [
                "state",
                "targetSizeMb"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getR2DataCatalogMaintenanceConfigSnapshotExpiration:getR2DataCatalogMaintenanceConfigSnapshotExpiration": {
            "properties": {
                "maxSnapshotAge": {
                    "type": "string",
                    "description": "Specifies the maximum age for snapshots. The system deletes snapshots older than this age.\nFormat: \\n\\n\\n\\n where unit is d (days), h (hours), m (minutes), or s (seconds).\nExamples: \"7d\" (7 days), \"48h\" (48 hours), \"2880m\" (2,880 minutes).\nDefaults to \"7d\".\n"
                },
                "minSnapshotsToKeep": {
                    "type": "integer",
                    "description": "Specifies the minimum number of snapshots to retain. Defaults to 100.\n"
                },
                "state": {
                    "type": "string",
                    "description": "Specifies the state of maintenance operations.\nAvailable values: \"enabled\", \"disabled\".\n"
                }
            },
            "type": "object",
            "required": [
                "maxSnapshotAge",
                "minSnapshotsToKeep",
                "state"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitAction:getRateLimitAction": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The action to perform.\nAvailable values: \"simulate\", \"ban\", \"challenge\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/getRateLimitActionResponse:getRateLimitActionResponse",
                    "description": "A custom content type and reponse to return when the threshold is exceeded. The custom response configured in this object will override the custom error for the zone. This object is optional.\nNotes: If you omit this object, Cloudflare will use the default HTML error page. If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone challenge pages and you should not provide the \"response\" object.\n"
                },
                "timeout": {
                    "type": "number",
                    "description": "The time in seconds during which Cloudflare will perform the mitigation action. Must be an integer value greater than or equal to the period.\nNotes: If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone's Challenge Passage time and you should not provide this value.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "response",
                "timeout"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitActionResponse:getRateLimitActionResponse": {
            "properties": {
                "body": {
                    "type": "string",
                    "description": "The response body to return. The value must conform to the configured content type.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the body. Must be one of the following: `text/plain`, `text/xml`, or `application/json`.\n"
                }
            },
            "type": "object",
            "required": [
                "body",
                "contentType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitBypass:getRateLimitBypass": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Available values: \"url\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The URL to bypass.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitMatch:getRateLimitMatch": {
            "properties": {
                "headers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRateLimitMatchHeader:getRateLimitMatchHeader"
                    }
                },
                "request": {
                    "$ref": "#/types/cloudflare:index/getRateLimitMatchRequest:getRateLimitMatchRequest"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/getRateLimitMatchResponse:getRateLimitMatchResponse"
                }
            },
            "type": "object",
            "required": [
                "headers",
                "request",
                "response"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitMatchHeader:getRateLimitMatchHeader": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header to match.\n"
                },
                "op": {
                    "type": "string",
                    "description": "The operator used when matching: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e means \"equal\" and \u003cspan pulumi-lang-nodejs=\"`ne`\" pulumi-lang-dotnet=\"`Ne`\" pulumi-lang-go=\"`ne`\" pulumi-lang-python=\"`ne`\" pulumi-lang-yaml=\"`ne`\" pulumi-lang-java=\"`ne`\"\u003e`ne`\u003c/span\u003e means \"not equal\".\nAvailable values: \"eq\", \"ne\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value of the response header, which must match exactly.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "op",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitMatchRequest:getRateLimitMatchRequest": {
            "properties": {
                "methods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The HTTP methods to match. You can specify a subset (for example, `['POST','PUT']`) or all methods (`['_ALL_']`). This field is optional when creating a rate limit.\n"
                },
                "schemes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The HTTP schemes to match. You can specify one scheme (`['HTTPS']`), both schemes (`['HTTP','HTTPS']`), or all schemes (`['_ALL_']`). This field is optional.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL pattern to match, composed of a host and a path such as `example.org/path*`. Normalization is applied before the pattern is matched. `*` wildcards are expanded to match applicable traffic. Query strings are not matched. Set the value to `*` to match all traffic to your zone.\n"
                }
            },
            "type": "object",
            "required": [
                "methods",
                "schemes",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitMatchResponse:getRateLimitMatchResponse": {
            "properties": {
                "originTraffic": {
                    "type": "boolean",
                    "description": "When true, only the uncached traffic served from your origin servers will count towards rate limiting. In this case, any cached traffic served by Cloudflare will not count towards rate limiting. This field is optional.\nNotes: This field is deprecated. Instead, use response headers and set \"origin*traffic\" to \"false\" to avoid legacy behaviour interacting with the \"response*headers\" property.\n"
                }
            },
            "type": "object",
            "required": [
                "originTraffic"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResult:getRateLimitsResult": {
            "properties": {
                "action": {
                    "$ref": "#/types/cloudflare:index/getRateLimitsResultAction:getRateLimitsResultAction",
                    "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                },
                "bypasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRateLimitsResultBypass:getRateLimitsResultBypass"
                    },
                    "description": "Criteria specifying when the current rate limit should be bypassed. You can specify that the rate limit should not apply to one or more URLs.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "When true, indicates that the rate limit is currently disabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the rate limit.\n"
                },
                "match": {
                    "$ref": "#/types/cloudflare:index/getRateLimitsResultMatch:getRateLimitsResultMatch",
                    "description": "Determines which traffic the rate limit counts towards the threshold.\n"
                },
                "period": {
                    "type": "number",
                    "description": "The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action.\n"
                },
                "threshold": {
                    "type": "number",
                    "description": "The threshold that will trigger the configured mitigation action. Configure this value along with the \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e property to establish a threshold per period.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "bypasses",
                "description",
                "disabled",
                "id",
                "match",
                "period",
                "threshold"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultAction:getRateLimitsResultAction": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The action to perform.\nAvailable values: \"simulate\", \"ban\", \"challenge\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/getRateLimitsResultActionResponse:getRateLimitsResultActionResponse",
                    "description": "A custom content type and reponse to return when the threshold is exceeded. The custom response configured in this object will override the custom error for the zone. This object is optional.\nNotes: If you omit this object, Cloudflare will use the default HTML error page. If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone challenge pages and you should not provide the \"response\" object.\n"
                },
                "timeout": {
                    "type": "number",
                    "description": "The time in seconds during which Cloudflare will perform the mitigation action. Must be an integer value greater than or equal to the period.\nNotes: If \"mode\" is \"challenge\", \"managed*challenge\", or \"js*challenge\", Cloudflare will use the zone's Challenge Passage time and you should not provide this value.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "response",
                "timeout"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultActionResponse:getRateLimitsResultActionResponse": {
            "properties": {
                "body": {
                    "type": "string",
                    "description": "The response body to return. The value must conform to the configured content type.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the body. Must be one of the following: `text/plain`, `text/xml`, or `application/json`.\n"
                }
            },
            "type": "object",
            "required": [
                "body",
                "contentType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultBypass:getRateLimitsResultBypass": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Available values: \"url\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The URL to bypass.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultMatch:getRateLimitsResultMatch": {
            "properties": {
                "headers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRateLimitsResultMatchHeader:getRateLimitsResultMatchHeader"
                    }
                },
                "request": {
                    "$ref": "#/types/cloudflare:index/getRateLimitsResultMatchRequest:getRateLimitsResultMatchRequest"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/getRateLimitsResultMatchResponse:getRateLimitsResultMatchResponse"
                }
            },
            "type": "object",
            "required": [
                "headers",
                "request",
                "response"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultMatchHeader:getRateLimitsResultMatchHeader": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header to match.\n"
                },
                "op": {
                    "type": "string",
                    "description": "The operator used when matching: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e means \"equal\" and \u003cspan pulumi-lang-nodejs=\"`ne`\" pulumi-lang-dotnet=\"`Ne`\" pulumi-lang-go=\"`ne`\" pulumi-lang-python=\"`ne`\" pulumi-lang-yaml=\"`ne`\" pulumi-lang-java=\"`ne`\"\u003e`ne`\u003c/span\u003e means \"not equal\".\nAvailable values: \"eq\", \"ne\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value of the response header, which must match exactly.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "op",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultMatchRequest:getRateLimitsResultMatchRequest": {
            "properties": {
                "methods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The HTTP methods to match. You can specify a subset (for example, `['POST','PUT']`) or all methods (`['_ALL_']`). This field is optional when creating a rate limit.\n"
                },
                "schemes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The HTTP schemes to match. You can specify one scheme (`['HTTPS']`), both schemes (`['HTTP','HTTPS']`), or all schemes (`['_ALL_']`). This field is optional.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL pattern to match, composed of a host and a path such as `example.org/path*`. Normalization is applied before the pattern is matched. `*` wildcards are expanded to match applicable traffic. Query strings are not matched. Set the value to `*` to match all traffic to your zone.\n"
                }
            },
            "type": "object",
            "required": [
                "methods",
                "schemes",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRateLimitsResultMatchResponse:getRateLimitsResultMatchResponse": {
            "properties": {
                "originTraffic": {
                    "type": "boolean",
                    "description": "When true, only the uncached traffic served from your origin servers will count towards rate limiting. In this case, any cached traffic served by Cloudflare will not count towards rate limiting. This field is optional.\nNotes: This field is deprecated. Instead, use response headers and set \"origin*traffic\" to \"false\" to avoid legacy behaviour interacting with the \"response*headers\" property.\n"
                }
            },
            "type": "object",
            "required": [
                "originTraffic"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRegionalHostnamesResult:getRegionalHostnamesResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the regional hostname was created\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n"
                },
                "id": {
                    "type": "string",
                    "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n"
                },
                "regionKey": {
                    "type": "string",
                    "description": "Identifying key for the region\n"
                },
                "routing": {
                    "type": "string",
                    "description": "Configure which routing method to use for the regional hostname\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "hostname",
                "id",
                "regionKey",
                "routing"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRegistrarDomainsResult:getRegistrarDomainsResult": {
            "properties": {
                "available": {
                    "type": "boolean",
                    "description": "Shows if a domain is available for transferring into Cloudflare Registrar.\n"
                },
                "canRegister": {
                    "type": "boolean",
                    "description": "Indicates if the domain can be registered as a new domain.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Shows time of creation.\n"
                },
                "currentRegistrar": {
                    "type": "string",
                    "description": "Shows name of current registrar.\n"
                },
                "expiresAt": {
                    "type": "string",
                    "description": "Shows when domain name registration expires.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Domain identifier.\n"
                },
                "locked": {
                    "type": "boolean",
                    "description": "Shows whether a registrar lock is in place for a domain.\n"
                },
                "registrantContact": {
                    "$ref": "#/types/cloudflare:index/getRegistrarDomainsResultRegistrantContact:getRegistrarDomainsResultRegistrantContact",
                    "description": "Shows contact information for domain registrant.\n"
                },
                "registryStatuses": {
                    "type": "string",
                    "description": "A comma-separated list of registry status codes. A full list of status codes can be found at [EPP Status Codes](https://www.icann.org/resources/pages/epp-status-codes-2014-06-16-en).\n"
                },
                "supportedTld": {
                    "type": "boolean",
                    "description": "Whether a particular TLD is currently supported by Cloudflare Registrar. Refer to [TLD Policies](https://www.cloudflare.com/tld-policies/) for a list of supported TLDs.\n"
                },
                "transferIn": {
                    "$ref": "#/types/cloudflare:index/getRegistrarDomainsResultTransferIn:getRegistrarDomainsResultTransferIn",
                    "description": "Statuses for domain transfers into Cloudflare Registrar.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "Last updated.\n"
                }
            },
            "type": "object",
            "required": [
                "available",
                "canRegister",
                "createdAt",
                "currentRegistrar",
                "expiresAt",
                "id",
                "locked",
                "registrantContact",
                "registryStatuses",
                "supportedTld",
                "transferIn",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRegistrarDomainsResultRegistrantContact:getRegistrarDomainsResultRegistrantContact": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "Address.\n"
                },
                "address2": {
                    "type": "string",
                    "description": "Optional address line for unit, floor, suite, etc.\n"
                },
                "city": {
                    "type": "string",
                    "description": "City.\n"
                },
                "country": {
                    "type": "string",
                    "description": "The country in which the user lives.\n"
                },
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "fax": {
                    "type": "string",
                    "description": "Contact fax number.\n"
                },
                "firstName": {
                    "type": "string",
                    "description": "User's first name\n"
                },
                "id": {
                    "type": "string",
                    "description": "Contact Identifier.\n"
                },
                "lastName": {
                    "type": "string",
                    "description": "User's last name\n"
                },
                "organization": {
                    "type": "string",
                    "description": "Name of organization.\n"
                },
                "phone": {
                    "type": "string",
                    "description": "User's telephone number\n"
                },
                "state": {
                    "type": "string",
                    "description": "State.\n"
                },
                "zip": {
                    "type": "string",
                    "description": "The zipcode or postal code where the user lives.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "address2",
                "city",
                "country",
                "email",
                "fax",
                "firstName",
                "id",
                "lastName",
                "organization",
                "phone",
                "state",
                "zip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRegistrarDomainsResultTransferIn:getRegistrarDomainsResultTransferIn": {
            "properties": {
                "acceptFoa": {
                    "type": "string",
                    "description": "Form of authorization has been accepted by the registrant.\nAvailable values: \"needed\", \"ok\".\n"
                },
                "approveTransfer": {
                    "type": "string",
                    "description": "Shows transfer status with the registry.\nAvailable values: \"needed\", \"ok\", \"pending\", \"trying\", \"rejected\", \"unknown\".\n"
                },
                "canCancelTransfer": {
                    "type": "boolean",
                    "description": "Indicates if cancellation is still possible.\n"
                },
                "disablePrivacy": {
                    "type": "string",
                    "description": "Privacy guards are disabled at the foreign registrar.\nAvailable values: \"needed\", \"ok\", \"unknown\".\n"
                },
                "enterAuthCode": {
                    "type": "string",
                    "description": "Auth code has been entered and verified.\nAvailable values: \"needed\", \"ok\", \"pending\", \"trying\", \"rejected\".\n"
                },
                "unlockDomain": {
                    "type": "string",
                    "description": "Domain is unlocked at the foreign registrar.\nAvailable values: \"needed\", \"ok\", \"pending\", \"trying\", \"unknown\".\n"
                }
            },
            "type": "object",
            "required": [
                "acceptFoa",
                "approveTransfer",
                "canCancelTransfer",
                "disablePrivacy",
                "enterAuthCode",
                "unlockDomain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupMeta:getResourceGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupScope:getResourceGroupScope": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)\n"
                },
                "objects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getResourceGroupScopeObject:getResourceGroupScopeObject"
                    },
                    "description": "A list of scope objects for additional context.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "objects"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupScopeObject:getResourceGroupScopeObject": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)\n"
                }
            },
            "type": "object",
            "required": [
                "key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupsResult:getResourceGroupsResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the resource group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getResourceGroupsResultMeta:getResourceGroupsResultMeta",
                    "description": "Attributes associated to the resource group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the resource group.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getResourceGroupsResultScope:getResourceGroupsResultScope"
                    },
                    "description": "The scope associated to the resource group\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupsResultMeta:getResourceGroupsResultMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupsResultScope:getResourceGroupsResultScope": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)\n"
                },
                "objects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getResourceGroupsResultScopeObject:getResourceGroupsResultScopeObject"
                    },
                    "description": "A list of scope objects for additional context.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "objects"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getResourceGroupsResultScopeObject:getResourceGroupsResultScopeObject": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)\n"
                }
            },
            "type": "object",
            "required": [
                "key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRule:getRulesetRule": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to perform when the rule matches.\nAvailable values: \"block\", \"challenge\", \"compress*response\", \"ddos*dynamic\", \"execute\", \"force*connection*close\", \"js*challenge\", \"log\", \"log*custom*field\", \"managed*challenge\", \"redirect\", \"rewrite\", \"route\", \"score\", \"serve*error\", \"set*cache*control\", \"set*cache*settings\", \"set*cache*tags\", \"set*config\", \"skip\".\n"
                },
                "actionParameters": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParameters:getRulesetRuleActionParameters",
                    "description": "The parameters configuring the rule's action.\n"
                },
                "categories": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The categories of the rule.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative description of the rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule should be executed.\n"
                },
                "exposedCredentialCheck": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleExposedCredentialCheck:getRulesetRuleExposedCredentialCheck",
                    "description": "Configuration for exposed credential checking.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression defining which traffic will match the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the rule.\n"
                },
                "logging": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleLogging:getRulesetRuleLogging",
                    "description": "An object configuring the rule's logging behavior.\n"
                },
                "ratelimit": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleRatelimit:getRulesetRuleRatelimit",
                    "description": "An object configuring the rule's rate limit behavior.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "The reference of the rule (the rule's ID by default).\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "actionParameters",
                "categories",
                "description",
                "enabled",
                "exposedCredentialCheck",
                "expression",
                "id",
                "logging",
                "ratelimit",
                "ref"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParameters:getRulesetRuleActionParameters": {
            "properties": {
                "additionalCacheablePorts": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of additional ports that caching should be enabled on.\n"
                },
                "algorithms": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersAlgorithm:getRulesetRuleActionParametersAlgorithm"
                    },
                    "description": "Custom order for compression algorithms.\n"
                },
                "assetName": {
                    "type": "string",
                    "description": "The name of a custom asset to serve as the response.\n"
                },
                "automaticHttpsRewrites": {
                    "type": "boolean",
                    "description": "Whether to enable Automatic HTTPS Rewrites.\n"
                },
                "autominify": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersAutominify:getRulesetRuleActionParametersAutominify",
                    "description": "Which file extensions to minify automatically.\n"
                },
                "bic": {
                    "type": "boolean",
                    "description": "Whether to enable Browser Integrity Check (BIC).\n"
                },
                "browserTtl": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersBrowserTtl:getRulesetRuleActionParametersBrowserTtl",
                    "description": "How long client browsers should cache the response. Cloudflare cache purge will not purge content cached on client browsers, so high browser TTLs may lead to stale content.\n"
                },
                "cache": {
                    "type": "boolean",
                    "description": "Whether the request's response from the origin is eligible for caching. Caching itself will still depend on the cache control header and your other caching configurations.\n"
                },
                "cacheKey": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKey:getRulesetRuleActionParametersCacheKey",
                    "description": "Which components of the request are included in or excluded from the cache key Cloudflare uses to store the response in cache.\n"
                },
                "cacheReserve": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheReserve:getRulesetRuleActionParametersCacheReserve",
                    "description": "Settings to determine whether the request's response from origin is eligible for Cache Reserve (requires a Cache Reserve add-on plan).\n"
                },
                "content": {
                    "type": "string",
                    "description": "The response content.\n"
                },
                "contentConverter": {
                    "type": "boolean",
                    "description": "Whether to enable content conversion (e.g., HTML to Markdown).\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type header to set with the error response.\nAvailable values: \"application/json\", \"text/html\", \"text/plain\", \"text/xml\".\n"
                },
                "cookieFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCookieField:getRulesetRuleActionParametersCookieField"
                    },
                    "description": "The cookie fields to log.\n"
                },
                "disableApps": {
                    "type": "boolean",
                    "description": "Whether to disable Cloudflare Apps.\n"
                },
                "disableRum": {
                    "type": "boolean",
                    "description": "Whether to disable Real User Monitoring (RUM).\n"
                },
                "disableZaraz": {
                    "type": "boolean",
                    "description": "Whether to disable Zaraz.\n"
                },
                "edgeTtl": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersEdgeTtl:getRulesetRuleActionParametersEdgeTtl",
                    "description": "How long the Cloudflare edge network should cache the response.\n"
                },
                "emailObfuscation": {
                    "type": "boolean",
                    "description": "Whether to enable Email Obfuscation.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "An expression to generate cache tags for set*cache*tags action.\n"
                },
                "fonts": {
                    "type": "boolean",
                    "description": "Whether to enable Cloudflare Fonts.\n"
                },
                "fromList": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersFromList:getRulesetRuleActionParametersFromList",
                    "description": "A redirect based on a bulk list lookup.\n"
                },
                "fromValue": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersFromValue:getRulesetRuleActionParametersFromValue",
                    "description": "A redirect based on the request properties.\n"
                },
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersHeaders:getRulesetRuleActionParametersHeaders"
                    },
                    "description": "A map of headers to rewrite.\n"
                },
                "hostHeader": {
                    "type": "string",
                    "description": "A value to rewrite the HTTP host header to.\n"
                },
                "hotlinkProtection": {
                    "type": "boolean",
                    "description": "Whether to enable Hotlink Protection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the ruleset to execute.\n"
                },
                "immutable": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersImmutable:getRulesetRuleActionParametersImmutable",
                    "description": "Set the immutable cache control directive.\n"
                },
                "increment": {
                    "type": "integer",
                    "description": "A delta to change the score by, which can be either positive or negative.\n"
                },
                "matchedData": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersMatchedData:getRulesetRuleActionParametersMatchedData",
                    "description": "The configuration to use for matched data logging.\n"
                },
                "maxAge": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersMaxAge:getRulesetRuleActionParametersMaxAge",
                    "description": "Set the max-age cache control directive.\n"
                },
                "mirage": {
                    "type": "boolean",
                    "description": "Whether to enable Mirage.\n"
                },
                "mustRevalidate": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersMustRevalidate:getRulesetRuleActionParametersMustRevalidate",
                    "description": "Set the must-revalidate cache control directive.\n"
                },
                "mustUnderstand": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersMustUnderstand:getRulesetRuleActionParametersMustUnderstand",
                    "description": "Set the must-understand cache control directive.\n"
                },
                "noCache": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersNoCache:getRulesetRuleActionParametersNoCache",
                    "description": "Set the no-cache cache control directive.\n"
                },
                "noStore": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersNoStore:getRulesetRuleActionParametersNoStore",
                    "description": "Set the no-store cache control directive.\n"
                },
                "noTransform": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersNoTransform:getRulesetRuleActionParametersNoTransform",
                    "description": "Set the no-transform cache control directive.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform for set*cache*tags action.\nAvailable values: \"set\", \"add\", \"remove\".\n"
                },
                "opportunisticEncryption": {
                    "type": "boolean",
                    "description": "Whether to enable Opportunistic Encryption.\n"
                },
                "origin": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersOrigin:getRulesetRuleActionParametersOrigin",
                    "description": "An origin to route to.\n"
                },
                "originCacheControl": {
                    "type": "boolean",
                    "description": "Whether Cloudflare will aim to strictly adhere to RFC 7234.\n"
                },
                "originErrorPagePassthru": {
                    "type": "boolean",
                    "description": "Whether to generate Cloudflare error pages for issues from the origin server.\n"
                },
                "overrides": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersOverrides:getRulesetRuleActionParametersOverrides",
                    "description": "A set of overrides to apply to the target ruleset.\n"
                },
                "phases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of phases to skip the execution of. This option is incompatible with the rulesets option.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*cache*settings\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit*ratelimit\".\n"
                },
                "polish": {
                    "type": "string",
                    "description": "The Polish level to configure.\nAvailable values: \"off\", \"lossless\", \"lossy\", \"webp\".\n"
                },
                "private": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersPrivate:getRulesetRuleActionParametersPrivate",
                    "description": "Set the private cache control directive.\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of legacy security products to skip the execution of.\nAvailable values: \"bic\", \"hot\", \"rateLimit\", \"securityLevel\", \"uaBlock\", \"waf\", \"zoneLockdown\".\n"
                },
                "proxyRevalidate": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersProxyRevalidate:getRulesetRuleActionParametersProxyRevalidate",
                    "description": "Set the proxy-revalidate cache control directive.\n"
                },
                "public": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersPublic:getRulesetRuleActionParametersPublic",
                    "description": "Set the public cache control directive.\n"
                },
                "rawResponseFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersRawResponseField:getRulesetRuleActionParametersRawResponseField"
                    },
                    "description": "The raw response fields to log.\n"
                },
                "readTimeout": {
                    "type": "integer",
                    "description": "A timeout value between two successive read operations to use for your origin server. Historically, the timeout value between two read options from Cloudflare to an origin server is 100 seconds. If you are attempting to reduce HTTP 524 errors because of timeouts from an origin server, try increasing this timeout value.\n"
                },
                "redirectsForAiTraining": {
                    "type": "boolean",
                    "description": "Whether to redirect verified AI training crawlers to canonical URLs.\n"
                },
                "requestBodyBuffering": {
                    "type": "string",
                    "description": "The request body buffering mode to configure.\nAvailable values: \"none\", \"standard\", \"full\".\n"
                },
                "requestFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersRequestField:getRulesetRuleActionParametersRequestField"
                    },
                    "description": "The raw request fields to log.\n"
                },
                "respectStrongEtags": {
                    "type": "boolean",
                    "description": "Whether Cloudflare should respect strong ETag (entity tag) headers. If false, Cloudflare converts strong ETag headers to weak ETag headers.\n"
                },
                "response": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersResponse:getRulesetRuleActionParametersResponse",
                    "description": "The response to show when the block is applied.\n"
                },
                "responseBodyBuffering": {
                    "type": "string",
                    "description": "The response body buffering mode to configure.\nAvailable values: \"none\", \"standard\".\n"
                },
                "responseFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersResponseField:getRulesetRuleActionParametersResponseField"
                    },
                    "description": "The transformed response fields to log.\n"
                },
                "rocketLoader": {
                    "type": "boolean",
                    "description": "Whether to enable Rocket Loader.\n"
                },
                "rules": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of ruleset IDs to a list of rule IDs in that ruleset to skip the execution of. This option is incompatible with the ruleset option.\n"
                },
                "ruleset": {
                    "type": "string",
                    "description": "A ruleset to skip the execution of. This option is incompatible with the rulesets option.\nAvailable values: \"current\".\n"
                },
                "rulesets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of ruleset IDs to skip the execution of. This option is incompatible with the ruleset and phases options.\n"
                },
                "sMaxage": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersSMaxage:getRulesetRuleActionParametersSMaxage",
                    "description": "Set the s-maxage cache control directive.\n"
                },
                "securityLevel": {
                    "type": "string",
                    "description": "The Security Level to configure.\nAvailable values: \"off\", \"essentially*off\", \"low\", \"medium\", \"high\", \"under*attack\".\n"
                },
                "serveStale": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersServeStale:getRulesetRuleActionParametersServeStale",
                    "description": "When to serve stale content from cache.\n"
                },
                "serverSideExcludes": {
                    "type": "boolean",
                    "description": "Whether to enable Server-Side Excludes.\n"
                },
                "sni": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersSni:getRulesetRuleActionParametersSni",
                    "description": "A Server Name Indication (SNI) override.\n"
                },
                "ssl": {
                    "type": "string",
                    "description": "The SSL level to configure.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\", \u003cspan pulumi-lang-nodejs=\"\"originPull\"\" pulumi-lang-dotnet=\"\"OriginPull\"\" pulumi-lang-go=\"\"originPull\"\" pulumi-lang-python=\"\"origin_pull\"\" pulumi-lang-yaml=\"\"originPull\"\" pulumi-lang-java=\"\"originPull\"\"\u003e\"originPull\"\u003c/span\u003e.\n"
                },
                "staleIfError": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersStaleIfError:getRulesetRuleActionParametersStaleIfError",
                    "description": "Set the stale-if-error cache control directive.\n"
                },
                "staleWhileRevalidate": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersStaleWhileRevalidate:getRulesetRuleActionParametersStaleWhileRevalidate",
                    "description": "Set the stale-while-revalidate cache control directive.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to use for the error.\n"
                },
                "stripEtags": {
                    "type": "boolean",
                    "description": "Whether to strip the ETag header from the response.\n"
                },
                "stripLastModified": {
                    "type": "boolean",
                    "description": "Whether to strip the Last-Modified header from the response.\n"
                },
                "stripSetCookie": {
                    "type": "boolean",
                    "description": "Whether to strip the Set-Cookie header from the response.\n"
                },
                "sxg": {
                    "type": "boolean",
                    "description": "Whether to enable Signed Exchanges (SXG).\n"
                },
                "transformedRequestFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersTransformedRequestField:getRulesetRuleActionParametersTransformedRequestField"
                    },
                    "description": "The transformed request fields to log.\n"
                },
                "uri": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersUri:getRulesetRuleActionParametersUri",
                    "description": "A URI rewrite.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The cache tag values for set*cache*tags action.\n"
                }
            },
            "type": "object",
            "required": [
                "additionalCacheablePorts",
                "algorithms",
                "assetName",
                "automaticHttpsRewrites",
                "autominify",
                "bic",
                "browserTtl",
                "cache",
                "cacheKey",
                "cacheReserve",
                "content",
                "contentConverter",
                "contentType",
                "cookieFields",
                "disableApps",
                "disableRum",
                "disableZaraz",
                "edgeTtl",
                "emailObfuscation",
                "expression",
                "fonts",
                "fromList",
                "fromValue",
                "headers",
                "hostHeader",
                "hotlinkProtection",
                "id",
                "immutable",
                "increment",
                "matchedData",
                "maxAge",
                "mirage",
                "mustRevalidate",
                "mustUnderstand",
                "noCache",
                "noStore",
                "noTransform",
                "operation",
                "opportunisticEncryption",
                "origin",
                "originCacheControl",
                "originErrorPagePassthru",
                "overrides",
                "phases",
                "polish",
                "private",
                "products",
                "proxyRevalidate",
                "public",
                "rawResponseFields",
                "readTimeout",
                "redirectsForAiTraining",
                "requestBodyBuffering",
                "requestFields",
                "respectStrongEtags",
                "response",
                "responseBodyBuffering",
                "responseFields",
                "rocketLoader",
                "rules",
                "ruleset",
                "rulesets",
                "sMaxage",
                "securityLevel",
                "serveStale",
                "serverSideExcludes",
                "sni",
                "ssl",
                "staleIfError",
                "staleWhileRevalidate",
                "statusCode",
                "stripEtags",
                "stripLastModified",
                "stripSetCookie",
                "sxg",
                "transformedRequestFields",
                "uri",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersAlgorithm:getRulesetRuleActionParametersAlgorithm": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the compression algorithm to enable.\nAvailable values: \"none\", \"auto\", \"default\", \"gzip\", \"brotli\", \"zstd\".\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersAutominify:getRulesetRuleActionParametersAutominify": {
            "properties": {
                "css": {
                    "type": "boolean",
                    "description": "Whether to minify CSS files.\n"
                },
                "html": {
                    "type": "boolean",
                    "description": "Whether to minify HTML files.\n"
                },
                "js": {
                    "type": "boolean",
                    "description": "Whether to minify JavaScript files.\n"
                }
            },
            "type": "object",
            "required": [
                "css",
                "html",
                "js"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersBrowserTtl:getRulesetRuleActionParametersBrowserTtl": {
            "properties": {
                "default": {
                    "type": "integer",
                    "description": "The browser TTL (in seconds) if you choose the \u003cspan pulumi-lang-nodejs=\"\"overrideOrigin\"\" pulumi-lang-dotnet=\"\"OverrideOrigin\"\" pulumi-lang-go=\"\"overrideOrigin\"\" pulumi-lang-python=\"\"override_origin\"\" pulumi-lang-yaml=\"\"overrideOrigin\"\" pulumi-lang-java=\"\"overrideOrigin\"\"\u003e\"overrideOrigin\"\u003c/span\u003e mode.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The browser TTL mode.\nAvailable values: \"respect*origin\", \"bypass*by*default\", \"override*origin\", \"bypass\".\n"
                }
            },
            "type": "object",
            "required": [
                "default",
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKey:getRulesetRuleActionParametersCacheKey": {
            "properties": {
                "cacheByDeviceType": {
                    "type": "boolean",
                    "description": "Whether to separate cached content based on the visitor's device type.\n"
                },
                "cacheDeceptionArmor": {
                    "type": "boolean",
                    "description": "Whether to protect from web cache deception attacks, while allowing static assets to be cached.\n"
                },
                "customKey": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKey:getRulesetRuleActionParametersCacheKeyCustomKey",
                    "description": "Which components of the request are included or excluded from the cache key.\n"
                },
                "ignoreQueryStringsOrder": {
                    "type": "boolean",
                    "description": "Whether to treat requests with the same query parameters the same, regardless of the order those query parameters are in.\n"
                }
            },
            "type": "object",
            "required": [
                "cacheByDeviceType",
                "cacheDeceptionArmor",
                "customKey",
                "ignoreQueryStringsOrder"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKey:getRulesetRuleActionParametersCacheKeyCustomKey": {
            "properties": {
                "cookie": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyCookie:getRulesetRuleActionParametersCacheKeyCustomKeyCookie",
                    "description": "Which cookies to include in the cache key.\n"
                },
                "header": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyHeader:getRulesetRuleActionParametersCacheKeyCustomKeyHeader",
                    "description": "Which headers to include in the cache key.\n"
                },
                "host": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyHost:getRulesetRuleActionParametersCacheKeyCustomKeyHost",
                    "description": "How to use the host in the cache key.\n"
                },
                "queryString": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyQueryString:getRulesetRuleActionParametersCacheKeyCustomKeyQueryString",
                    "description": "Which query string parameters to include in or exclude from the cache key.\n"
                },
                "user": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyUser:getRulesetRuleActionParametersCacheKeyCustomKeyUser",
                    "description": "How to use characteristics of the request user agent in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "cookie",
                "header",
                "host",
                "queryString",
                "user"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyCookie:getRulesetRuleActionParametersCacheKeyCustomKeyCookie": {
            "properties": {
                "checkPresences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of cookies to check for the presence of. The presence of these cookies is included in the cache key.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of cookies to include in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "checkPresences",
                "includes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyHeader:getRulesetRuleActionParametersCacheKeyCustomKeyHeader": {
            "properties": {
                "checkPresences": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of headers to check for the presence of. The presence of these headers is included in the cache key.\n"
                },
                "contains": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of header names to a list of values. If a header is present in the request and contains any of the values provided, its value is included in the cache key.\n"
                },
                "excludeOrigin": {
                    "type": "boolean",
                    "description": "Whether to exclude the origin header in the cache key.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of headers to include in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "checkPresences",
                "contains",
                "excludeOrigin",
                "includes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyHost:getRulesetRuleActionParametersCacheKeyCustomKeyHost": {
            "properties": {
                "resolved": {
                    "type": "boolean",
                    "description": "Whether to use the resolved host in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "resolved"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyQueryString:getRulesetRuleActionParametersCacheKeyCustomKeyQueryString": {
            "properties": {
                "exclude": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude:getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude",
                    "description": "Which query string parameters to exclude from the cache key.\n"
                },
                "include": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude:getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude",
                    "description": "Which query string parameters to include in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "exclude",
                "include"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude:getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringExclude": {
            "properties": {
                "all": {
                    "type": "boolean",
                    "description": "Whether to exclude all query string parameters from the cache key.\n"
                },
                "lists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of query string parameters to exclude from the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "all",
                "lists"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude:getRulesetRuleActionParametersCacheKeyCustomKeyQueryStringInclude": {
            "properties": {
                "all": {
                    "type": "boolean",
                    "description": "Whether to include all query string parameters in the cache key.\n"
                },
                "lists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of query string parameters to include in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "all",
                "lists"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheKeyCustomKeyUser:getRulesetRuleActionParametersCacheKeyCustomKeyUser": {
            "properties": {
                "deviceType": {
                    "type": "boolean",
                    "description": "Whether to use the user agent's device type in the cache key.\n"
                },
                "geo": {
                    "type": "boolean",
                    "description": "Whether to use the user agents's country in the cache key.\n"
                },
                "lang": {
                    "type": "boolean",
                    "description": "Whether to use the user agent's language in the cache key.\n"
                }
            },
            "type": "object",
            "required": [
                "deviceType",
                "geo",
                "lang"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCacheReserve:getRulesetRuleActionParametersCacheReserve": {
            "properties": {
                "eligible": {
                    "type": "boolean",
                    "description": "Whether Cache Reserve is enabled. If this is true and a request meets eligibility criteria, Cloudflare will write the resource to Cache Reserve.\n"
                },
                "minimumFileSize": {
                    "type": "integer",
                    "description": "The minimum file size eligible for storage in Cache Reserve.\n"
                }
            },
            "type": "object",
            "required": [
                "eligible",
                "minimumFileSize"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersCookieField:getRulesetRuleActionParametersCookieField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the cookie.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersEdgeTtl:getRulesetRuleActionParametersEdgeTtl": {
            "properties": {
                "default": {
                    "type": "integer",
                    "description": "The edge TTL (in seconds) if you choose the \u003cspan pulumi-lang-nodejs=\"\"overrideOrigin\"\" pulumi-lang-dotnet=\"\"OverrideOrigin\"\" pulumi-lang-go=\"\"overrideOrigin\"\" pulumi-lang-python=\"\"override_origin\"\" pulumi-lang-yaml=\"\"overrideOrigin\"\" pulumi-lang-java=\"\"overrideOrigin\"\"\u003e\"overrideOrigin\"\u003c/span\u003e mode.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The edge TTL mode.\nAvailable values: \"respect*origin\", \"bypass*by*default\", \"override*origin\".\n"
                },
                "statusCodeTtls": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersEdgeTtlStatusCodeTtl:getRulesetRuleActionParametersEdgeTtlStatusCodeTtl"
                    },
                    "description": "A list of TTLs to apply to specific status codes or status code ranges.\n"
                }
            },
            "type": "object",
            "required": [
                "default",
                "mode",
                "statusCodeTtls"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersEdgeTtlStatusCodeTtl:getRulesetRuleActionParametersEdgeTtlStatusCodeTtl": {
            "properties": {
                "statusCode": {
                    "type": "integer",
                    "description": "A single status code to apply the TTL to.\n"
                },
                "statusCodeRange": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange:getRulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange",
                    "description": "A range of status codes to apply the TTL to.\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The time to cache the response for (in seconds). A value of 0 is equivalent to setting the cache control header with the value \"no-cache\". A value of -1 is equivalent to setting the cache control header with the value of \"no-store\".\n"
                }
            },
            "type": "object",
            "required": [
                "statusCode",
                "statusCodeRange",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange:getRulesetRuleActionParametersEdgeTtlStatusCodeTtlStatusCodeRange": {
            "properties": {
                "from": {
                    "type": "integer",
                    "description": "The lower bound of the range.\n"
                },
                "to": {
                    "type": "integer",
                    "description": "The upper bound of the range.\n"
                }
            },
            "type": "object",
            "required": [
                "from",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersFromList:getRulesetRuleActionParametersFromList": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "An expression that evaluates to the list lookup key.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the list to match against.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersFromValue:getRulesetRuleActionParametersFromValue": {
            "properties": {
                "preserveQueryString": {
                    "type": "boolean",
                    "description": "Whether to keep the query string of the original request.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to use for the redirect.\n"
                },
                "targetUrl": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersFromValueTargetUrl:getRulesetRuleActionParametersFromValueTargetUrl",
                    "description": "A URL to redirect the request to.\n"
                }
            },
            "type": "object",
            "required": [
                "preserveQueryString",
                "statusCode",
                "targetUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersFromValueTargetUrl:getRulesetRuleActionParametersFromValueTargetUrl": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a URL to redirect the request to.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A URL to redirect the request to.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersHeaders:getRulesetRuleActionParametersHeaders": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a value for the header.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform on the header.\nAvailable values: \"add\", \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "A static value for the header.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "operation",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersImmutable:getRulesetRuleActionParametersImmutable": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersMatchedData:getRulesetRuleActionParametersMatchedData": {
            "properties": {
                "publicKey": {
                    "type": "string",
                    "description": "The public key to encrypt matched data logs with.\n"
                }
            },
            "type": "object",
            "required": [
                "publicKey"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersMaxAge:getRulesetRuleActionParametersMaxAge": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersMustRevalidate:getRulesetRuleActionParametersMustRevalidate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersMustUnderstand:getRulesetRuleActionParametersMustUnderstand": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersNoCache:getRulesetRuleActionParametersNoCache": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "qualifiers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The qualifiers for the directive.\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation",
                "qualifiers"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersNoStore:getRulesetRuleActionParametersNoStore": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersNoTransform:getRulesetRuleActionParametersNoTransform": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersOrigin:getRulesetRuleActionParametersOrigin": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "A resolved host to route to.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "A destination port to route to.\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersOverrides:getRulesetRuleActionParametersOverrides": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "An action to override all rules with. This option has lower precedence than rule and category overrides.\n"
                },
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersOverridesCategory:getRulesetRuleActionParametersOverridesCategory"
                    },
                    "description": "A list of category-level overrides. This option has the second-highest precedence after rule-level overrides.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable execution of all rules. This option has lower precedence than rule and category overrides.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersOverridesRule:getRulesetRuleActionParametersOverridesRule"
                    },
                    "description": "A list of rule-level overrides. This option has the highest precedence.\n"
                },
                "sensitivityLevel": {
                    "type": "string",
                    "description": "A sensitivity level to set for all rules. This option has lower precedence than rule and category overrides and is only applicable for DDoS phases.\nAvailable values: \"default\", \"medium\", \"low\", \"eoff\".\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "categories",
                "enabled",
                "rules",
                "sensitivityLevel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersOverridesCategory:getRulesetRuleActionParametersOverridesCategory": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to override rules in the category with.\n"
                },
                "category": {
                    "type": "string",
                    "description": "The name of the category to override.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable execution of rules in the category.\n"
                },
                "sensitivityLevel": {
                    "type": "string",
                    "description": "The sensitivity level to use for rules in the category. This option is only applicable for DDoS phases.\nAvailable values: \"default\", \"medium\", \"low\", \"eoff\".\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "category",
                "enabled",
                "sensitivityLevel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersOverridesRule:getRulesetRuleActionParametersOverridesRule": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to override the rule with.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable execution of the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the rule to override.\n"
                },
                "scoreThreshold": {
                    "type": "integer",
                    "description": "The score threshold to use for the rule.\n"
                },
                "sensitivityLevel": {
                    "type": "string",
                    "description": "The sensitivity level to use for the rule. This option is only applicable for DDoS phases.\nAvailable values: \"default\", \"medium\", \"low\", \"eoff\".\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "enabled",
                "id",
                "scoreThreshold",
                "sensitivityLevel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersPrivate:getRulesetRuleActionParametersPrivate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "qualifiers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The qualifiers for the directive.\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation",
                "qualifiers"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersProxyRevalidate:getRulesetRuleActionParametersProxyRevalidate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersPublic:getRulesetRuleActionParametersPublic": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersRawResponseField:getRulesetRuleActionParametersRawResponseField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header.\n"
                },
                "preserveDuplicates": {
                    "type": "boolean",
                    "description": "Whether to log duplicate values of the same header.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "preserveDuplicates"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersRequestField:getRulesetRuleActionParametersRequestField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the header.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersResponse:getRulesetRuleActionParametersResponse": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "The content to return.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The type of the content to return.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to return.\n"
                }
            },
            "type": "object",
            "required": [
                "content",
                "contentType",
                "statusCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersResponseField:getRulesetRuleActionParametersResponseField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the response header.\n"
                },
                "preserveDuplicates": {
                    "type": "boolean",
                    "description": "Whether to log duplicate values of the same header.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "preserveDuplicates"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersSMaxage:getRulesetRuleActionParametersSMaxage": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersServeStale:getRulesetRuleActionParametersServeStale": {
            "properties": {
                "disableStaleWhileUpdating": {
                    "type": "boolean",
                    "description": "Whether Cloudflare should disable serving stale content while getting the latest content from the origin.\n"
                }
            },
            "type": "object",
            "required": [
                "disableStaleWhileUpdating"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersSni:getRulesetRuleActionParametersSni": {
            "properties": {
                "value": {
                    "type": "string",
                    "description": "A value to override the SNI to.\n"
                }
            },
            "type": "object",
            "required": [
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersStaleIfError:getRulesetRuleActionParametersStaleIfError": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersStaleWhileRevalidate:getRulesetRuleActionParametersStaleWhileRevalidate": {
            "properties": {
                "cloudflareOnly": {
                    "type": "boolean",
                    "description": "Whether to apply the directive only to Cloudflare's cache.\n"
                },
                "operation": {
                    "type": "string",
                    "description": "The operation to perform.\nAvailable values: \"set\", \"remove\".\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The value for the directive in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "cloudflareOnly",
                "operation",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersTransformedRequestField:getRulesetRuleActionParametersTransformedRequestField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the header.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersUri:getRulesetRuleActionParametersUri": {
            "properties": {
                "origin": {
                    "type": "boolean",
                    "description": "Whether to propagate the rewritten URI to origin.\n"
                },
                "path": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersUriPath:getRulesetRuleActionParametersUriPath",
                    "description": "A URI path rewrite.\n"
                },
                "query": {
                    "$ref": "#/types/cloudflare:index/getRulesetRuleActionParametersUriQuery:getRulesetRuleActionParametersUriQuery",
                    "description": "A URI query rewrite.\n"
                }
            },
            "type": "object",
            "required": [
                "origin",
                "path",
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersUriPath:getRulesetRuleActionParametersUriPath": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a value to rewrite the URI path to.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A value to rewrite the URI path to.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleActionParametersUriQuery:getRulesetRuleActionParametersUriQuery": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "An expression that evaluates to a value to rewrite the URI query to.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A value to rewrite the URI query to.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleExposedCredentialCheck:getRulesetRuleExposedCredentialCheck": {
            "properties": {
                "passwordExpression": {
                    "type": "string",
                    "description": "An expression that selects the password used in the credentials check.\n"
                },
                "usernameExpression": {
                    "type": "string",
                    "description": "An expression that selects the user ID used in the credentials check.\n"
                }
            },
            "type": "object",
            "required": [
                "passwordExpression",
                "usernameExpression"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleLogging:getRulesetRuleLogging": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to generate a log when the rule matches.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetRuleRatelimit:getRulesetRuleRatelimit": {
            "properties": {
                "characteristics": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Characteristics of the request on which the rate limit counter will be incremented.\n"
                },
                "countingExpression": {
                    "type": "string",
                    "description": "An expression that defines when the rate limit counter should be incremented. It defaults to the same as the rule's expression.\n"
                },
                "mitigationTimeout": {
                    "type": "integer",
                    "description": "Period of time in seconds after which the action will be disabled following its first execution.\n"
                },
                "period": {
                    "type": "integer",
                    "description": "Period in seconds over which the counter is being incremented.\n"
                },
                "requestsPerPeriod": {
                    "type": "integer",
                    "description": "The threshold of requests per period after which the action will be executed for the first time.\n"
                },
                "requestsToOrigin": {
                    "type": "boolean",
                    "description": "Whether counting is only performed when an origin is reached.\n"
                },
                "scorePerPeriod": {
                    "type": "integer",
                    "description": "The score threshold per period for which the action will be executed the first time.\n"
                },
                "scoreResponseHeaderName": {
                    "type": "string",
                    "description": "A response header name provided by the origin, which contains the score to increment rate limit counter with.\n"
                }
            },
            "type": "object",
            "required": [
                "characteristics",
                "countingExpression",
                "mitigationTimeout",
                "period",
                "requestsPerPeriod",
                "requestsToOrigin",
                "scorePerPeriod",
                "scoreResponseHeaderName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetsResult:getRulesetsResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "An informative description of the ruleset.\n",
                    "deprecationMessage": "Use rulesets.description instead. This attribute will be removed in the next major version of the provider."
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the ruleset.\n",
                    "deprecationMessage": "Use rulesets.id instead. This attribute will be removed in the next major version of the provider."
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of the ruleset.\nAvailable values: \"managed\", \"custom\", \"root\", \"zone\".\n",
                    "deprecationMessage": "Use rulesets.kind instead. This attribute will be removed in the next major version of the provider."
                },
                "lastUpdated": {
                    "type": "string",
                    "description": "The timestamp of when the ruleset was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The human-readable name of the ruleset.\n",
                    "deprecationMessage": "Use rulesets.name instead. This attribute will be removed in the next major version of the provider."
                },
                "phase": {
                    "type": "string",
                    "description": "The phase of the ruleset.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit_ratelimit\".\n",
                    "deprecationMessage": "Use rulesets.phase instead. This attribute will be removed in the next major version of the provider."
                },
                "version": {
                    "type": "string",
                    "description": "The version of the ruleset.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "kind",
                "lastUpdated",
                "name",
                "phase",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getRulesetsRuleset:getRulesetsRuleset": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "An informative description of the ruleset.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the ruleset.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of the ruleset.\nAvailable values: \"managed\", \"custom\", \"root\", \"zone\".\n"
                },
                "lastUpdated": {
                    "type": "string",
                    "description": "The timestamp of when the ruleset was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The human-readable name of the ruleset.\n"
                },
                "phase": {
                    "type": "string",
                    "description": "The phase of the ruleset.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit_ratelimit\".\n"
                },
                "version": {
                    "type": "string",
                    "description": "The version of the ruleset.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "kind",
                "lastUpdated",
                "name",
                "phase",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSchemaValidationOperationSettingsListResult:getSchemaValidationOperationSettingsListResult": {
            "properties": {
                "mitigationAction": {
                    "type": "string",
                    "description": "When set, this applies a mitigation action to this operation which supersedes a global schema validation setting just for this operation\n\n  - `\"log\"` - log request when request does not conform to schema for this operation\n  - `\"block\"` - deny access to the site when request does not conform to schema for this operation\n  - `\"none\"` - will skip mitigation for this operation\nAvailable values: \"log\", \"block\", \"none\".\n"
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID.\n"
                }
            },
            "type": "object",
            "required": [
                "mitigationAction",
                "operationId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSchemaValidationSchemasFilter:getSchemaValidationSchemasFilter": {
            "properties": {
                "validationEnabled": {
                    "type": "boolean",
                    "description": "Filter for enabled schemas\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getSchemaValidationSchemasListResult:getSchemaValidationSchemasListResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "A unique identifier of this schema\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of the schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the schema\n"
                },
                "schemaId": {
                    "type": "string",
                    "description": "A unique identifier of this schema\n"
                },
                "source": {
                    "type": "string",
                    "description": "The raw schema, e.g., the OpenAPI schema, either as JSON or YAML\n"
                },
                "validationEnabled": {
                    "type": "boolean",
                    "description": "An indicator if this schema is enabled\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "id",
                "kind",
                "name",
                "schemaId",
                "source",
                "validationEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSnippetListResult:getSnippetListResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "Indicates when the snippet was created.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Indicates when the snippet was last modified.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "Identify the snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "modifiedOn",
                "snippetName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSnippetRulesListResult:getSnippetRulesListResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "An informative description of the rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule should be executed.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression defining which traffic will match the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the rule.\n"
                },
                "lastUpdated": {
                    "type": "string",
                    "description": "The timestamp of when the rule was last modified.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "The identifying name of the snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "expression",
                "id",
                "lastUpdated",
                "snippetName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSnippetsListResult:getSnippetsListResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the snippet was created.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the snippet was last modified.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "The identifying name of the snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "modifiedOn",
                "snippetName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationDns:getSpectrumApplicationDns": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the DNS record associated with the application.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of DNS record associated with the application.\nAvailable values: \"CNAME\", \"ADDRESS\".\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationEdgeIps:getSpectrumApplicationEdgeIps": {
            "properties": {
                "connectivity": {
                    "type": "string",
                    "description": "The IP versions supported for inbound connections on Spectrum anycast IPs.\nAvailable values: \"all\", \"ipv4\", \"ipv6\".\n"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The array of customer owned IPs we broadcast via anycast for this hostname and application.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of edge IP configuration specified. Dynamically allocated edge IPs use Spectrum anycast IPs in accordance with the connectivity you specify. Only valid with CNAME DNS names.\nAvailable values: \"dynamic\", \"static\".\n"
                }
            },
            "type": "object",
            "required": [
                "connectivity",
                "ips",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationFilter:getSpectrumApplicationFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Sets the direction by which results are ordered.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "order": {
                    "type": "string",
                    "description": "Application field by which results are ordered.\nAvailable values: \"protocol\", \"app*id\", \"created*on\", \u003cspan pulumi-lang-nodejs=\"\"modifiedOn\"\" pulumi-lang-dotnet=\"\"ModifiedOn\"\" pulumi-lang-go=\"\"modifiedOn\"\" pulumi-lang-python=\"\"modified_on\"\" pulumi-lang-yaml=\"\"modifiedOn\"\" pulumi-lang-java=\"\"modifiedOn\"\"\u003e\"modifiedOn\"\u003c/span\u003e, \"dns\".\n"
                }
            },
            "type": "object",
            "required": [
                "direction",
                "order"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationOriginDns:getSpectrumApplicationOriginDns": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the DNS record associated with the origin.\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "The TTL of our resolution of your DNS record in seconds.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of DNS record associated with the origin. \"\" is used to specify a combination of A/AAAA records.\nAvailable values: \"\", \"A\", \"AAAA\", \"SRV\".\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "ttl",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationsResult:getSpectrumApplicationsResult": {
            "properties": {
                "argoSmartRouting": {
                    "type": "boolean",
                    "description": "Enables Argo Smart Routing for this application.\nNotes: Only available for TCP applications with\u003cspan pulumi-lang-nodejs=\" trafficType \" pulumi-lang-dotnet=\" TrafficType \" pulumi-lang-go=\" trafficType \" pulumi-lang-python=\" traffic_type \" pulumi-lang-yaml=\" trafficType \" pulumi-lang-java=\" trafficType \"\u003e trafficType \u003c/span\u003eset to \"direct\".\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the Application was created.\n"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/getSpectrumApplicationsResultDns:getSpectrumApplicationsResultDns",
                    "description": "The name and type of DNS record for the Spectrum application.\n"
                },
                "edgeIps": {
                    "$ref": "#/types/cloudflare:index/getSpectrumApplicationsResultEdgeIps:getSpectrumApplicationsResultEdgeIps",
                    "description": "The anycast edge IP configuration for the hostname of this application.\n"
                },
                "id": {
                    "type": "string",
                    "description": "App identifier.\n"
                },
                "ipFirewall": {
                    "type": "boolean",
                    "description": "Enables IP Access Rules for this application.\nNotes: Only available for TCP applications.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Application was last modified.\n"
                },
                "originDirects": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of origin IP addresses. Array may contain multiple IP addresses for load balancing.\n"
                },
                "originDns": {
                    "$ref": "#/types/cloudflare:index/getSpectrumApplicationsResultOriginDns:getSpectrumApplicationsResultOriginDns",
                    "description": "The name and type of DNS record for the Spectrum application.\n"
                },
                "originPort": {
                    "$ref": "pulumi.json#/Any",
                    "description": "The destination port at the origin. Only specified in conjunction with origin_dns. May use an integer to specify a single origin port, for example \u003cspan pulumi-lang-nodejs=\"`1000`\" pulumi-lang-dotnet=\"`1000`\" pulumi-lang-go=\"`1000`\" pulumi-lang-python=\"`1000`\" pulumi-lang-yaml=\"`1000`\" pulumi-lang-java=\"`1000`\"\u003e`1000`\u003c/span\u003e, or a string to specify a range of origin ports, for example `\"1000-2000\"`.\nNotes: If specifying a port range, the number of ports in the range must match the number of ports specified in the \"protocol\" field.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The port configuration at Cloudflare's edge. May specify a single port, for example `\"tcp/1000\"`, or a range of ports, for example `\"tcp/1000-2000\"`.\n"
                },
                "proxyProtocol": {
                    "type": "string",
                    "description": "Enables Proxy Protocol to the origin. Refer to [Enable Proxy protocol](https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/) for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.\nAvailable values: \"off\", \"v1\", \"v2\", \"simple\".\n"
                },
                "tls": {
                    "type": "string",
                    "description": "The type of TLS termination associated with the application.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\".\n"
                },
                "trafficType": {
                    "type": "string",
                    "description": "Determines how data travels from the edge to your origin. When set to \"direct\", Spectrum will send traffic directly to your origin, and the application's type is derived from the \u003cspan pulumi-lang-nodejs=\"`protocol`\" pulumi-lang-dotnet=\"`Protocol`\" pulumi-lang-go=\"`protocol`\" pulumi-lang-python=\"`protocol`\" pulumi-lang-yaml=\"`protocol`\" pulumi-lang-java=\"`protocol`\"\u003e`protocol`\u003c/span\u003e. When set to \"http\" or \"https\", Spectrum will apply Cloudflare's HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly.\nAvailable values: \"direct\", \"http\", \"https\".\n"
                }
            },
            "type": "object",
            "required": [
                "argoSmartRouting",
                "createdOn",
                "dns",
                "edgeIps",
                "id",
                "ipFirewall",
                "modifiedOn",
                "originDirects",
                "originDns",
                "originPort",
                "protocol",
                "proxyProtocol",
                "tls",
                "trafficType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationsResultDns:getSpectrumApplicationsResultDns": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the DNS record associated with the application.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of DNS record associated with the application.\nAvailable values: \"CNAME\", \"ADDRESS\".\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationsResultEdgeIps:getSpectrumApplicationsResultEdgeIps": {
            "properties": {
                "connectivity": {
                    "type": "string",
                    "description": "The IP versions supported for inbound connections on Spectrum anycast IPs.\nAvailable values: \"all\", \"ipv4\", \"ipv6\".\n"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The array of customer owned IPs we broadcast via anycast for this hostname and application.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of edge IP configuration specified. Dynamically allocated edge IPs use Spectrum anycast IPs in accordance with the connectivity you specify. Only valid with CNAME DNS names.\nAvailable values: \"dynamic\", \"static\".\n"
                }
            },
            "type": "object",
            "required": [
                "connectivity",
                "ips",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSpectrumApplicationsResultOriginDns:getSpectrumApplicationsResultOriginDns": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the DNS record associated with the origin.\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "The TTL of our resolution of your DNS record in seconds.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of DNS record associated with the origin. \"\" is used to specify a combination of A/AAAA records.\nAvailable values: \"\", \"A\", \"AAAA\", \"SRV\".\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "ttl",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSsoConnectorVerification:getSsoConnectorVerification": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "DNS verification code. Add this entire string to the DNS TXT record of the email domain to validate ownership.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the verification code from the verification process.\nAvailable values: \"awaiting\", \"pending\", \"failed\", \"verified\".\n"
                }
            },
            "type": "object",
            "required": [
                "code",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSsoConnectorsResult:getSsoConnectorsResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "Timestamp for the creation of the SSO connector\n"
                },
                "emailDomain": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string",
                    "description": "SSO Connector identifier tag.\n"
                },
                "updatedOn": {
                    "type": "string",
                    "description": "Timestamp for the last update of the SSO connector\n"
                },
                "useFedrampLanguage": {
                    "type": "boolean",
                    "description": "Controls the display of FedRAMP language to the user during SSO login\n"
                },
                "verification": {
                    "$ref": "#/types/cloudflare:index/getSsoConnectorsResultVerification:getSsoConnectorsResultVerification"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "emailDomain",
                "enabled",
                "id",
                "updatedOn",
                "useFedrampLanguage",
                "verification"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getSsoConnectorsResultVerification:getSsoConnectorsResultVerification": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "DNS verification code. Add this entire string to the DNS TXT record of the email domain to validate ownership.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the verification code from the verification process.\nAvailable values: \"awaiting\", \"pending\", \"failed\", \"verified\".\n"
                }
            },
            "type": "object",
            "required": [
                "code",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamAudioTrackAudio:getStreamAudioTrackAudio": {
            "properties": {
                "default": {
                    "type": "boolean",
                    "description": "Denotes whether the audio track will be played by default in a player.\n"
                },
                "label": {
                    "type": "string",
                    "description": "A string to uniquely identify the track amongst other audio track labels for the specified video.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Specifies the processing status of the video.\nAvailable values: \"queued\", \"ready\", \"error\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                }
            },
            "type": "object",
            "required": [
                "default",
                "label",
                "status",
                "uid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamInput:getStreamInput": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The video height in pixels. A value of `-1` means the height is unknown. The value becomes available after the upload and before the video is ready.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The video width in pixels. A value of `-1` means the width is unknown. The value becomes available after the upload and before the video is ready.\n"
                }
            },
            "type": "object",
            "required": [
                "height",
                "width"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputRecording:getStreamLiveInputRecording": {
            "properties": {
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the origins allowed to display videos created with this input. Enter allowed origin domains in an array and use `*` for wildcard subdomains. An empty array allows videos to be viewed on any origin.\n"
                },
                "hideLiveViewerCount": {
                    "type": "boolean",
                    "description": "Disables reporting the number of live viewers when this property is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Specifies the recording behavior for the live input. Set this value to \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e to prevent a recording. Set the value to \u003cspan pulumi-lang-nodejs=\"`automatic`\" pulumi-lang-dotnet=\"`Automatic`\" pulumi-lang-go=\"`automatic`\" pulumi-lang-python=\"`automatic`\" pulumi-lang-yaml=\"`automatic`\" pulumi-lang-java=\"`automatic`\"\u003e`automatic`\u003c/span\u003e to begin a recording and transition to on-demand after Stream Live stops receiving input.\nAvailable values: \"off\", \"automatic\".\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates if a video using the live input has the `requireSignedURLs` property set. Also enforces access controls on any video recording of the livestream with the live input.\n"
                },
                "timeoutSeconds": {
                    "type": "integer",
                    "description": "Determines the amount of time a live input configured in \u003cspan pulumi-lang-nodejs=\"`automatic`\" pulumi-lang-dotnet=\"`Automatic`\" pulumi-lang-go=\"`automatic`\" pulumi-lang-python=\"`automatic`\" pulumi-lang-yaml=\"`automatic`\" pulumi-lang-java=\"`automatic`\"\u003e`automatic`\u003c/span\u003e mode should wait before a recording transitions from live to on-demand. \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e is recommended for most use cases and indicates the platform default should be used.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedOrigins",
                "hideLiveViewerCount",
                "mode",
                "requireSignedUrls",
                "timeoutSeconds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputRtmps:getStreamLiveInputRtmps": {
            "properties": {
                "streamKey": {
                    "type": "string",
                    "description": "The secret key to use when streaming via RTMPS to a live input.\n",
                    "secret": true
                },
                "url": {
                    "type": "string",
                    "description": "The RTMPS URL you provide to the broadcaster, which they stream live video to.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "streamKey",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputRtmpsPlayback:getStreamLiveInputRtmpsPlayback": {
            "properties": {
                "streamKey": {
                    "type": "string",
                    "description": "The secret key to use for playback via RTMPS.\n",
                    "secret": true
                },
                "url": {
                    "type": "string",
                    "description": "The URL used to play live video over RTMPS.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "streamKey",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputSrt:getStreamLiveInputSrt": {
            "properties": {
                "passphrase": {
                    "type": "string",
                    "description": "The secret key to use when streaming via SRT to a live input.\n",
                    "secret": true
                },
                "streamId": {
                    "type": "string",
                    "description": "The identifier of the live input to use when streaming via SRT.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The SRT URL you provide to the broadcaster, which they stream live video to.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "passphrase",
                "streamId",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputSrtPlayback:getStreamLiveInputSrtPlayback": {
            "properties": {
                "passphrase": {
                    "type": "string",
                    "description": "The secret key to use for playback via SRT.\n",
                    "secret": true
                },
                "streamId": {
                    "type": "string",
                    "description": "The identifier of the live input to use for playback via SRT.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL used to play live video over SRT.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "passphrase",
                "streamId",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputWebRtc:getStreamLiveInputWebRtc": {
            "properties": {
                "url": {
                    "type": "string",
                    "description": "The WebRTC URL you provide to the broadcaster, which they stream live video to.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamLiveInputWebRtcPlayback:getStreamLiveInputWebRtcPlayback": {
            "properties": {
                "url": {
                    "type": "string",
                    "description": "The URL used to play live video over WebRTC.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamPlayback:getStreamPlayback": {
            "properties": {
                "dash": {
                    "type": "string",
                    "description": "DASH Media Presentation Description for the video.\n"
                },
                "hls": {
                    "type": "string",
                    "description": "The HLS manifest for the video.\n"
                }
            },
            "type": "object",
            "required": [
                "dash",
                "hls"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamPublicDetails:getStreamPublicDetails": {
            "properties": {
                "channelLink": {
                    "type": "string"
                },
                "logo": {
                    "type": "string"
                },
                "mediaId": {
                    "type": "integer"
                },
                "shareLink": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "channelLink",
                "logo",
                "mediaId",
                "shareLink",
                "title"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamStatus:getStreamStatus": {
            "properties": {
                "errorReasonCode": {
                    "type": "string",
                    "description": "Specifies why the video failed to encode. This field is empty if the video is not in an \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e state. Preferred for programmatic use.\n"
                },
                "errorReasonText": {
                    "type": "string",
                    "description": "Specifies why the video failed to encode using a human readable error message in English. This field is empty if the video is not in an \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e state.\n"
                },
                "pctComplete": {
                    "type": "string",
                    "description": "Indicates the size of the entire upload in bytes. The value must be a non-negative integer.\n"
                },
                "state": {
                    "type": "string",
                    "description": "Specifies the processing status for all quality levels for a video.\nAvailable values: \"pendingupload\", \"downloading\", \"queued\", \"inprogress\", \"ready\", \"error\", \"live-inprogress\".\n"
                }
            },
            "type": "object",
            "required": [
                "errorReasonCode",
                "errorReasonText",
                "pctComplete",
                "state"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamWatermark:getStreamWatermark": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and a time a watermark profile was created.\n"
                },
                "downloadedFrom": {
                    "type": "string",
                    "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n"
                },
                "height": {
                    "type": "integer",
                    "description": "The height of the image in pixels.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of the watermark profile.\n"
                },
                "opacity": {
                    "type": "number",
                    "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                },
                "padding": {
                    "type": "number",
                    "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                },
                "position": {
                    "type": "string",
                    "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                },
                "scale": {
                    "type": "number",
                    "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the image in bytes.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the image in pixels.\n"
                }
            },
            "type": "object",
            "required": [
                "created",
                "downloadedFrom",
                "height",
                "name",
                "opacity",
                "padding",
                "position",
                "scale",
                "size",
                "uid",
                "width"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamWatermarksResult:getStreamWatermarksResult": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and a time a watermark profile was created.\n"
                },
                "downloadedFrom": {
                    "type": "string",
                    "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n"
                },
                "height": {
                    "type": "integer",
                    "description": "The height of the image in pixels.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of the watermark profile.\n"
                },
                "opacity": {
                    "type": "number",
                    "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                },
                "padding": {
                    "type": "number",
                    "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                },
                "position": {
                    "type": "string",
                    "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                },
                "scale": {
                    "type": "number",
                    "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the image in bytes.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the image in pixels.\n"
                }
            },
            "type": "object",
            "required": [
                "created",
                "downloadedFrom",
                "height",
                "name",
                "opacity",
                "padding",
                "position",
                "scale",
                "size",
                "uid",
                "width"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamsResult:getStreamsResult": {
            "properties": {
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin.\n"
                },
                "clippedFrom": {
                    "type": "string",
                    "description": "The unique identifier of the source video this video was clipped from.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time the media item was created.\n"
                },
                "creator": {
                    "type": "string",
                    "description": "A user-defined identifier for the media creator.\n"
                },
                "duration": {
                    "type": "number",
                    "description": "The duration of the video in seconds. A value of `-1` means the duration is unknown. The duration becomes available after the upload and before the video is ready.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/getStreamsResultInput:getStreamsResultInput"
                },
                "liveInput": {
                    "type": "string",
                    "description": "The live input ID used to upload a video with Stream Live.\n"
                },
                "maxDurationSeconds": {
                    "type": "integer",
                    "description": "The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown.\n"
                },
                "maxSizeBytes": {
                    "type": "integer",
                    "description": "The maximum size in bytes for the video upload.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "A user modifiable key-value store used to reference other systems of record for managing videos.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the media item was last modified.\n"
                },
                "playback": {
                    "$ref": "#/types/cloudflare:index/getStreamsResultPlayback:getStreamsResultPlayback"
                },
                "preview": {
                    "type": "string",
                    "description": "The video's preview page URI. This field is omitted until encoding is complete.\n"
                },
                "publicDetails": {
                    "$ref": "#/types/cloudflare:index/getStreamsResultPublicDetails:getStreamsResultPublicDetails",
                    "description": "Public details for the video including title, share link, channel link, and logo.\n"
                },
                "readyToStream": {
                    "type": "boolean",
                    "description": "Indicates whether the video is playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n"
                },
                "readyToStreamAt": {
                    "type": "string",
                    "description": "Indicates the time at which the video became playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the video can be a accessed using the UID. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, a signed token must be generated with a signing key to view the video.\n"
                },
                "scheduledDeletion": {
                    "type": "string",
                    "description": "Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the media item in bytes.\n"
                },
                "status": {
                    "$ref": "#/types/cloudflare:index/getStreamsResultStatus:getStreamsResultStatus",
                    "description": "Specifies a detailed status for a video. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, the \u003cspan pulumi-lang-nodejs=\"`step`\" pulumi-lang-dotnet=\"`Step`\" pulumi-lang-go=\"`step`\" pulumi-lang-python=\"`step`\" pulumi-lang-yaml=\"`step`\" pulumi-lang-java=\"`step`\"\u003e`step`\u003c/span\u003e field returns \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`manifest`\" pulumi-lang-dotnet=\"`Manifest`\" pulumi-lang-go=\"`manifest`\" pulumi-lang-python=\"`manifest`\" pulumi-lang-yaml=\"`manifest`\" pulumi-lang-java=\"`manifest`\"\u003e`manifest`\u003c/span\u003e. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e, `pctComplete` returns a number between 0 and 100 to indicate the approximate percent of completion. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, `errorReasonCode` and `errorReasonText` provide additional details.\n"
                },
                "thumbnail": {
                    "type": "string",
                    "description": "The media item's thumbnail URI. This field is omitted until encoding is complete.\n"
                },
                "thumbnailTimestampPct": {
                    "type": "number",
                    "description": "The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "uploadExpiry": {
                    "type": "string",
                    "description": "The date and time when the video upload URL is no longer valid for direct user uploads.\n"
                },
                "uploaded": {
                    "type": "string",
                    "description": "The date and time the media item was uploaded.\n"
                },
                "watermark": {
                    "$ref": "#/types/cloudflare:index/getStreamsResultWatermark:getStreamsResultWatermark"
                }
            },
            "type": "object",
            "required": [
                "allowedOrigins",
                "clippedFrom",
                "created",
                "creator",
                "duration",
                "input",
                "liveInput",
                "maxDurationSeconds",
                "maxSizeBytes",
                "meta",
                "modified",
                "playback",
                "preview",
                "publicDetails",
                "readyToStream",
                "readyToStreamAt",
                "requireSignedUrls",
                "scheduledDeletion",
                "size",
                "status",
                "thumbnail",
                "thumbnailTimestampPct",
                "uid",
                "uploadExpiry",
                "uploaded",
                "watermark"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamsResultInput:getStreamsResultInput": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The video height in pixels. A value of `-1` means the height is unknown. The value becomes available after the upload and before the video is ready.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The video width in pixels. A value of `-1` means the width is unknown. The value becomes available after the upload and before the video is ready.\n"
                }
            },
            "type": "object",
            "required": [
                "height",
                "width"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamsResultPlayback:getStreamsResultPlayback": {
            "properties": {
                "dash": {
                    "type": "string",
                    "description": "DASH Media Presentation Description for the video.\n"
                },
                "hls": {
                    "type": "string",
                    "description": "The HLS manifest for the video.\n"
                }
            },
            "type": "object",
            "required": [
                "dash",
                "hls"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamsResultPublicDetails:getStreamsResultPublicDetails": {
            "properties": {
                "channelLink": {
                    "type": "string"
                },
                "logo": {
                    "type": "string"
                },
                "mediaId": {
                    "type": "integer"
                },
                "shareLink": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "channelLink",
                "logo",
                "mediaId",
                "shareLink",
                "title"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamsResultStatus:getStreamsResultStatus": {
            "properties": {
                "errorReasonCode": {
                    "type": "string",
                    "description": "Specifies why the video failed to encode. This field is empty if the video is not in an \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e state. Preferred for programmatic use.\n"
                },
                "errorReasonText": {
                    "type": "string",
                    "description": "Specifies why the video failed to encode using a human readable error message in English. This field is empty if the video is not in an \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e state.\n"
                },
                "pctComplete": {
                    "type": "string",
                    "description": "Indicates the size of the entire upload in bytes. The value must be a non-negative integer.\n"
                },
                "state": {
                    "type": "string",
                    "description": "Specifies the processing status for all quality levels for a video.\nAvailable values: \"pendingupload\", \"downloading\", \"queued\", \"inprogress\", \"ready\", \"error\", \"live-inprogress\".\n"
                }
            },
            "type": "object",
            "required": [
                "errorReasonCode",
                "errorReasonText",
                "pctComplete",
                "state"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getStreamsResultWatermark:getStreamsResultWatermark": {
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and a time a watermark profile was created.\n"
                },
                "downloadedFrom": {
                    "type": "string",
                    "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n"
                },
                "height": {
                    "type": "integer",
                    "description": "The height of the image in pixels.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of the watermark profile.\n"
                },
                "opacity": {
                    "type": "number",
                    "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                },
                "padding": {
                    "type": "number",
                    "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                },
                "position": {
                    "type": "string",
                    "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                },
                "scale": {
                    "type": "number",
                    "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the image in bytes.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the image in pixels.\n"
                }
            },
            "type": "object",
            "required": [
                "created",
                "downloadedFrom",
                "height",
                "name",
                "opacity",
                "padding",
                "position",
                "scale",
                "size",
                "uid",
                "width"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationConfigCredentials:getTokenValidationConfigCredentials": {
            "properties": {
                "keys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationConfigCredentialsKey:getTokenValidationConfigCredentialsKey"
                    }
                }
            },
            "type": "object",
            "required": [
                "keys"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationConfigCredentialsKey:getTokenValidationConfigCredentialsKey": {
            "properties": {
                "alg": {
                    "type": "string",
                    "description": "Algorithm\nAvailable values: \"RS256\", \"RS384\", \"RS512\", \"PS256\", \"PS384\", \"PS512\", \"ES256\", \"ES384\".\n"
                },
                "crv": {
                    "type": "string",
                    "description": "Curve\nAvailable values: \"P-256\", \"P-384\".\n"
                },
                "e": {
                    "type": "string",
                    "description": "RSA exponent\n"
                },
                "kid": {
                    "type": "string",
                    "description": "Key ID\n"
                },
                "kty": {
                    "type": "string",
                    "description": "Key Type\nAvailable values: \"RSA\", \"EC\".\n"
                },
                "n": {
                    "type": "string",
                    "description": "RSA modulus\n"
                },
                "x": {
                    "type": "string",
                    "description": "X EC coordinate\n"
                },
                "y": {
                    "type": "string",
                    "description": "Y EC coordinate\n"
                }
            },
            "type": "object",
            "required": [
                "alg",
                "crv",
                "e",
                "kid",
                "kty",
                "n",
                "x",
                "y"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationConfigsResult:getTokenValidationConfigsResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "credentials": {
                    "$ref": "#/types/cloudflare:index/getTokenValidationConfigsResultCredentials:getTokenValidationConfigsResultCredentials"
                },
                "description": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                },
                "tokenSources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tokenType": {
                    "type": "string",
                    "description": "Available values: \"JWT\".\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "credentials",
                "description",
                "id",
                "lastUpdated",
                "title",
                "tokenSources",
                "tokenType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationConfigsResultCredentials:getTokenValidationConfigsResultCredentials": {
            "properties": {
                "keys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationConfigsResultCredentialsKey:getTokenValidationConfigsResultCredentialsKey"
                    }
                }
            },
            "type": "object",
            "required": [
                "keys"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationConfigsResultCredentialsKey:getTokenValidationConfigsResultCredentialsKey": {
            "properties": {
                "alg": {
                    "type": "string",
                    "description": "Algorithm\nAvailable values: \"RS256\", \"RS384\", \"RS512\", \"PS256\", \"PS384\", \"PS512\", \"ES256\", \"ES384\".\n"
                },
                "crv": {
                    "type": "string",
                    "description": "Curve\nAvailable values: \"P-256\", \"P-384\".\n"
                },
                "e": {
                    "type": "string",
                    "description": "RSA exponent\n"
                },
                "kid": {
                    "type": "string",
                    "description": "Key ID\n"
                },
                "kty": {
                    "type": "string",
                    "description": "Key Type\nAvailable values: \"RSA\", \"EC\".\n"
                },
                "n": {
                    "type": "string",
                    "description": "RSA modulus\n"
                },
                "x": {
                    "type": "string",
                    "description": "X EC coordinate\n"
                },
                "y": {
                    "type": "string",
                    "description": "Y EC coordinate\n"
                }
            },
            "type": "object",
            "required": [
                "alg",
                "crv",
                "e",
                "kid",
                "kty",
                "n",
                "x",
                "y"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesFilter:getTokenValidationRulesFilter": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Toggle rule on or off.\n"
                },
                "host": {
                    "type": "string",
                    "description": "Select rules with this host in \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "Select rules with this host in \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Select rules with these IDs.\n"
                },
                "tokenConfigurations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Select rules using any of these token configurations.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getTokenValidationRulesListResult:getTokenValidationRulesListResult": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description that gives more details than \u003cspan pulumi-lang-nodejs=\"`title`\" pulumi-lang-dotnet=\"`Title`\" pulumi-lang-go=\"`title`\" pulumi-lang-python=\"`title`\" pulumi-lang-yaml=\"`title`\" pulumi-lang-java=\"`title`\"\u003e`title`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Toggle rule on or off.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "Rule expression. Requests that fail to match this expression will be subject to \u003cspan pulumi-lang-nodejs=\"`action`\" pulumi-lang-dotnet=\"`Action`\" pulumi-lang-go=\"`action`\" pulumi-lang-python=\"`action`\" pulumi-lang-yaml=\"`action`\" pulumi-lang-java=\"`action`\"\u003e`action`\u003c/span\u003e.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Select rules with these IDs.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "selector": {
                    "$ref": "#/types/cloudflare:index/getTokenValidationRulesListResultSelector:getTokenValidationRulesListResultSelector",
                    "description": "Select operations covered by this rule.\n\nFor details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/).\n"
                },
                "title": {
                    "type": "string",
                    "description": "A human-readable name for the rule.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "createdAt",
                "description",
                "enabled",
                "expression",
                "id",
                "lastUpdated",
                "selector",
                "title"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesListResultSelector:getTokenValidationRulesListResultSelector": {
            "properties": {
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesListResultSelectorExclude:getTokenValidationRulesListResultSelectorExclude"
                    },
                    "description": "Ignore operations that were otherwise included by \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesListResultSelectorInclude:getTokenValidationRulesListResultSelectorInclude"
                    },
                    "description": "Select all matching operations.\n"
                }
            },
            "type": "object",
            "required": [
                "excludes",
                "includes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesListResultSelectorExclude:getTokenValidationRulesListResultSelectorExclude": {
            "properties": {
                "operationIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Excluded operation IDs.\n"
                }
            },
            "type": "object",
            "required": [
                "operationIds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesListResultSelectorInclude:getTokenValidationRulesListResultSelectorInclude": {
            "properties": {
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Included hostnames.\n"
                }
            },
            "type": "object",
            "required": [
                "hosts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesSelector:getTokenValidationRulesSelector": {
            "properties": {
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesSelectorExclude:getTokenValidationRulesSelectorExclude"
                    },
                    "description": "Ignore operations that were otherwise included by \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesSelectorInclude:getTokenValidationRulesSelectorInclude"
                    },
                    "description": "Select all matching operations.\n"
                }
            },
            "type": "object",
            "required": [
                "excludes",
                "includes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesSelectorExclude:getTokenValidationRulesSelectorExclude": {
            "properties": {
                "operationIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Excluded operation IDs.\n"
                }
            },
            "type": "object",
            "required": [
                "operationIds"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTokenValidationRulesSelectorInclude:getTokenValidationRulesSelectorInclude": {
            "properties": {
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Included hostnames.\n"
                }
            },
            "type": "object",
            "required": [
                "hosts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getTurnstileWidgetFilter:getTurnstileWidgetFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order widgets.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "filter": {
                    "type": "string",
                    "description": "Filter widgets by field using case-insensitive substring matching.\nFormat: `field:value`\n"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order widgets by.\nAvailable values: \"id\", \"sitekey\", \"name\", \u003cspan pulumi-lang-nodejs=\"\"createdOn\"\" pulumi-lang-dotnet=\"\"CreatedOn\"\" pulumi-lang-go=\"\"createdOn\"\" pulumi-lang-python=\"\"created_on\"\" pulumi-lang-yaml=\"\"createdOn\"\" pulumi-lang-java=\"\"createdOn\"\"\u003e\"createdOn\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"modifiedOn\"\" pulumi-lang-dotnet=\"\"ModifiedOn\"\" pulumi-lang-go=\"\"modifiedOn\"\" pulumi-lang-python=\"\"modified_on\"\" pulumi-lang-yaml=\"\"modifiedOn\"\" pulumi-lang-java=\"\"modifiedOn\"\"\u003e\"modifiedOn\"\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getTurnstileWidgetsResult:getTurnstileWidgetsResult": {
            "properties": {
                "botFightMode": {
                    "type": "boolean",
                    "description": "If bot*fight*mode is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, Cloudflare issues computationally\nexpensive challenges in response to malicious bots (ENT only).\n"
                },
                "clearanceLevel": {
                    "type": "string",
                    "description": "If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance,\nthis setting can determine the clearance level to be set\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"noClearance\"\" pulumi-lang-dotnet=\"\"NoClearance\"\" pulumi-lang-go=\"\"noClearance\"\" pulumi-lang-python=\"\"no_clearance\"\" pulumi-lang-yaml=\"\"noClearance\"\" pulumi-lang-java=\"\"noClearance\"\"\u003e\"noClearance\"\u003c/span\u003e, \"jschallenge\", \"managed\", \"interactive\".\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the widget was created.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ephemeralId": {
                    "type": "boolean",
                    "description": "Return the Ephemeral ID in /siteverify (ENT only).\n"
                },
                "id": {
                    "type": "string",
                    "description": "Widget item identifier tag.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Widget Mode\nAvailable values: \"non-interactive\", \"invisible\", \"managed\".\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the widget was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human readable widget name. Not unique. Cloudflare suggests that you\nset this to a meaningful string to make it easier to identify your\nwidget, and where it is used.\n"
                },
                "offlabel": {
                    "type": "boolean",
                    "description": "Do not show any Cloudflare branding on the widget (ENT only).\n"
                },
                "region": {
                    "type": "string",
                    "description": "Region where this widget can be used. This cannot be changed after creation.\nAvailable values: \"world\", \"china\".\n"
                },
                "sitekey": {
                    "type": "string",
                    "description": "Widget item identifier tag.\n"
                }
            },
            "type": "object",
            "required": [
                "botFightMode",
                "clearanceLevel",
                "createdOn",
                "domains",
                "ephemeralId",
                "id",
                "mode",
                "modifiedOn",
                "name",
                "offlabel",
                "region",
                "sitekey"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserAgentBlockingRuleConfiguration:getUserAgentBlockingRuleConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target for this rule. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ua`\" pulumi-lang-dotnet=\"`Ua`\" pulumi-lang-go=\"`ua`\" pulumi-lang-python=\"`ua`\" pulumi-lang-yaml=\"`ua`\" pulumi-lang-java=\"`ua`\"\u003e`ua`\u003c/span\u003e for User Agent Blocking rules.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The exact user agent string to match. This value will be compared to the received `User-Agent` HTTP header value.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserAgentBlockingRuleFilter:getUserAgentBlockingRuleFilter": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A string to search for in the description of existing rules.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                },
                "userAgent": {
                    "type": "string",
                    "description": "A string to search for in the user agent values of existing rules.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getUserAgentBlockingRulesResult:getUserAgentBlockingRulesResult": {
            "properties": {
                "configuration": {
                    "$ref": "#/types/cloudflare:index/getUserAgentBlockingRulesResultConfiguration:getUserAgentBlockingRulesResultConfiguration",
                    "description": "The configuration object for the current rule.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the User Agent Blocking rule.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                }
            },
            "type": "object",
            "required": [
                "configuration",
                "description",
                "id",
                "mode",
                "paused"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserAgentBlockingRulesResultConfiguration:getUserAgentBlockingRulesResultConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target for this rule. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ua`\" pulumi-lang-dotnet=\"`Ua`\" pulumi-lang-go=\"`ua`\" pulumi-lang-python=\"`ua`\" pulumi-lang-yaml=\"`ua`\" pulumi-lang-java=\"`ua`\"\u003e`ua`\u003c/span\u003e for User Agent Blocking rules.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The exact user agent string to match. This value will be compared to the received `User-Agent` HTTP header value.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupFilter:getUserGroupFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "The sort order of returned user groups by name (ascending or descending).\nAvailable values: \"asc\", \"desc\".\n"
                },
                "fuzzyName": {
                    "type": "string",
                    "description": "A string used for searching for user groups containing that substring.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the user group to be fetched.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the user group to be fetched.\n"
                }
            },
            "type": "object",
            "required": [
                "direction"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupMembersMember:getUserGroupMembersMember": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "id": {
                    "type": "string",
                    "description": "User Group identifier tag.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The member's status in the account.\nAvailable values: \"accepted\", \"pending\".\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "id",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicy:getUserGroupPolicy": {
            "properties": {
                "access": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupPolicyPermissionGroup:getUserGroupPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resourceGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupPolicyResourceGroup:getUserGroupPolicyResourceGroup"
                    },
                    "description": "A list of resource groups that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "id",
                "permissionGroups",
                "resourceGroups"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicyPermissionGroup:getUserGroupPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getUserGroupPolicyPermissionGroupMeta:getUserGroupPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicyPermissionGroupMeta:getUserGroupPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicyResourceGroup:getUserGroupPolicyResourceGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the resource group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getUserGroupPolicyResourceGroupMeta:getUserGroupPolicyResourceGroupMeta",
                    "description": "Attributes associated to the resource group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the resource group.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupPolicyResourceGroupScope:getUserGroupPolicyResourceGroupScope"
                    },
                    "description": "The scope associated to the resource group\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicyResourceGroupMeta:getUserGroupPolicyResourceGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicyResourceGroupScope:getUserGroupPolicyResourceGroupScope": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)\n"
                },
                "objects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupPolicyResourceGroupScopeObject:getUserGroupPolicyResourceGroupScopeObject"
                    },
                    "description": "A list of scope objects for additional context.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "objects"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupPolicyResourceGroupScopeObject:getUserGroupPolicyResourceGroupScopeObject": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)\n"
                }
            },
            "type": "object",
            "required": [
                "key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResult:getUserGroupsResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "Timestamp for the creation of the user group\n"
                },
                "id": {
                    "type": "string",
                    "description": "User Group identifier tag.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time the user group was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the user group.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicy:getUserGroupsResultPolicy"
                    },
                    "description": "Policies attached to the User group\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "id",
                "modifiedOn",
                "name",
                "policies"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicy:getUserGroupsResultPolicy": {
            "properties": {
                "access": {
                    "type": "string",
                    "description": "Allow or deny operations against the resources.\nAvailable values: \"allow\", \"deny\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Policy identifier.\n"
                },
                "permissionGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicyPermissionGroup:getUserGroupsResultPolicyPermissionGroup"
                    },
                    "description": "A set of permission groups that are specified to the policy.\n"
                },
                "resourceGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicyResourceGroup:getUserGroupsResultPolicyResourceGroup"
                    },
                    "description": "A list of resource groups that the policy applies to.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "id",
                "permissionGroups",
                "resourceGroups"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicyPermissionGroup:getUserGroupsResultPolicyPermissionGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the permission group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicyPermissionGroupMeta:getUserGroupsResultPolicyPermissionGroupMeta",
                    "description": "Attributes associated to the permission group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission group.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicyPermissionGroupMeta:getUserGroupsResultPolicyPermissionGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicyResourceGroup:getUserGroupsResultPolicyResourceGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier of the resource group.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicyResourceGroupMeta:getUserGroupsResultPolicyResourceGroupMeta",
                    "description": "Attributes associated to the resource group.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the resource group.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicyResourceGroupScope:getUserGroupsResultPolicyResourceGroupScope"
                    },
                    "description": "The scope associated to the resource group\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "meta",
                "name",
                "scopes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicyResourceGroupMeta:getUserGroupsResultPolicyResourceGroupMeta": {
            "properties": {
                "key": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicyResourceGroupScope:getUserGroupsResultPolicyResourceGroupScope": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)\n"
                },
                "objects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getUserGroupsResultPolicyResourceGroupScopeObject:getUserGroupsResultPolicyResourceGroupScopeObject"
                    },
                    "description": "A list of scope objects for additional context.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "objects"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserGroupsResultPolicyResourceGroupScopeObject:getUserGroupsResultPolicyResourceGroupScopeObject": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)\n"
                }
            },
            "type": "object",
            "required": [
                "key"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getUserOrganization:getUserOrganization": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "Organization name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access permissions for this User.\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of roles that a user has within an organization.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Whether the user is a member of the organization or has an invitation pending.\nAvailable values: \"member\", \"invited\".\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "permissions",
                "roles",
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getVulnerabilityScannerCredentialSetsResult:getVulnerabilityScannerCredentialSetsResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Credential set identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getVulnerabilityScannerCredentialsResult:getVulnerabilityScannerCredentialsResult": {
            "properties": {
                "credentialSetId": {
                    "type": "string",
                    "description": "Parent credential set identifier.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Credential identifier.\n"
                },
                "location": {
                    "type": "string",
                    "description": "Where the credential is attached in outgoing requests.\nAvailable values: \"header\", \"cookie\".\n"
                },
                "locationName": {
                    "type": "string",
                    "description": "Name of the header or cookie where the credential is attached.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                }
            },
            "type": "object",
            "required": [
                "credentialSetId",
                "id",
                "location",
                "locationName",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getVulnerabilityScannerTargetEnvironmentTarget:getVulnerabilityScannerTargetEnvironmentTarget": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"zone\".\n"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "Cloudflare zone tag. The zone must belong to the account.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "zoneTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getVulnerabilityScannerTargetEnvironmentsResult:getVulnerabilityScannerTargetEnvironmentsResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Optional description providing additional context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Target environment identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/getVulnerabilityScannerTargetEnvironmentsResultTarget:getVulnerabilityScannerTargetEnvironmentsResultTarget",
                    "description": "Identifies the Cloudflare asset to scan. Uses a \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e discriminator.\nCurrently the service supports only \u003cspan pulumi-lang-nodejs=\"`zone`\" pulumi-lang-dotnet=\"`Zone`\" pulumi-lang-go=\"`zone`\" pulumi-lang-python=\"`zone`\" pulumi-lang-yaml=\"`zone`\" pulumi-lang-java=\"`zone`\"\u003e`zone`\u003c/span\u003e targets.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "id",
                "name",
                "target"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getVulnerabilityScannerTargetEnvironmentsResultTarget:getVulnerabilityScannerTargetEnvironmentsResultTarget": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Available values: \"zone\".\n"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "Cloudflare zone tag. The zone must belong to the account.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "zoneTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWaitingRoomAdditionalRoute:getWaitingRoomAdditionalRoute": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).\n"
                },
                "path": {
                    "type": "string",
                    "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "path"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWaitingRoomCookieAttributes:getWaitingRoomCookieAttributes": {
            "properties": {
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on the waiting room cookie. Value \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e will be translated to \u003cspan pulumi-lang-nodejs=\"`lax`\" pulumi-lang-dotnet=\"`Lax`\" pulumi-lang-go=\"`lax`\" pulumi-lang-python=\"`lax`\" pulumi-lang-yaml=\"`lax`\" pulumi-lang-java=\"`lax`\"\u003e`lax`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e depending if **Always Use HTTPS** is enabled. Note that when using value \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, the secure attribute cannot be set to \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e.\nAvailable values: \"auto\", \"lax\", \"none\", \"strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on the waiting room cookie. Value \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e indicates that the Secure attribute will be set in the Set-Cookie header, \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e indicates that the Secure attribute will not be set, and \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e will set the Secure attribute depending if **Always Use HTTPS** is enabled.\nAvailable values: \"auto\", \"always\", \"never\".\n"
                }
            },
            "type": "object",
            "required": [
                "samesite",
                "secure"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWaitingRoomEventsResult:getWaitingRoomEventsResult": {
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "customPageHtml": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`customPageHtml`\" pulumi-lang-dotnet=\"`CustomPageHtml`\" pulumi-lang-go=\"`customPageHtml`\" pulumi-lang-python=\"`custom_page_html`\" pulumi-lang-yaml=\"`customPageHtml`\" pulumi-lang-java=\"`customPageHtml`\"\u003e`customPageHtml`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A note that you can use to add more details about the event.\n"
                },
                "disableSessionRenewal": {
                    "type": "boolean",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`disableSessionRenewal`\" pulumi-lang-dotnet=\"`DisableSessionRenewal`\" pulumi-lang-go=\"`disableSessionRenewal`\" pulumi-lang-python=\"`disable_session_renewal`\" pulumi-lang-yaml=\"`disableSessionRenewal`\" pulumi-lang-java=\"`disableSessionRenewal`\"\u003e`disableSessionRenewal`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "eventEndTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks the end of the event.\n"
                },
                "eventStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e.\n"
                },
                "id": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "newUsersPerMinute": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property is also set.\n"
                },
                "prequeueStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e.\n"
                },
                "queueingMethod": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "sessionDuration": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`sessionDuration`\" pulumi-lang-dotnet=\"`SessionDuration`\" pulumi-lang-go=\"`sessionDuration`\" pulumi-lang-python=\"`session_duration`\" pulumi-lang-yaml=\"`sessionDuration`\" pulumi-lang-java=\"`sessionDuration`\"\u003e`sessionDuration`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "shuffleAtEventStart": {
                    "type": "boolean",
                    "description": "If enabled, users in the prequeue will be shuffled randomly at the \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e. Requires that \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Suspends or allows an event. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the event is ignored and traffic will be handled based on the waiting room configuration.\n"
                },
                "totalActiveUsers": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property is also set.\n"
                },
                "turnstileAction": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileAction`\" pulumi-lang-dotnet=\"`TurnstileAction`\" pulumi-lang-go=\"`turnstileAction`\" pulumi-lang-python=\"`turnstile_action`\" pulumi-lang-yaml=\"`turnstileAction`\" pulumi-lang-java=\"`turnstileAction`\"\u003e`turnstileAction`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e.\n"
                },
                "turnstileMode": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileMode`\" pulumi-lang-dotnet=\"`TurnstileMode`\" pulumi-lang-go=\"`turnstileMode`\" pulumi-lang-python=\"`turnstile_mode`\" pulumi-lang-yaml=\"`turnstileMode`\" pulumi-lang-java=\"`turnstileMode`\"\u003e`turnstileMode`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"off\", \"invisible\", \"visible*non*interactive\", \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "customPageHtml",
                "description",
                "disableSessionRenewal",
                "eventEndTime",
                "eventStartTime",
                "id",
                "modifiedOn",
                "name",
                "newUsersPerMinute",
                "prequeueStartTime",
                "queueingMethod",
                "sessionDuration",
                "shuffleAtEventStart",
                "suspended",
                "totalActiveUsers",
                "turnstileAction",
                "turnstileMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWaitingRoomsResult:getWaitingRoomsResult": {
            "properties": {
                "additionalRoutes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWaitingRoomsResultAdditionalRoute:getWaitingRoomsResultAdditionalRoute"
                    },
                    "description": "Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.\n"
                },
                "cookieAttributes": {
                    "$ref": "#/types/cloudflare:index/getWaitingRoomsResultCookieAttributes:getWaitingRoomsResultCookieAttributes",
                    "description": "Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position.\n"
                },
                "cookieSuffix": {
                    "type": "string",
                    "description": "Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(_*cf*waitingroom). If \u003cspan pulumi-lang-nodejs=\"`cookieSuffix`\" pulumi-lang-dotnet=\"`CookieSuffix`\" pulumi-lang-go=\"`cookieSuffix`\" pulumi-lang-python=\"`cookie_suffix`\" pulumi-lang-yaml=\"`cookieSuffix`\" pulumi-lang-java=\"`cookieSuffix`\"\u003e`cookieSuffix`\u003c/span\u003e is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using \u003cspan pulumi-lang-nodejs=\"`additionalRoutes`\" pulumi-lang-dotnet=\"`AdditionalRoutes`\" pulumi-lang-go=\"`additionalRoutes`\" pulumi-lang-python=\"`additional_routes`\" pulumi-lang-yaml=\"`additionalRoutes`\" pulumi-lang-java=\"`additionalRoutes`\"\u003e`additionalRoutes`\u003c/span\u003e.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "customPageHtml": {
                    "type": "string",
                    "description": "Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom*page*html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge:\n"
                },
                "defaultTemplateLanguage": {
                    "type": "string",
                    "description": "The language of the default page template. If no\u003cspan pulumi-lang-nodejs=\" defaultTemplateLanguage \" pulumi-lang-dotnet=\" DefaultTemplateLanguage \" pulumi-lang-go=\" defaultTemplateLanguage \" pulumi-lang-python=\" default_template_language \" pulumi-lang-yaml=\" defaultTemplateLanguage \" pulumi-lang-java=\" defaultTemplateLanguage \"\u003e defaultTemplateLanguage \u003c/span\u003eis provided, then `en-US` (English) will be used.\nAvailable values: \"en-US\", \"es-ES\", \"de-DE\", \"fr-FR\", \"it-IT\", \"ja-JP\", \"ko-KR\", \"pt-BR\", \"zh-CN\", \"zh-TW\", \"nl-NL\", \"pl-PL\", \"id-ID\", \"tr-TR\", \"ar-EG\", \"ru-RU\", \"fa-IR\", \"bg-BG\", \"hr-HR\", \"cs-CZ\", \"da-DK\", \"fi-FI\", \"lt-LT\", \"ms-MY\", \"nb-NO\", \"ro-RO\", \"el-GR\", \"he-IL\", \"hi-IN\", \"hu-HU\", \"sr-BA\", \"sk-SK\", \"sl-SI\", \"sv-SE\", \"tl-PH\", \"th-TH\", \"uk-UA\", \"vi-VN\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "A note that you can use to add more details about the waiting room.\n"
                },
                "disableSessionRenewal": {
                    "type": "boolean",
                    "description": "Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, an accepted user will have\u003cspan pulumi-lang-nodejs=\" sessionDuration \" pulumi-lang-dotnet=\" SessionDuration \" pulumi-lang-go=\" sessionDuration \" pulumi-lang-python=\" session_duration \" pulumi-lang-yaml=\" sessionDuration \" pulumi-lang-java=\" sessionDuration \"\u003e sessionDuration \u003c/span\u003eminutes to browse the site. After that, they will have to go through the waiting room again. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, a user's session cookie will be automatically renewed on every request.\n"
                },
                "enabledOriginCommands": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of enabled origin commands.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique.\n"
                },
                "id": {
                    "type": "string"
                },
                "jsonResponseEnabled": {
                    "type": "boolean",
                    "description": "Only available for the Waiting Room Advanced subscription. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields:\n1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**).\n2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.\n3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`.\n4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile).\n5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it.\n6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile).\n7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**.\n8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment.\n9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.\n10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change.\n11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, there is no specified refresh time —\\_it will always be **zero**.\n12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.\n13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.\n14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.\n15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin.\n16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue.\n17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists.\n18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts.\n19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts.\n20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**.\n21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends.\n22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**.\n23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.\n24. \u003cspan pulumi-lang-nodejs=\"`turnstile`\" pulumi-lang-dotnet=\"`Turnstile`\" pulumi-lang-go=\"`turnstile`\" pulumi-lang-python=\"`turnstile`\" pulumi-lang-yaml=\"`turnstile`\" pulumi-lang-java=\"`turnstile`\"\u003e`turnstile`\u003c/span\u003e: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the \u003cspan pulumi-lang-nodejs=\"`customHtml`\" pulumi-lang-dotnet=\"`CustomHtml`\" pulumi-lang-go=\"`customHtml`\" pulumi-lang-python=\"`custom_html`\" pulumi-lang-yaml=\"`customHtml`\" pulumi-lang-java=\"`customHtml`\"\u003e`customHtml`\u003c/span\u003e template to ensure the Turnstile widget appears.\n25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.\n\nAn example cURL to a waiting room could be:\n\n\tcurl -X GET \"https://example.com/waitingroom\" \\\n\t\t-H \"Accept: application/json\"\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 0,\n\t\t\t\"waitTime50Percentile\": 0,\n\t\t\t\"waitTime75Percentile\": 0,\n\t\t\t\"waitTimeFormatted\": \"10 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"fifo\",\n\t\t\t\"isFIFOQueue\": true,\n\t\t\t\"isRandomQueue\": false,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": false,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 0,\n\t\t\t\"timeUntilEventEndFormatted\": \"unavailable\",\n\t\t\t\"shuffleAtEventStart\": false\n\t\t}\n\t}\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 5,\n\t\t\t\"waitTime50Percentile\": 10,\n\t\t\t\"waitTime75Percentile\": 15,\n\t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"random\",\n\t\t\t\"isFIFOQueue\": false,\n\t\t\t\"isRandomQueue\": true,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": true,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 15,\n\t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\",\n\t\t\t\"shuffleAtEventStart\": true\n\t\t}\n\t}\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "newUsersPerMinute": {
                    "type": "integer",
                    "description": "Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world.\n"
                },
                "nextEventPrequeueStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when the next event will begin queueing.\n"
                },
                "nextEventStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when the next event will start.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.\n"
                },
                "queueAll": {
                    "type": "boolean",
                    "description": "If\u003cspan pulumi-lang-nodejs=\" queueAll \" pulumi-lang-dotnet=\" QueueAll \" pulumi-lang-go=\" queueAll \" pulumi-lang-python=\" queue_all \" pulumi-lang-yaml=\" queueAll \" pulumi-lang-java=\" queueAll \"\u003e queueAll \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable.\n"
                },
                "queueingMethod": {
                    "type": "string",
                    "description": "Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if \u003cspan pulumi-lang-nodejs=\"`queueAll`\" pulumi-lang-dotnet=\"`QueueAll`\" pulumi-lang-go=\"`queueAll`\" pulumi-lang-python=\"`queue_all`\" pulumi-lang-yaml=\"`queueAll`\" pulumi-lang-java=\"`queueAll`\"\u003e`queueAll`\u003c/span\u003e is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are:\n1. \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.\n2. \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e: Random queue where customers gain access randomly, regardless of arrival time.\n3. \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with \u003cspan pulumi-lang-nodejs=\"`suspended`\" pulumi-lang-dotnet=\"`Suspended`\" pulumi-lang-go=\"`suspended`\" pulumi-lang-python=\"`suspended`\" pulumi-lang-yaml=\"`suspended`\" pulumi-lang-java=\"`suspended`\"\u003e`suspended`\u003c/span\u003e) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa.\n4. \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, and its events override this with \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**.\nAvailable values: \"fifo\", \"random\", \"passthrough\", \"reject\".\n"
                },
                "queueingStatusCode": {
                    "type": "integer",
                    "description": "HTTP status code returned to a user while in the queue.\nAvailable values: 200, 202, 429.\n"
                },
                "sessionDuration": {
                    "type": "integer",
                    "description": "Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route.\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Suspends or allows traffic going to the waiting room. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the traffic will not go to the waiting room.\n"
                },
                "totalActiveUsers": {
                    "type": "integer",
                    "description": "Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.\n"
                },
                "turnstileAction": {
                    "type": "string",
                    "description": "Which action to take when a bot is detected using Turnstile. \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e will\nhave no impact on queueing behavior, simply keeping track of how many\nbots are detected in Waiting Room Analytics. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e will send\nbots to a false queueing state, where they will never reach your\norigin. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e.\n"
                },
                "turnstileMode": {
                    "type": "string",
                    "description": "Which Turnstile widget type to use for detecting bot traffic. See\n[the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types)\nfor the definitions of these widget types. Set to \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e to disable the\nTurnstile integration entirely. Setting this to anything other than\n\u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`invisible`\" pulumi-lang-dotnet=\"`Invisible`\" pulumi-lang-go=\"`invisible`\" pulumi-lang-python=\"`invisible`\" pulumi-lang-yaml=\"`invisible`\" pulumi-lang-java=\"`invisible`\"\u003e`invisible`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"off\", \"invisible\", \u003cspan pulumi-lang-nodejs=\"\"visibleNonInteractive\"\" pulumi-lang-dotnet=\"\"VisibleNonInteractive\"\" pulumi-lang-go=\"\"visibleNonInteractive\"\" pulumi-lang-python=\"\"visible_non_interactive\"\" pulumi-lang-yaml=\"\"visibleNonInteractive\"\" pulumi-lang-java=\"\"visibleNonInteractive\"\"\u003e\"visibleNonInteractive\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "additionalRoutes",
                "cookieAttributes",
                "cookieSuffix",
                "createdOn",
                "customPageHtml",
                "defaultTemplateLanguage",
                "description",
                "disableSessionRenewal",
                "enabledOriginCommands",
                "host",
                "id",
                "jsonResponseEnabled",
                "modifiedOn",
                "name",
                "newUsersPerMinute",
                "nextEventPrequeueStartTime",
                "nextEventStartTime",
                "path",
                "queueAll",
                "queueingMethod",
                "queueingStatusCode",
                "sessionDuration",
                "suspended",
                "totalActiveUsers",
                "turnstileAction",
                "turnstileMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWaitingRoomsResultAdditionalRoute:getWaitingRoomsResultAdditionalRoute": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).\n"
                },
                "path": {
                    "type": "string",
                    "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "path"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWaitingRoomsResultCookieAttributes:getWaitingRoomsResultCookieAttributes": {
            "properties": {
                "samesite": {
                    "type": "string",
                    "description": "Configures the SameSite attribute on the waiting room cookie. Value \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e will be translated to \u003cspan pulumi-lang-nodejs=\"`lax`\" pulumi-lang-dotnet=\"`Lax`\" pulumi-lang-go=\"`lax`\" pulumi-lang-python=\"`lax`\" pulumi-lang-yaml=\"`lax`\" pulumi-lang-java=\"`lax`\"\u003e`lax`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e depending if **Always Use HTTPS** is enabled. Note that when using value \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, the secure attribute cannot be set to \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e.\nAvailable values: \"auto\", \"lax\", \"none\", \"strict\".\n"
                },
                "secure": {
                    "type": "string",
                    "description": "Configures the Secure attribute on the waiting room cookie. Value \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e indicates that the Secure attribute will be set in the Set-Cookie header, \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e indicates that the Secure attribute will not be set, and \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e will set the Secure attribute depending if **Always Use HTTPS** is enabled.\nAvailable values: \"auto\", \"always\", \"never\".\n"
                }
            },
            "type": "object",
            "required": [
                "samesite",
                "secure"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWeb3HostnamesResult:getWeb3HostnamesResult": {
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Specify an optional description of the hostname.\n"
                },
                "dnslink": {
                    "type": "string",
                    "description": "Specify the DNSLink value used if the target is ipfs.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Specify the identifier of the hostname.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the hostname that points to the target gateway via CNAME.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Specifies the status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"deleting\", \"error\".\n"
                },
                "target": {
                    "type": "string",
                    "description": "Specify the target gateway of the hostname.\nAvailable values: \"ethereum\", \"ipfs\", \"ipfs*universal*path\".\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "description",
                "dnslink",
                "id",
                "modifiedOn",
                "name",
                "status",
                "target"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWebAnalyticsSiteFilter:getWebAnalyticsSiteFilter": {
            "properties": {
                "orderBy": {
                    "type": "string",
                    "description": "The property used to sort the list of results.\nAvailable values: \"host\", \"created\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getWebAnalyticsSiteRule:getWebAnalyticsSiteRule": {
            "properties": {
                "created": {
                    "type": "string"
                },
                "host": {
                    "type": "string",
                    "description": "The hostname the rule will be applied to.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics rule identifier.\n"
                },
                "inclusive": {
                    "type": "boolean",
                    "description": "Whether the rule includes or excludes traffic from being measured.\n"
                },
                "isPaused": {
                    "type": "boolean",
                    "description": "Whether the rule is paused or not.\n"
                },
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The paths the rule will be applied to.\n"
                },
                "priority": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "created",
                "host",
                "id",
                "inclusive",
                "isPaused",
                "paths",
                "priority"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWebAnalyticsSiteRuleset:getWebAnalyticsSiteRuleset": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the ruleset is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics ruleset identifier.\n"
                },
                "zoneName": {
                    "type": "string"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "The zone identifier.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id",
                "zoneName",
                "zoneTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWebAnalyticsSitesResult:getWebAnalyticsSitesResult": {
            "properties": {
                "autoInstall": {
                    "type": "boolean",
                    "description": "If enabled, the JavaScript snippet is automatically injected for orange-clouded sites.\n"
                },
                "created": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics site identifier.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWebAnalyticsSitesResultRule:getWebAnalyticsSitesResultRule"
                    },
                    "description": "A list of rules.\n"
                },
                "ruleset": {
                    "$ref": "#/types/cloudflare:index/getWebAnalyticsSitesResultRuleset:getWebAnalyticsSitesResultRuleset"
                },
                "siteTag": {
                    "type": "string",
                    "description": "The Web Analytics site identifier.\n"
                },
                "siteToken": {
                    "type": "string",
                    "description": "The Web Analytics site token.\n"
                },
                "snippet": {
                    "type": "string",
                    "description": "Encoded JavaScript snippet.\n"
                }
            },
            "type": "object",
            "required": [
                "autoInstall",
                "created",
                "id",
                "rules",
                "ruleset",
                "siteTag",
                "siteToken",
                "snippet"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWebAnalyticsSitesResultRule:getWebAnalyticsSitesResultRule": {
            "properties": {
                "created": {
                    "type": "string"
                },
                "host": {
                    "type": "string",
                    "description": "The hostname the rule will be applied to.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics rule identifier.\n"
                },
                "inclusive": {
                    "type": "boolean",
                    "description": "Whether the rule includes or excludes traffic from being measured.\n"
                },
                "isPaused": {
                    "type": "boolean",
                    "description": "Whether the rule is paused or not.\n"
                },
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The paths the rule will be applied to.\n"
                },
                "priority": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "created",
                "host",
                "id",
                "inclusive",
                "isPaused",
                "paths",
                "priority"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWebAnalyticsSitesResultRuleset:getWebAnalyticsSitesResultRuleset": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the ruleset is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The Web Analytics ruleset identifier.\n"
                },
                "zoneName": {
                    "type": "string"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "The zone identifier.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id",
                "zoneName",
                "zoneTag"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerFilter:getWorkerFilter": {
            "properties": {
                "order": {
                    "type": "string",
                    "description": "Sort direction.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "orderBy": {
                    "type": "string",
                    "description": "Property to sort results by.\nAvailable values: \"deployed*on\", \"updated*on\", \u003cspan pulumi-lang-nodejs=\"\"createdOn\"\" pulumi-lang-dotnet=\"\"CreatedOn\"\" pulumi-lang-go=\"\"createdOn\"\" pulumi-lang-python=\"\"created_on\"\" pulumi-lang-yaml=\"\"createdOn\"\" pulumi-lang-java=\"\"createdOn\"\"\u003e\"createdOn\"\u003c/span\u003e, \"name\".\n"
                }
            },
            "type": "object",
            "required": [
                "order",
                "orderBy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerObservability:getWorkerObservability": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether observability is enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for observability. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getWorkerObservabilityLogs:getWorkerObservabilityLogs",
                    "description": "Log settings for the Worker.\n"
                },
                "traces": {
                    "$ref": "#/types/cloudflare:index/getWorkerObservabilityTraces:getWorkerObservabilityTraces",
                    "description": "Trace settings for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "headSamplingRate",
                "logs",
                "traces"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerObservabilityLogs:getWorkerObservabilityLogs": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where logs will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "invocationLogs": {
                    "type": "boolean",
                    "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether log persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "destinations",
                "enabled",
                "headSamplingRate",
                "invocationLogs",
                "persist"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerObservabilityTraces:getWorkerObservabilityTraces": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where traces will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether traces are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether trace persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "destinations",
                "enabled",
                "headSamplingRate",
                "persist"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerReferences:getWorkerReferences": {
            "properties": {
                "dispatchNamespaceOutbounds": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerReferencesDispatchNamespaceOutbound:getWorkerReferencesDispatchNamespaceOutbound"
                    },
                    "description": "Other Workers that reference the Worker as an outbound for a dispatch namespace.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerReferencesDomain:getWorkerReferencesDomain"
                    },
                    "description": "Custom domains connected to the Worker.\n"
                },
                "durableObjects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerReferencesDurableObject:getWorkerReferencesDurableObject"
                    },
                    "description": "Other Workers that reference Durable Object classes implemented by the Worker.\n"
                },
                "queues": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerReferencesQueue:getWorkerReferencesQueue"
                    },
                    "description": "Queues that send messages to the Worker.\n"
                },
                "workers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerReferencesWorker:getWorkerReferencesWorker"
                    },
                    "description": "Other Workers that reference the Worker using [service bindings](https://developers.cloudflare.com/workers/runtime-apis/bindings/service-bindings/).\n"
                }
            },
            "type": "object",
            "required": [
                "dispatchNamespaceOutbounds",
                "domains",
                "durableObjects",
                "queues",
                "workers"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerReferencesDispatchNamespaceOutbound:getWorkerReferencesDispatchNamespaceOutbound": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the dispatch namespace.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the dispatch namespace.\n"
                },
                "workerId": {
                    "type": "string",
                    "description": "ID of the Worker using the dispatch namespace.\n"
                },
                "workerName": {
                    "type": "string",
                    "description": "Name of the Worker using the dispatch namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId",
                "namespaceName",
                "workerId",
                "workerName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerReferencesDomain:getWorkerReferencesDomain": {
            "properties": {
                "certificateId": {
                    "type": "string",
                    "description": "ID of the TLS certificate issued for the custom domain.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "Full hostname of the custom domain, including the zone name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the custom domain.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone.\n"
                }
            },
            "type": "object",
            "required": [
                "certificateId",
                "hostname",
                "id",
                "zoneId",
                "zoneName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerReferencesDurableObject:getWorkerReferencesDurableObject": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace being used.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the Durable Object namespace being used.\n"
                },
                "workerId": {
                    "type": "string",
                    "description": "ID of the Worker using the Durable Object implementation.\n"
                },
                "workerName": {
                    "type": "string",
                    "description": "Name of the Worker using the Durable Object implementation.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId",
                "namespaceName",
                "workerId",
                "workerName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerReferencesQueue:getWorkerReferencesQueue": {
            "properties": {
                "queueConsumerId": {
                    "type": "string",
                    "description": "ID of the queue consumer configuration.\n"
                },
                "queueId": {
                    "type": "string",
                    "description": "ID of the queue.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the queue.\n"
                }
            },
            "type": "object",
            "required": [
                "queueConsumerId",
                "queueId",
                "queueName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerReferencesWorker:getWorkerReferencesWorker": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the referencing Worker.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the referencing Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerSubdomain:getWorkerSubdomain": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the *.workers.dev subdomain is enabled for the Worker.\n"
                },
                "previewsEnabled": {
                    "type": "boolean",
                    "description": "Whether [preview URLs](https://developers.cloudflare.com/workers/configuration/previews/) are enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "previewsEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerTailConsumer:getWorkerTailConsumer": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the consumer Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionAnnotations:getWorkerVersionAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the version. Truncated to 1000 bytes if longer.\n"
                },
                "workersTag": {
                    "type": "string",
                    "description": "User-provided identifier for the version. Maximum 100 bytes.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Operation that triggered the creation of the version.\n"
                }
            },
            "type": "object",
            "required": [
                "workersMessage",
                "workersTag",
                "workersTriggeredBy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionAssets:getWorkerVersionAssets": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionAssetsConfig:getWorkerVersionAssetsConfig",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "jwt": {
                    "type": "string",
                    "description": "Token provided upon successful upload of all files from a registered manifest.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "config",
                "jwt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionAssetsConfig:getWorkerVersionAssetsConfig": {
            "properties": {
                "htmlHandling": {
                    "type": "string",
                    "description": "Determines the redirects and rewrites of requests for HTML content.\nAvailable values: \"auto-trailing-slash\", \"force-trailing-slash\", \"drop-trailing-slash\", \"none\".\n"
                },
                "notFoundHandling": {
                    "type": "string",
                    "description": "Determines the response when a request does not match a static asset, and there is no Worker script.\nAvailable values: \"none\", \"404-page\", \"single-page-application\".\n"
                },
                "runWorkerFirsts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains a list path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules.\n"
                }
            },
            "type": "object",
            "required": [
                "htmlHandling",
                "notFoundHandling",
                "runWorkerFirsts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionBinding:getWorkerVersionBinding": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm).\n"
                },
                "allowedDestinationAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed destination addresses.\n"
                },
                "allowedSenderAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed sender addresses.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "ID of the Flagship app to bind to for feature flag evaluation.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "R2 bucket to bind to.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "Identifier of the certificate to bind to.\n"
                },
                "className": {
                    "type": "string",
                    "description": "The exported class name of the Durable Object.\n"
                },
                "databaseId": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "The name of the dataset to bind to.\n"
                },
                "destinationAddress": {
                    "type": "string",
                    "description": "Destination address for the email.\n"
                },
                "dispatchNamespace": {
                    "type": "string",
                    "description": "The dispatch namespace the Durable Object script belongs to.\n"
                },
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the target Worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The environment of the\u003cspan pulumi-lang-nodejs=\" scriptName \" pulumi-lang-dotnet=\" ScriptName \" pulumi-lang-go=\" scriptName \" pulumi-lang-python=\" script_name \" pulumi-lang-yaml=\" scriptName \" pulumi-lang-java=\" scriptName \"\u003e scriptName \u003c/span\u003eto bind to.\n"
                },
                "format": {
                    "type": "string",
                    "description": "Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format).\nAvailable values: \"raw\", \"pkcs8\", \"spki\", \"jwk\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "indexName": {
                    "type": "string",
                    "description": "Name of the Vectorize index to bind to.\n"
                },
                "instanceName": {
                    "type": "string",
                    "description": "The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance.\n"
                },
                "json": {
                    "type": "string",
                    "description": "JSON data to use.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket.\nAvailable values: \"eu\", \"fedramp\", \"fedramp-high\".\n"
                },
                "keyBase64": {
                    "type": "string",
                    "description": "Base64-encoded key data. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"raw\", \"pkcs8\", or \"spki\".\n",
                    "secret": true
                },
                "keyJwk": {
                    "type": "string",
                    "description": "Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"jwk\".\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "A JavaScript variable name for the binding.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The namespace the instance belongs to. Defaults to \"default\" if omitted. Customers who don't use namespaces can simply omit this field.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "Identifier of the network to bind to. Only \"cf1:network\" is currently supported. Mutually exclusive with tunnel_id.\n"
                },
                "oldName": {
                    "type": "string",
                    "description": "The old name of the inherited binding. If set, the binding will be renamed from \u003cspan pulumi-lang-nodejs=\"`oldName`\" pulumi-lang-dotnet=\"`OldName`\" pulumi-lang-go=\"`oldName`\" pulumi-lang-python=\"`old_name`\" pulumi-lang-yaml=\"`oldName`\" pulumi-lang-java=\"`oldName`\"\u003e`oldName`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in the new version. If not set, the binding will keep the same name between versions.\n"
                },
                "outbound": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionBindingOutbound:getWorkerVersionBindingOutbound",
                    "description": "Outbound worker.\n"
                },
                "part": {
                    "type": "string",
                    "description": "The name of the file containing the data content. Only accepted for `service worker syntax` Workers.\n"
                },
                "pipeline": {
                    "type": "string",
                    "description": "Name of the Pipeline to bind to.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the Queue to bind to.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "The script where the Durable Object is defined, if it is external to this Worker.\n"
                },
                "secretName": {
                    "type": "string",
                    "description": "Name of the secret in the store.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker to bind to.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "Identifier of the VPC service to bind to.\n"
                },
                "simple": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionBindingSimple:getWorkerVersionBindingSimple",
                    "description": "The rate limit configuration.\n"
                },
                "storeId": {
                    "type": "string",
                    "description": "ID of the store containing the secret.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text value to use.\n",
                    "secret": true
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The kind of resource that the binding provides.\nAvailable values: \"ai\", \"ai*search\", \"ai*search*namespace\", \"analytics*engine\", \"assets\", \"browser\", \"d1\", \"data*blob\", \"dispatch*namespace\", \"durable*object*namespace\", \"hyperdrive\", \"inherit\", \"images\", \"json\", \"kv*namespace\", \"media\", \"mtls*certificate\", \"plain*text\", \"pipelines\", \"queue\", \"ratelimit\", \"r2*bucket\", \"secret*text\", \"send*email\", \"service\", \"text*blob\", \"vectorize\", \"version*metadata\", \"secrets*store*secret\", \"flagship\", \"secret*key\", \"workflow\", \"wasm*module\", \"vpc*service\", \"vpc*network\".\n"
                },
                "usages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages).\n"
                },
                "versionId": {
                    "type": "string",
                    "description": "Identifier for the version to inherit the binding from, which can be the version ID or the literal \"latest\" to inherit from the latest version. Defaults to inheriting the binding from the latest version.\n"
                },
                "workflowName": {
                    "type": "string",
                    "description": "Name of the Workflow to bind to.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm",
                "allowedDestinationAddresses",
                "allowedSenderAddresses",
                "appId",
                "bucketName",
                "certificateId",
                "className",
                "databaseId",
                "dataset",
                "destinationAddress",
                "dispatchNamespace",
                "entrypoint",
                "environment",
                "format",
                "id",
                "indexName",
                "instanceName",
                "json",
                "jurisdiction",
                "keyBase64",
                "keyJwk",
                "name",
                "namespace",
                "namespaceId",
                "networkId",
                "oldName",
                "outbound",
                "part",
                "pipeline",
                "queueName",
                "scriptName",
                "secretName",
                "service",
                "serviceId",
                "simple",
                "storeId",
                "text",
                "tunnelId",
                "type",
                "usages",
                "versionId",
                "workflowName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionBindingOutbound:getWorkerVersionBindingOutbound": {
            "properties": {
                "params": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionBindingOutboundParam:getWorkerVersionBindingOutboundParam"
                    },
                    "description": "Pass information from the Dispatch Worker to the Outbound Worker through the parameters.\n"
                },
                "worker": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionBindingOutboundWorker:getWorkerVersionBindingOutboundWorker",
                    "description": "Outbound worker.\n"
                }
            },
            "type": "object",
            "required": [
                "params",
                "worker"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionBindingOutboundParam:getWorkerVersionBindingOutboundParam": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the parameter.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionBindingOutboundWorker:getWorkerVersionBindingOutboundWorker": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the outbound worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Environment of the outbound worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the outbound worker.\n"
                }
            },
            "type": "object",
            "required": [
                "entrypoint",
                "environment",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionBindingSimple:getWorkerVersionBindingSimple": {
            "properties": {
                "limit": {
                    "type": "number",
                    "description": "The limit (requests per period).\n"
                },
                "period": {
                    "type": "integer",
                    "description": "The period in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "limit",
                "period"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionContainer:getWorkerVersionContainer": {
            "properties": {
                "className": {
                    "type": "string",
                    "description": "Select which Durable Object class should get this container attached.\n"
                }
            },
            "type": "object",
            "required": [
                "className"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionLimits:getWorkerVersionLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                },
                "subrequests": {
                    "type": "integer",
                    "description": "Subrequest limit per request.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs",
                "subrequests"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionMigrations:getWorkerVersionMigrations": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "newTag": {
                    "type": "string",
                    "description": "Tag to set as the latest migration tag.\n"
                },
                "oldTag": {
                    "type": "string",
                    "description": "Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionMigrationsRenamedClass:getWorkerVersionMigrationsRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionMigrationsStep:getWorkerVersionMigrationsStep"
                    },
                    "description": "Migrations to apply in order.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionMigrationsTransferredClass:getWorkerVersionMigrationsTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "deletedClasses",
                "newClasses",
                "newSqliteClasses",
                "newTag",
                "oldTag",
                "renamedClasses",
                "steps",
                "transferredClasses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionMigrationsRenamedClass:getWorkerVersionMigrationsRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionMigrationsStep:getWorkerVersionMigrationsStep": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionMigrationsStepRenamedClass:getWorkerVersionMigrationsStepRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionMigrationsStepTransferredClass:getWorkerVersionMigrationsStepTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "deletedClasses",
                "newClasses",
                "newSqliteClasses",
                "renamedClasses",
                "transferredClasses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionMigrationsStepRenamedClass:getWorkerVersionMigrationsStepRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionMigrationsStepTransferredClass:getWorkerVersionMigrationsStepTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "fromScript",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionMigrationsTransferredClass:getWorkerVersionMigrationsTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "fromScript",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionModule:getWorkerVersionModule": {
            "properties": {
                "contentBase64": {
                    "type": "string",
                    "description": "The base64-encoded module content.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the module.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the module.\n"
                }
            },
            "type": "object",
            "required": [
                "contentBase64",
                "contentType",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionPlacement:getWorkerVersionPlacement": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host and port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"smart\", \"targeted\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region for targeted placement in format 'provider:region'.\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionPlacementTarget:getWorkerVersionPlacementTarget"
                    },
                    "description": "Array of placement targets (currently limited to single target).\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "hostname",
                "mode",
                "region",
                "targets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionPlacementTarget:getWorkerVersionPlacementTarget": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host:port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region in format 'provider:region'.\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "hostname",
                "region"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResult:getWorkerVersionsResult": {
            "properties": {
                "annotations": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultAnnotations:getWorkerVersionsResultAnnotations",
                    "description": "Metadata about the version.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultAssets:getWorkerVersionsResultAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultBinding:getWorkerVersionsResultBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                },
                "containers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultContainer:getWorkerVersionsResultContainer"
                    },
                    "description": "List of containers attached to a Worker. Containers can only be attached to Durable Object classes of this Worker script.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the version was created.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Version identifier.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultLimits:getWorkerVersionsResultLimits",
                    "description": "Resource limits enforced at runtime.\n"
                },
                "mainModule": {
                    "type": "string",
                    "description": "The name of the main module in the \u003cspan pulumi-lang-nodejs=\"`modules`\" pulumi-lang-dotnet=\"`Modules`\" pulumi-lang-go=\"`modules`\" pulumi-lang-python=\"`modules`\" pulumi-lang-yaml=\"`modules`\" pulumi-lang-java=\"`modules`\"\u003e`modules`\u003c/span\u003e array (e.g. the name of the module that exports a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler).\n"
                },
                "mainScriptBase64": {
                    "type": "string",
                    "description": "The base64-encoded main script content. This is only returned for service worker syntax workers (not ES modules).\n"
                },
                "migrationTag": {
                    "type": "string",
                    "description": "Durable Object migration tag. Set when the version is deployed. Omitted if the version has not been deployed or the Worker does not use Durable Objects.\n"
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultMigrations:getWorkerVersionsResultMigrations",
                    "description": "Migrations for Durable Objects associated with the version. Migrations are applied when the version is deployed.\n"
                },
                "modules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultModule:getWorkerVersionsResultModule"
                    },
                    "description": "Code, sourcemaps, and other content used at runtime.\n\nThis includes [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and\n[`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files used to configure \n[Static Assets](https://developers.cloudflare.com/workers/static-assets/). `_headers` and `_redirects` files should be \nincluded as modules named `_headers` and `_redirects` with content type `text/plain`.\n"
                },
                "number": {
                    "type": "integer",
                    "description": "The integer version number, starting from one.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultPlacement:getWorkerVersionsResultPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                },
                "source": {
                    "type": "string",
                    "description": "The client used to create the version.\n"
                },
                "startupTimeMs": {
                    "type": "integer",
                    "description": "Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time).\n"
                },
                "urls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "All routable URLs that always point to this version. Does not include alias URLs, since aliases can be updated to point to a different version.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the version.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "annotations",
                "assets",
                "bindings",
                "compatibilityDate",
                "compatibilityFlags",
                "containers",
                "createdOn",
                "id",
                "limits",
                "mainModule",
                "mainScriptBase64",
                "migrationTag",
                "migrations",
                "modules",
                "number",
                "placement",
                "source",
                "startupTimeMs",
                "urls",
                "usageModel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultAnnotations:getWorkerVersionsResultAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the version. Truncated to 1000 bytes if longer.\n"
                },
                "workersTag": {
                    "type": "string",
                    "description": "User-provided identifier for the version. Maximum 100 bytes.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Operation that triggered the creation of the version.\n"
                }
            },
            "type": "object",
            "required": [
                "workersMessage",
                "workersTag",
                "workersTriggeredBy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultAssets:getWorkerVersionsResultAssets": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultAssetsConfig:getWorkerVersionsResultAssetsConfig",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "jwt": {
                    "type": "string",
                    "description": "Token provided upon successful upload of all files from a registered manifest.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "config",
                "jwt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultAssetsConfig:getWorkerVersionsResultAssetsConfig": {
            "properties": {
                "htmlHandling": {
                    "type": "string",
                    "description": "Determines the redirects and rewrites of requests for HTML content.\nAvailable values: \"auto-trailing-slash\", \"force-trailing-slash\", \"drop-trailing-slash\", \"none\".\n"
                },
                "notFoundHandling": {
                    "type": "string",
                    "description": "Determines the response when a request does not match a static asset, and there is no Worker script.\nAvailable values: \"none\", \"404-page\", \"single-page-application\".\n"
                },
                "runWorkerFirsts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains a list path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules.\n"
                }
            },
            "type": "object",
            "required": [
                "htmlHandling",
                "notFoundHandling",
                "runWorkerFirsts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultBinding:getWorkerVersionsResultBinding": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm).\n"
                },
                "allowedDestinationAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed destination addresses.\n"
                },
                "allowedSenderAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of allowed sender addresses.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "ID of the Flagship app to bind to for feature flag evaluation.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "R2 bucket to bind to.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "Identifier of the certificate to bind to.\n"
                },
                "className": {
                    "type": "string",
                    "description": "The exported class name of the Durable Object.\n"
                },
                "databaseId": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "The name of the dataset to bind to.\n"
                },
                "destinationAddress": {
                    "type": "string",
                    "description": "Destination address for the email.\n"
                },
                "dispatchNamespace": {
                    "type": "string",
                    "description": "The dispatch namespace the Durable Object script belongs to.\n"
                },
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the target Worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "The environment of the\u003cspan pulumi-lang-nodejs=\" scriptName \" pulumi-lang-dotnet=\" ScriptName \" pulumi-lang-go=\" scriptName \" pulumi-lang-python=\" script_name \" pulumi-lang-yaml=\" scriptName \" pulumi-lang-java=\" scriptName \"\u003e scriptName \u003c/span\u003eto bind to.\n"
                },
                "format": {
                    "type": "string",
                    "description": "Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format).\nAvailable values: \"raw\", \"pkcs8\", \"spki\", \"jwk\".\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier of the D1 database to bind to.\n"
                },
                "indexName": {
                    "type": "string",
                    "description": "Name of the Vectorize index to bind to.\n"
                },
                "instanceName": {
                    "type": "string",
                    "description": "The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance.\n"
                },
                "json": {
                    "type": "string",
                    "description": "JSON data to use.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket.\nAvailable values: \"eu\", \"fedramp\", \"fedramp-high\".\n"
                },
                "keyBase64": {
                    "type": "string",
                    "description": "Base64-encoded key data. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"raw\", \"pkcs8\", or \"spki\".\n",
                    "secret": true
                },
                "keyJwk": {
                    "type": "string",
                    "description": "Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if \u003cspan pulumi-lang-nodejs=\"`format`\" pulumi-lang-dotnet=\"`Format`\" pulumi-lang-go=\"`format`\" pulumi-lang-python=\"`format`\" pulumi-lang-yaml=\"`format`\" pulumi-lang-java=\"`format`\"\u003e`format`\u003c/span\u003e is \"jwk\".\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "A JavaScript variable name for the binding.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The namespace the instance belongs to. Defaults to \"default\" if omitted. Customers who don't use namespaces can simply omit this field.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "Identifier of the network to bind to. Only \"cf1:network\" is currently supported. Mutually exclusive with tunnel_id.\n"
                },
                "oldName": {
                    "type": "string",
                    "description": "The old name of the inherited binding. If set, the binding will be renamed from \u003cspan pulumi-lang-nodejs=\"`oldName`\" pulumi-lang-dotnet=\"`OldName`\" pulumi-lang-go=\"`oldName`\" pulumi-lang-python=\"`old_name`\" pulumi-lang-yaml=\"`oldName`\" pulumi-lang-java=\"`oldName`\"\u003e`oldName`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in the new version. If not set, the binding will keep the same name between versions.\n"
                },
                "outbound": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultBindingOutbound:getWorkerVersionsResultBindingOutbound",
                    "description": "Outbound worker.\n"
                },
                "part": {
                    "type": "string",
                    "description": "The name of the file containing the data content. Only accepted for `service worker syntax` Workers.\n"
                },
                "pipeline": {
                    "type": "string",
                    "description": "Name of the Pipeline to bind to.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the Queue to bind to.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "The script where the Durable Object is defined, if it is external to this Worker.\n"
                },
                "secretName": {
                    "type": "string",
                    "description": "Name of the secret in the store.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker to bind to.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "Identifier of the VPC service to bind to.\n"
                },
                "simple": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultBindingSimple:getWorkerVersionsResultBindingSimple",
                    "description": "The rate limit configuration.\n"
                },
                "storeId": {
                    "type": "string",
                    "description": "ID of the store containing the secret.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text value to use.\n",
                    "secret": true
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The kind of resource that the binding provides.\nAvailable values: \"ai\", \"ai*search\", \"ai*search*namespace\", \"analytics*engine\", \"assets\", \"browser\", \"d1\", \"data*blob\", \"dispatch*namespace\", \"durable*object*namespace\", \"hyperdrive\", \"inherit\", \"images\", \"json\", \"kv*namespace\", \"media\", \"mtls*certificate\", \"plain*text\", \"pipelines\", \"queue\", \"ratelimit\", \"r2*bucket\", \"secret*text\", \"send*email\", \"service\", \"text*blob\", \"vectorize\", \"version*metadata\", \"secrets*store*secret\", \"flagship\", \"secret*key\", \"workflow\", \"wasm*module\", \"vpc*service\", \"vpc*network\".\n"
                },
                "usages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages).\n"
                },
                "versionId": {
                    "type": "string",
                    "description": "Identifier for the version to inherit the binding from, which can be the version ID or the literal \"latest\" to inherit from the latest version. Defaults to inheriting the binding from the latest version.\n"
                },
                "workflowName": {
                    "type": "string",
                    "description": "Name of the Workflow to bind to.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm",
                "allowedDestinationAddresses",
                "allowedSenderAddresses",
                "appId",
                "bucketName",
                "certificateId",
                "className",
                "databaseId",
                "dataset",
                "destinationAddress",
                "dispatchNamespace",
                "entrypoint",
                "environment",
                "format",
                "id",
                "indexName",
                "instanceName",
                "json",
                "jurisdiction",
                "keyBase64",
                "keyJwk",
                "name",
                "namespace",
                "namespaceId",
                "networkId",
                "oldName",
                "outbound",
                "part",
                "pipeline",
                "queueName",
                "scriptName",
                "secretName",
                "service",
                "serviceId",
                "simple",
                "storeId",
                "text",
                "tunnelId",
                "type",
                "usages",
                "versionId",
                "workflowName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultBindingOutbound:getWorkerVersionsResultBindingOutbound": {
            "properties": {
                "params": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultBindingOutboundParam:getWorkerVersionsResultBindingOutboundParam"
                    },
                    "description": "Pass information from the Dispatch Worker to the Outbound Worker through the parameters.\n"
                },
                "worker": {
                    "$ref": "#/types/cloudflare:index/getWorkerVersionsResultBindingOutboundWorker:getWorkerVersionsResultBindingOutboundWorker",
                    "description": "Outbound worker.\n"
                }
            },
            "type": "object",
            "required": [
                "params",
                "worker"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultBindingOutboundParam:getWorkerVersionsResultBindingOutboundParam": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the parameter.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultBindingOutboundWorker:getWorkerVersionsResultBindingOutboundWorker": {
            "properties": {
                "entrypoint": {
                    "type": "string",
                    "description": "Entrypoint to invoke on the outbound worker.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Environment of the outbound worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the outbound worker.\n"
                }
            },
            "type": "object",
            "required": [
                "entrypoint",
                "environment",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultBindingSimple:getWorkerVersionsResultBindingSimple": {
            "properties": {
                "limit": {
                    "type": "number",
                    "description": "The limit (requests per period).\n"
                },
                "period": {
                    "type": "integer",
                    "description": "The period in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "limit",
                "period"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultContainer:getWorkerVersionsResultContainer": {
            "properties": {
                "className": {
                    "type": "string",
                    "description": "Select which Durable Object class should get this container attached.\n"
                }
            },
            "type": "object",
            "required": [
                "className"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultLimits:getWorkerVersionsResultLimits": {
            "properties": {
                "cpuMs": {
                    "type": "integer",
                    "description": "CPU time limit in milliseconds.\n"
                },
                "subrequests": {
                    "type": "integer",
                    "description": "Subrequest limit per request.\n"
                }
            },
            "type": "object",
            "required": [
                "cpuMs",
                "subrequests"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultMigrations:getWorkerVersionsResultMigrations": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "newTag": {
                    "type": "string",
                    "description": "Tag to set as the latest migration tag.\n"
                },
                "oldTag": {
                    "type": "string",
                    "description": "Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultMigrationsRenamedClass:getWorkerVersionsResultMigrationsRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultMigrationsStep:getWorkerVersionsResultMigrationsStep"
                    },
                    "description": "Migrations to apply in order.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultMigrationsTransferredClass:getWorkerVersionsResultMigrationsTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "deletedClasses",
                "newClasses",
                "newSqliteClasses",
                "newTag",
                "oldTag",
                "renamedClasses",
                "steps",
                "transferredClasses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultMigrationsRenamedClass:getWorkerVersionsResultMigrationsRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultMigrationsStep:getWorkerVersionsResultMigrationsStep": {
            "properties": {
                "deletedClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to delete Durable Object namespaces from.\n"
                },
                "newClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces from.\n"
                },
                "newSqliteClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of classes to create Durable Object namespaces with SQLite from.\n"
                },
                "renamedClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultMigrationsStepRenamedClass:getWorkerVersionsResultMigrationsStepRenamedClass"
                    },
                    "description": "A list of classes with Durable Object namespaces that were renamed.\n"
                },
                "transferredClasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultMigrationsStepTransferredClass:getWorkerVersionsResultMigrationsStepTransferredClass"
                    },
                    "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "deletedClasses",
                "newClasses",
                "newSqliteClasses",
                "renamedClasses",
                "transferredClasses"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultMigrationsStepRenamedClass:getWorkerVersionsResultMigrationsStepRenamedClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultMigrationsStepTransferredClass:getWorkerVersionsResultMigrationsStepTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "fromScript",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultMigrationsTransferredClass:getWorkerVersionsResultMigrationsTransferredClass": {
            "properties": {
                "from": {
                    "type": "string"
                },
                "fromScript": {
                    "type": "string"
                },
                "to": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "from",
                "fromScript",
                "to"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultModule:getWorkerVersionsResultModule": {
            "properties": {
                "contentBase64": {
                    "type": "string",
                    "description": "The base64-encoded module content.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "The content type of the module.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the module.\n"
                }
            },
            "type": "object",
            "required": [
                "contentBase64",
                "contentType",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultPlacement:getWorkerVersionsResultPlacement": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host and port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"smart\", \"targeted\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region for targeted placement in format 'provider:region'.\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionsResultPlacementTarget:getWorkerVersionsResultPlacementTarget"
                    },
                    "description": "Array of placement targets (currently limited to single target).\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "hostname",
                "mode",
                "region",
                "targets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkerVersionsResultPlacementTarget:getWorkerVersionsResultPlacementTarget": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host:port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region in format 'provider:region'.\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "hostname",
                "region"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersCronTriggerSchedule:getWorkersCronTriggerSchedule": {
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "cron": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "cron",
                "modifiedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersCustomDomainFilter:getWorkersCustomDomainFilter": {
            "properties": {
                "environment": {
                    "type": "string",
                    "description": "Worker environment associated with the domain.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of the domain.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the Worker associated with the domain.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone containing the domain hostname.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone containing the domain hostname.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getWorkersCustomDomainsResult:getWorkersCustomDomainsResult": {
            "properties": {
                "certId": {
                    "type": "string",
                    "description": "ID of the TLS certificate issued for the domain.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Worker environment associated with the domain.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Immutable ID of the domain.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone containing the domain hostname.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone containing the domain hostname.\n"
                }
            },
            "type": "object",
            "required": [
                "certId",
                "environment",
                "hostname",
                "id",
                "service",
                "zoneId",
                "zoneName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersDeploymentAnnotations:getWorkersDeploymentAnnotations": {
            "properties": {
                "workersMessage": {
                    "type": "string",
                    "description": "Human-readable message about the deployment. Truncated to 1000 bytes if longer.\n"
                },
                "workersTriggeredBy": {
                    "type": "string",
                    "description": "Operation that triggered the creation of the deployment.\n"
                }
            },
            "type": "object",
            "required": [
                "workersMessage",
                "workersTriggeredBy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersDeploymentVersion:getWorkersDeploymentVersion": {
            "properties": {
                "percentage": {
                    "type": "number"
                },
                "versionId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "percentage",
                "versionId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersForPlatformsDispatchNamespacesResult:getWorkersForPlatformsDispatchNamespacesResult": {
            "properties": {
                "createdBy": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the script was created.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Name of the Workers for Platforms dispatch namespace.\n"
                },
                "modifiedBy": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the script was last modified.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "API Resource UUID tag.\n"
                },
                "scriptCount": {
                    "type": "integer",
                    "description": "The current number of scripts in this Dispatch Namespace.\n"
                },
                "trustedWorkers": {
                    "type": "boolean",
                    "description": "Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".\n"
                }
            },
            "type": "object",
            "required": [
                "createdBy",
                "createdOn",
                "id",
                "modifiedBy",
                "modifiedOn",
                "namespaceId",
                "scriptCount",
                "trustedWorkers"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersKvNamespaceFilter:getWorkersKvNamespaceFilter": {
            "properties": {
                "direction": {
                    "type": "string",
                    "description": "Direction to order namespaces.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order results by.\nAvailable values: \"id\", \"title\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getWorkersKvNamespacesResult:getWorkersKvNamespacesResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "supportsUrlEncoding": {
                    "type": "boolean",
                    "description": "True if keys written on the URL will be URL-decoded before storing. For example, if set to \"true\", a key written on the URL as \"%3F\" will be stored as \"?\".\n"
                },
                "title": {
                    "type": "string",
                    "description": "A human-readable string name for a Namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "supportsUrlEncoding",
                "title"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResult:getWorkersResult": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the Worker was created.\n"
                },
                "deployedOn": {
                    "type": "string",
                    "description": "When the Worker's most recent deployment was created. \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e if the Worker has never been deployed.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Immutable ID of the Worker.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether logpush is enabled for the Worker.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Worker.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/getWorkersResultObservability:getWorkersResultObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "references": {
                    "$ref": "#/types/cloudflare:index/getWorkersResultReferences:getWorkersResultReferences",
                    "description": "Other resources that reference the Worker and depend on it existing.\n"
                },
                "subdomain": {
                    "$ref": "#/types/cloudflare:index/getWorkersResultSubdomain:getWorkersResultSubdomain",
                    "description": "Subdomain settings for the Worker.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags associated with the Worker.\n"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersResultTailConsumer:getWorkersResultTailConsumer"
                    },
                    "description": "Other Workers that should consume logs from the Worker.\n"
                },
                "updatedOn": {
                    "type": "string",
                    "description": "When the Worker was most recently updated.\n"
                }
            },
            "type": "object",
            "required": [
                "createdOn",
                "deployedOn",
                "id",
                "logpush",
                "name",
                "observability",
                "references",
                "subdomain",
                "tags",
                "tailConsumers",
                "updatedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultObservability:getWorkersResultObservability": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether observability is enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for observability. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getWorkersResultObservabilityLogs:getWorkersResultObservabilityLogs",
                    "description": "Log settings for the Worker.\n"
                },
                "traces": {
                    "$ref": "#/types/cloudflare:index/getWorkersResultObservabilityTraces:getWorkersResultObservabilityTraces",
                    "description": "Trace settings for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "headSamplingRate",
                "logs",
                "traces"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultObservabilityLogs:getWorkersResultObservabilityLogs": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where logs will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "invocationLogs": {
                    "type": "boolean",
                    "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether log persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "destinations",
                "enabled",
                "headSamplingRate",
                "invocationLogs",
                "persist"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultObservabilityTraces:getWorkersResultObservabilityTraces": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where traces will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether traces are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%).\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether trace persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "destinations",
                "enabled",
                "headSamplingRate",
                "persist"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultReferences:getWorkersResultReferences": {
            "properties": {
                "dispatchNamespaceOutbounds": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersResultReferencesDispatchNamespaceOutbound:getWorkersResultReferencesDispatchNamespaceOutbound"
                    },
                    "description": "Other Workers that reference the Worker as an outbound for a dispatch namespace.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersResultReferencesDomain:getWorkersResultReferencesDomain"
                    },
                    "description": "Custom domains connected to the Worker.\n"
                },
                "durableObjects": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersResultReferencesDurableObject:getWorkersResultReferencesDurableObject"
                    },
                    "description": "Other Workers that reference Durable Object classes implemented by the Worker.\n"
                },
                "queues": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersResultReferencesQueue:getWorkersResultReferencesQueue"
                    },
                    "description": "Queues that send messages to the Worker.\n"
                },
                "workers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersResultReferencesWorker:getWorkersResultReferencesWorker"
                    },
                    "description": "Other Workers that reference the Worker using [service bindings](https://developers.cloudflare.com/workers/runtime-apis/bindings/service-bindings/).\n"
                }
            },
            "type": "object",
            "required": [
                "dispatchNamespaceOutbounds",
                "domains",
                "durableObjects",
                "queues",
                "workers"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultReferencesDispatchNamespaceOutbound:getWorkersResultReferencesDispatchNamespaceOutbound": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the dispatch namespace.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the dispatch namespace.\n"
                },
                "workerId": {
                    "type": "string",
                    "description": "ID of the Worker using the dispatch namespace.\n"
                },
                "workerName": {
                    "type": "string",
                    "description": "Name of the Worker using the dispatch namespace.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId",
                "namespaceName",
                "workerId",
                "workerName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultReferencesDomain:getWorkersResultReferencesDomain": {
            "properties": {
                "certificateId": {
                    "type": "string",
                    "description": "ID of the TLS certificate issued for the custom domain.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "Full hostname of the custom domain, including the zone name.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the custom domain.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone.\n"
                }
            },
            "type": "object",
            "required": [
                "certificateId",
                "hostname",
                "id",
                "zoneId",
                "zoneName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultReferencesDurableObject:getWorkersResultReferencesDurableObject": {
            "properties": {
                "namespaceId": {
                    "type": "string",
                    "description": "ID of the Durable Object namespace being used.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the Durable Object namespace being used.\n"
                },
                "workerId": {
                    "type": "string",
                    "description": "ID of the Worker using the Durable Object implementation.\n"
                },
                "workerName": {
                    "type": "string",
                    "description": "Name of the Worker using the Durable Object implementation.\n"
                }
            },
            "type": "object",
            "required": [
                "namespaceId",
                "namespaceName",
                "workerId",
                "workerName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultReferencesQueue:getWorkersResultReferencesQueue": {
            "properties": {
                "queueConsumerId": {
                    "type": "string",
                    "description": "ID of the queue consumer configuration.\n"
                },
                "queueId": {
                    "type": "string",
                    "description": "ID of the queue.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the queue.\n"
                }
            },
            "type": "object",
            "required": [
                "queueConsumerId",
                "queueId",
                "queueName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultReferencesWorker:getWorkersResultReferencesWorker": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the referencing Worker.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the referencing Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultSubdomain:getWorkersResultSubdomain": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the *.workers.dev subdomain is enabled for the Worker.\n"
                },
                "previewsEnabled": {
                    "type": "boolean",
                    "description": "Whether [preview URLs](https://developers.cloudflare.com/workers/configuration/previews/) are enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "previewsEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersResultTailConsumer:getWorkersResultTailConsumer": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the consumer Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersRoutesResult:getWorkersRoutesResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "pattern": {
                    "type": "string",
                    "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).\n"
                },
                "script": {
                    "type": "string",
                    "description": "Name of the script to run if the route matches.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "pattern",
                "script"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptFilter:getWorkersScriptFilter": {
            "properties": {
                "tags": {
                    "type": "string",
                    "description": "Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getWorkersScriptsResult:getWorkersScriptsResult": {
            "properties": {
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the script was created.\n"
                },
                "etag": {
                    "type": "string",
                    "description": "Hashed script content, can be used in a If-None-Match header when updating.\n"
                },
                "handlers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The names of handlers exported as part of the default export.\n"
                },
                "hasAssets": {
                    "type": "boolean",
                    "description": "Whether a Worker contains assets.\n"
                },
                "hasModules": {
                    "type": "boolean",
                    "description": "Whether a Worker contains modules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The name used to identify the script.\n"
                },
                "lastDeployedFrom": {
                    "type": "string",
                    "description": "The client most recently used to deploy this Worker.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether Logpush is turned on for the Worker.\n"
                },
                "migrationTag": {
                    "type": "string",
                    "description": "The tag of the Durable Object migration that was most recently applied for this Worker.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the script was last modified.\n"
                },
                "namedHandlers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersScriptsResultNamedHandler:getWorkersScriptsResultNamedHandler"
                    },
                    "description": "Named exports, such as Durable Object class implementations and named entrypoints.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/getWorkersScriptsResultObservability:getWorkersScriptsResultObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/getWorkersScriptsResultPlacement:getWorkersScriptsResultPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                },
                "placementMode": {
                    "type": "string",
                    "description": "Available values: \"smart\", \"targeted\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "placementStatus": {
                    "type": "string",
                    "description": "Available values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "routes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersScriptsResultRoute:getWorkersScriptsResultRoute"
                    },
                    "description": "Routes associated with the Worker.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The immutable ID of the script.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags associated with the Worker.\n"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersScriptsResultTailConsumer:getWorkersScriptsResultTailConsumer"
                    },
                    "description": "List of Workers that will consume logs from the attached Worker.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                }
            },
            "type": "object",
            "required": [
                "compatibilityDate",
                "compatibilityFlags",
                "createdOn",
                "etag",
                "handlers",
                "hasAssets",
                "hasModules",
                "id",
                "lastDeployedFrom",
                "logpush",
                "migrationTag",
                "modifiedOn",
                "namedHandlers",
                "observability",
                "placement",
                "placementMode",
                "placementStatus",
                "routes",
                "tag",
                "tags",
                "tailConsumers",
                "usageModel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultNamedHandler:getWorkersScriptsResultNamedHandler": {
            "properties": {
                "handlers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The names of handlers exported as part of the named export.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the export.\n"
                }
            },
            "type": "object",
            "required": [
                "handlers",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultObservability:getWorkersScriptsResultObservability": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether observability is enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "logs": {
                    "$ref": "#/types/cloudflare:index/getWorkersScriptsResultObservabilityLogs:getWorkersScriptsResultObservabilityLogs",
                    "description": "Log settings for the Worker.\n"
                },
                "traces": {
                    "$ref": "#/types/cloudflare:index/getWorkersScriptsResultObservabilityTraces:getWorkersScriptsResultObservabilityTraces",
                    "description": "Trace settings for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "headSamplingRate",
                "logs",
                "traces"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultObservabilityLogs:getWorkersScriptsResultObservabilityLogs": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where logs will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "invocationLogs": {
                    "type": "boolean",
                    "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether log persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "destinations",
                "enabled",
                "headSamplingRate",
                "invocationLogs",
                "persist"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultObservabilityTraces:getWorkersScriptsResultObservabilityTraces": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of destinations where traces will be exported to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether traces are enabled for the Worker.\n"
                },
                "headSamplingRate": {
                    "type": "number",
                    "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.\n"
                },
                "persist": {
                    "type": "boolean",
                    "description": "Whether trace persistence is enabled for the Worker.\n"
                }
            },
            "type": "object",
            "required": [
                "destinations",
                "enabled",
                "headSamplingRate",
                "persist"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultPlacement:getWorkersScriptsResultPlacement": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host and port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "lastAnalyzedAt": {
                    "type": "string",
                    "description": "The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"smart\", \"targeted\".\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region for targeted placement in format 'provider:region'.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).\nAvailable values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getWorkersScriptsResultPlacementTarget:getWorkersScriptsResultPlacementTarget"
                    },
                    "description": "Array of placement targets (currently limited to single target).\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "hostname",
                "lastAnalyzedAt",
                "mode",
                "region",
                "status",
                "targets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultPlacementTarget:getWorkersScriptsResultPlacementTarget": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "TCP host:port for targeted placement.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "HTTP hostname for targeted placement.\n"
                },
                "region": {
                    "type": "string",
                    "description": "Cloud region in format 'provider:region'.\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "hostname",
                "region"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultRoute:getWorkersScriptsResultRoute": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "pattern": {
                    "type": "string",
                    "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).\n"
                },
                "script": {
                    "type": "string",
                    "description": "Name of the script to run if the route matches.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "pattern",
                "script"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkersScriptsResultTailConsumer:getWorkersScriptsResultTailConsumer": {
            "properties": {
                "environment": {
                    "type": "string",
                    "description": "Optional environment if the Worker utilizes one.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "Optional dispatch namespace the script belongs to.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of Worker that is to be the consumer.\n"
                }
            },
            "type": "object",
            "required": [
                "environment",
                "namespace",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkflowFilter:getWorkflowFilter": {
            "properties": {
                "search": {
                    "type": "string",
                    "description": "Allows filtering workflows` name.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getWorkflowInstances:getWorkflowInstances": {
            "properties": {
                "complete": {
                    "type": "number"
                },
                "errored": {
                    "type": "number"
                },
                "paused": {
                    "type": "number"
                },
                "queued": {
                    "type": "number"
                },
                "running": {
                    "type": "number"
                },
                "terminated": {
                    "type": "number"
                },
                "waiting": {
                    "type": "number"
                },
                "waitingForPause": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "complete",
                "errored",
                "paused",
                "queued",
                "running",
                "terminated",
                "waiting",
                "waitingForPause"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkflowsResult:getWorkflowsResult": {
            "properties": {
                "className": {
                    "type": "string"
                },
                "createdOn": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "instances": {
                    "$ref": "#/types/cloudflare:index/getWorkflowsResultInstances:getWorkflowsResultInstances"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string"
                },
                "triggeredOn": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "className",
                "createdOn",
                "id",
                "instances",
                "modifiedOn",
                "name",
                "scriptName",
                "triggeredOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getWorkflowsResultInstances:getWorkflowsResultInstances": {
            "properties": {
                "complete": {
                    "type": "number"
                },
                "errored": {
                    "type": "number"
                },
                "paused": {
                    "type": "number"
                },
                "queued": {
                    "type": "number"
                },
                "running": {
                    "type": "number"
                },
                "terminated": {
                    "type": "number"
                },
                "waiting": {
                    "type": "number"
                },
                "waitingForPause": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "complete",
                "errored",
                "paused",
                "queued",
                "running",
                "terminated",
                "waiting",
                "waitingForPause"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalFilter:getZeroTrustAccessAiControlsMcpPortalFilter": {
            "properties": {
                "search": {
                    "type": "string",
                    "description": "Search by id, name, hostname\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalServer:getZeroTrustAccessAiControlsMcpPortalServer": {
            "properties": {
                "authType": {
                    "type": "string",
                    "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "defaultDisabled": {
                    "type": "boolean"
                },
                "description": {
                    "type": "string"
                },
                "error": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "server id\n"
                },
                "lastSuccessfulSync": {
                    "type": "string"
                },
                "lastSynced": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "onBehalf": {
                    "type": "boolean"
                },
                "prompts": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "status": {
                    "type": "string"
                },
                "tools": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "updatedPrompts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt:getZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt"
                    }
                },
                "updatedTools": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalServerUpdatedTool:getZeroTrustAccessAiControlsMcpPortalServerUpdatedTool"
                    }
                }
            },
            "type": "object",
            "required": [
                "authType",
                "createdAt",
                "createdBy",
                "defaultDisabled",
                "description",
                "error",
                "hostname",
                "id",
                "lastSuccessfulSync",
                "lastSynced",
                "modifiedAt",
                "modifiedBy",
                "name",
                "onBehalf",
                "prompts",
                "status",
                "tools",
                "updatedPrompts",
                "updatedTools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt:getZeroTrustAccessAiControlsMcpPortalServerUpdatedPrompt": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "portalAlias": {
                    "type": "string"
                },
                "serverAlias": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "name",
                "portalAlias",
                "serverAlias"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalServerUpdatedTool:getZeroTrustAccessAiControlsMcpPortalServerUpdatedTool": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "portalAlias": {
                    "type": "string"
                },
                "serverAlias": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "name",
                "portalAlias",
                "serverAlias"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResult:getZeroTrustAccessAiControlsMcpPortalsResult": {
            "properties": {
                "allowCodeMode": {
                    "type": "boolean",
                    "description": "Allow remote code execution in Dynamic Workers (beta)\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "portal id\n"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "secureWebGateway": {
                    "type": "boolean",
                    "description": "Route outbound MCP traffic through Zero Trust Secure Web Gateway\n"
                },
                "servers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResultServer:getZeroTrustAccessAiControlsMcpPortalsResultServer"
                    }
                }
            },
            "type": "object",
            "required": [
                "allowCodeMode",
                "createdAt",
                "createdBy",
                "description",
                "hostname",
                "id",
                "modifiedAt",
                "modifiedBy",
                "name",
                "secureWebGateway",
                "servers"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResultServer:getZeroTrustAccessAiControlsMcpPortalsResultServer": {
            "properties": {
                "authType": {
                    "type": "string",
                    "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "defaultDisabled": {
                    "type": "boolean"
                },
                "description": {
                    "type": "string"
                },
                "error": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "server id\n"
                },
                "lastSuccessfulSync": {
                    "type": "string"
                },
                "lastSynced": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "onBehalf": {
                    "type": "boolean"
                },
                "prompts": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "status": {
                    "type": "string"
                },
                "tools": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "updatedPrompts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedPrompt:getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedPrompt"
                    }
                },
                "updatedTools": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedTool:getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedTool"
                    }
                }
            },
            "type": "object",
            "required": [
                "authType",
                "createdAt",
                "createdBy",
                "defaultDisabled",
                "description",
                "error",
                "hostname",
                "id",
                "lastSuccessfulSync",
                "lastSynced",
                "modifiedAt",
                "modifiedBy",
                "name",
                "onBehalf",
                "prompts",
                "status",
                "tools",
                "updatedPrompts",
                "updatedTools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedPrompt:getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedPrompt": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "portalAlias": {
                    "type": "string"
                },
                "serverAlias": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "name",
                "portalAlias",
                "serverAlias"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedTool:getZeroTrustAccessAiControlsMcpPortalsResultServerUpdatedTool": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "portalAlias": {
                    "type": "string"
                },
                "serverAlias": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "name",
                "portalAlias",
                "serverAlias"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServerFilter:getZeroTrustAccessAiControlsMcpServerFilter": {
            "properties": {
                "search": {
                    "type": "string",
                    "description": "Search by id, name\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServerUpdatedPrompt:getZeroTrustAccessAiControlsMcpServerUpdatedPrompt": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "alias",
                "description",
                "enabled",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServerUpdatedTool:getZeroTrustAccessAiControlsMcpServerUpdatedTool": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "alias",
                "description",
                "enabled",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServersResult:getZeroTrustAccessAiControlsMcpServersResult": {
            "properties": {
                "authType": {
                    "type": "string",
                    "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "error": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "server id\n"
                },
                "lastSuccessfulSync": {
                    "type": "string"
                },
                "lastSynced": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "prompts": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "status": {
                    "type": "string"
                },
                "tools": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "updatedPrompts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServersResultUpdatedPrompt:getZeroTrustAccessAiControlsMcpServersResultUpdatedPrompt"
                    }
                },
                "updatedTools": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServersResultUpdatedTool:getZeroTrustAccessAiControlsMcpServersResultUpdatedTool"
                    }
                }
            },
            "type": "object",
            "required": [
                "authType",
                "createdAt",
                "createdBy",
                "description",
                "error",
                "hostname",
                "id",
                "lastSuccessfulSync",
                "lastSynced",
                "modifiedAt",
                "modifiedBy",
                "name",
                "prompts",
                "status",
                "tools",
                "updatedPrompts",
                "updatedTools"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServersResultUpdatedPrompt:getZeroTrustAccessAiControlsMcpServersResultUpdatedPrompt": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "alias",
                "description",
                "enabled",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServersResultUpdatedTool:getZeroTrustAccessAiControlsMcpServersResultUpdatedTool": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "alias",
                "description",
                "enabled",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationCorsHeaders:getZeroTrustAccessApplicationCorsHeaders": {
            "properties": {
                "allowAllHeaders": {
                    "type": "boolean",
                    "description": "Allows all HTTP request headers.\n"
                },
                "allowAllMethods": {
                    "type": "boolean",
                    "description": "Allows all HTTP request methods.\n"
                },
                "allowAllOrigins": {
                    "type": "boolean",
                    "description": "Allows all origins.\n"
                },
                "allowCredentials": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, includes credentials (cookies, authorization headers, or TLS client certificates) with requests.\n"
                },
                "allowedHeaders": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request headers.\n"
                },
                "allowedMethods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request methods.\n"
                },
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed origins.\n"
                },
                "maxAge": {
                    "type": "number",
                    "description": "The maximum number of seconds the results of a preflight request can be cached.\n"
                }
            },
            "type": "object",
            "required": [
                "allowAllHeaders",
                "allowAllMethods",
                "allowAllOrigins",
                "allowCredentials",
                "allowedHeaders",
                "allowedMethods",
                "allowedOrigins",
                "maxAge"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationDestination:getZeroTrustAccessApplicationDestination": {
            "properties": {
                "cidr": {
                    "type": "string",
                    "description": "The CIDR range of the destination. Single IPs will be computed as /32.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the destination. Matches a valid SNI served by an HTTPS origin.\n"
                },
                "l4Protocol": {
                    "type": "string",
                    "description": "The L4 protocol of the destination. When omitted, both UDP and TCP traffic will match.\nAvailable values: \"tcp\", \"udp\".\n"
                },
                "mcpServerId": {
                    "type": "string",
                    "description": "A MCP server id configured in ai-controls. Access will secure the MCP server if accessed through a MCP portal.\n"
                },
                "portRange": {
                    "type": "string",
                    "description": "The port range of the destination. Can be a single port or a range of ports. When omitted, all ports will match.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"public\", \"private\".\n"
                },
                "uri": {
                    "type": "string",
                    "description": "The URI of the destination. Public destinations' URIs can include a domain and path with [wildcards](https://developers.cloudflare.com/cloudflare-one/policies/access/app-paths/).\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "The VNET ID to match the destination. When omitted, all VNETs will match.\n"
                }
            },
            "type": "object",
            "required": [
                "cidr",
                "hostname",
                "l4Protocol",
                "portRange",
                "type",
                "uri",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationFilter:getZeroTrustAccessApplicationFilter": {
            "properties": {
                "aud": {
                    "type": "string",
                    "description": "The aud of the app.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "The domain of the app.\n"
                },
                "exact": {
                    "type": "boolean",
                    "description": "True for only exact string matches against passed name/domain query parameters.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the app.\n"
                },
                "search": {
                    "type": "string",
                    "description": "Search for apps by other listed query parameters.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationFooterLink:getZeroTrustAccessApplicationFooterLink": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The hypertext in the footer link.\n"
                },
                "url": {
                    "type": "string",
                    "description": "the hyperlink in the footer link.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationLandingPageDesign:getZeroTrustAccessApplicationLandingPageDesign": {
            "properties": {
                "buttonColor": {
                    "type": "string",
                    "description": "The background color of the log in button on the landing page.\n"
                },
                "buttonTextColor": {
                    "type": "string",
                    "description": "The color of the text in the log in button on the landing page.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "The URL of the image shown on the landing page.\n"
                },
                "message": {
                    "type": "string",
                    "description": "The message shown on the landing page.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title shown on the landing page.\n"
                }
            },
            "type": "object",
            "required": [
                "buttonColor",
                "buttonTextColor",
                "imageUrl",
                "message",
                "title"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationMfaConfig:getZeroTrustAccessApplicationMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \u003cspan pulumi-lang-nodejs=\"\"securityKey\"\" pulumi-lang-dotnet=\"\"SecurityKey\"\" pulumi-lang-go=\"\"securityKey\"\" pulumi-lang-python=\"\"security_key\"\" pulumi-lang-yaml=\"\"securityKey\"\" pulumi-lang-java=\"\"securityKey\"\"\u003e\"securityKey\"\u003c/span\u003e.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this application.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "mfaDisabled",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicy:getZeroTrustAccessApplicationPolicy": {
            "properties": {
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyApprovalGroup:getZeroTrustAccessApplicationPolicyApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyConnectionRules:getZeroTrustAccessApplicationPolicyConnectionRules",
                    "description": "The rules that define how users may connect to the targets secured by your application.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExclude:getZeroTrustAccessApplicationPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The UUID of the policy\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyInclude:getZeroTrustAccessApplicationPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyMfaConfig:getZeroTrustAccessApplicationPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for this policy.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The order of execution for this policy. Must be unique for each policy within an app.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequire:getZeroTrustAccessApplicationPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "approvalGroups",
                "approvalRequired",
                "connectionRules",
                "createdAt",
                "decision",
                "excludes",
                "id",
                "includes",
                "isolationRequired",
                "mfaConfig",
                "name",
                "precedence",
                "purposeJustificationPrompt",
                "purposeJustificationRequired",
                "requires",
                "sessionDuration",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyApprovalGroup:getZeroTrustAccessApplicationPolicyApprovalGroup": {
            "properties": {
                "approvalsNeeded": {
                    "type": "number",
                    "description": "The number of approvals needed to obtain access.\n"
                },
                "emailAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of emails that can approve the access request.\n"
                },
                "emailListUuid": {
                    "type": "string",
                    "description": "The UUID of an re-usable email list.\n"
                }
            },
            "type": "object",
            "required": [
                "approvalsNeeded",
                "emailAddresses",
                "emailListUuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyConnectionRules:getZeroTrustAccessApplicationPolicyConnectionRules": {
            "properties": {
                "ssh": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyConnectionRulesSsh:getZeroTrustAccessApplicationPolicyConnectionRulesSsh",
                    "description": "The SSH-specific rules that define how users may connect to the targets secured by your application.\n"
                }
            },
            "type": "object",
            "required": [
                "ssh"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyConnectionRulesSsh:getZeroTrustAccessApplicationPolicyConnectionRulesSsh": {
            "properties": {
                "allowEmailAlias": {
                    "type": "boolean",
                    "description": "Enables using Identity Provider email alias as SSH username.\n"
                },
                "usernames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains the Unix usernames that may be used when connecting over SSH.\n"
                }
            },
            "type": "object",
            "required": [
                "allowEmailAlias",
                "usernames"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExclude:getZeroTrustAccessApplicationPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken:getZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAuthContext:getZeroTrustAccessApplicationPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAuthMethod:getZeroTrustAccessApplicationPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAzureAd:getZeroTrustAccessApplicationPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeCertificate:getZeroTrustAccessApplicationPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeCommonName:getZeroTrustAccessApplicationPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeDevicePosture:getZeroTrustAccessApplicationPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEmail:getZeroTrustAccessApplicationPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEmailDomain:getZeroTrustAccessApplicationPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEmailList:getZeroTrustAccessApplicationPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEveryone:getZeroTrustAccessApplicationPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeExternalEvaluation:getZeroTrustAccessApplicationPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGeo:getZeroTrustAccessApplicationPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGithubOrganization:getZeroTrustAccessApplicationPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGroup:getZeroTrustAccessApplicationPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGsuite:getZeroTrustAccessApplicationPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeIp:getZeroTrustAccessApplicationPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeIpList:getZeroTrustAccessApplicationPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeLinkedAppToken:getZeroTrustAccessApplicationPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeLoginMethod:getZeroTrustAccessApplicationPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeOidc:getZeroTrustAccessApplicationPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeOkta:getZeroTrustAccessApplicationPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeSaml:getZeroTrustAccessApplicationPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeServiceToken:getZeroTrustAccessApplicationPolicyExcludeServiceToken"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken:getZeroTrustAccessApplicationPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAuthContext:getZeroTrustAccessApplicationPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAuthMethod:getZeroTrustAccessApplicationPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeAzureAd:getZeroTrustAccessApplicationPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeCertificate:getZeroTrustAccessApplicationPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeCommonName:getZeroTrustAccessApplicationPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeDevicePosture:getZeroTrustAccessApplicationPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEmail:getZeroTrustAccessApplicationPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEmailDomain:getZeroTrustAccessApplicationPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEmailList:getZeroTrustAccessApplicationPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeEveryone:getZeroTrustAccessApplicationPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeExternalEvaluation:getZeroTrustAccessApplicationPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGeo:getZeroTrustAccessApplicationPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGithubOrganization:getZeroTrustAccessApplicationPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGroup:getZeroTrustAccessApplicationPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeGsuite:getZeroTrustAccessApplicationPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeIp:getZeroTrustAccessApplicationPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeIpList:getZeroTrustAccessApplicationPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeLinkedAppToken:getZeroTrustAccessApplicationPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeLoginMethod:getZeroTrustAccessApplicationPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeOidc:getZeroTrustAccessApplicationPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeOkta:getZeroTrustAccessApplicationPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeSaml:getZeroTrustAccessApplicationPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyExcludeServiceToken:getZeroTrustAccessApplicationPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyInclude:getZeroTrustAccessApplicationPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken:getZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAuthContext:getZeroTrustAccessApplicationPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAuthMethod:getZeroTrustAccessApplicationPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAzureAd:getZeroTrustAccessApplicationPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeCertificate:getZeroTrustAccessApplicationPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeCommonName:getZeroTrustAccessApplicationPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeDevicePosture:getZeroTrustAccessApplicationPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEmail:getZeroTrustAccessApplicationPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEmailDomain:getZeroTrustAccessApplicationPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEmailList:getZeroTrustAccessApplicationPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEveryone:getZeroTrustAccessApplicationPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeExternalEvaluation:getZeroTrustAccessApplicationPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGeo:getZeroTrustAccessApplicationPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGithubOrganization:getZeroTrustAccessApplicationPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGroup:getZeroTrustAccessApplicationPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGsuite:getZeroTrustAccessApplicationPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeIp:getZeroTrustAccessApplicationPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeIpList:getZeroTrustAccessApplicationPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeLinkedAppToken:getZeroTrustAccessApplicationPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeLoginMethod:getZeroTrustAccessApplicationPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeOidc:getZeroTrustAccessApplicationPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeOkta:getZeroTrustAccessApplicationPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeSaml:getZeroTrustAccessApplicationPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeServiceToken:getZeroTrustAccessApplicationPolicyIncludeServiceToken"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken:getZeroTrustAccessApplicationPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAuthContext:getZeroTrustAccessApplicationPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAuthMethod:getZeroTrustAccessApplicationPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeAzureAd:getZeroTrustAccessApplicationPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeCertificate:getZeroTrustAccessApplicationPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeCommonName:getZeroTrustAccessApplicationPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeDevicePosture:getZeroTrustAccessApplicationPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEmail:getZeroTrustAccessApplicationPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEmailDomain:getZeroTrustAccessApplicationPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEmailList:getZeroTrustAccessApplicationPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeEveryone:getZeroTrustAccessApplicationPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeExternalEvaluation:getZeroTrustAccessApplicationPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGeo:getZeroTrustAccessApplicationPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGithubOrganization:getZeroTrustAccessApplicationPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGroup:getZeroTrustAccessApplicationPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeGsuite:getZeroTrustAccessApplicationPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeIp:getZeroTrustAccessApplicationPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeIpList:getZeroTrustAccessApplicationPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeLinkedAppToken:getZeroTrustAccessApplicationPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeLoginMethod:getZeroTrustAccessApplicationPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeOidc:getZeroTrustAccessApplicationPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeOkta:getZeroTrustAccessApplicationPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeSaml:getZeroTrustAccessApplicationPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyIncludeServiceToken:getZeroTrustAccessApplicationPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyMfaConfig:getZeroTrustAccessApplicationPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \"security*key\", \"ssh*piv_key\".\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "mfaDisabled",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequire:getZeroTrustAccessApplicationPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken:getZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAuthContext:getZeroTrustAccessApplicationPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAuthMethod:getZeroTrustAccessApplicationPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAzureAd:getZeroTrustAccessApplicationPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireCertificate:getZeroTrustAccessApplicationPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireCommonName:getZeroTrustAccessApplicationPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireDevicePosture:getZeroTrustAccessApplicationPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEmail:getZeroTrustAccessApplicationPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEmailDomain:getZeroTrustAccessApplicationPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEmailList:getZeroTrustAccessApplicationPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEveryone:getZeroTrustAccessApplicationPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireExternalEvaluation:getZeroTrustAccessApplicationPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGeo:getZeroTrustAccessApplicationPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGithubOrganization:getZeroTrustAccessApplicationPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGroup:getZeroTrustAccessApplicationPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGsuite:getZeroTrustAccessApplicationPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireIp:getZeroTrustAccessApplicationPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireIpList:getZeroTrustAccessApplicationPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireLinkedAppToken:getZeroTrustAccessApplicationPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireLoginMethod:getZeroTrustAccessApplicationPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireOidc:getZeroTrustAccessApplicationPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireOkta:getZeroTrustAccessApplicationPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireSaml:getZeroTrustAccessApplicationPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicyRequireServiceToken:getZeroTrustAccessApplicationPolicyRequireServiceToken"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken:getZeroTrustAccessApplicationPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAuthContext:getZeroTrustAccessApplicationPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAuthMethod:getZeroTrustAccessApplicationPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireAzureAd:getZeroTrustAccessApplicationPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireCertificate:getZeroTrustAccessApplicationPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireCommonName:getZeroTrustAccessApplicationPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireDevicePosture:getZeroTrustAccessApplicationPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEmail:getZeroTrustAccessApplicationPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEmailDomain:getZeroTrustAccessApplicationPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEmailList:getZeroTrustAccessApplicationPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireEveryone:getZeroTrustAccessApplicationPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireExternalEvaluation:getZeroTrustAccessApplicationPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGeo:getZeroTrustAccessApplicationPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGithubOrganization:getZeroTrustAccessApplicationPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGroup:getZeroTrustAccessApplicationPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireGsuite:getZeroTrustAccessApplicationPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireIp:getZeroTrustAccessApplicationPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireIpList:getZeroTrustAccessApplicationPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireLinkedAppToken:getZeroTrustAccessApplicationPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireLoginMethod:getZeroTrustAccessApplicationPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireOidc:getZeroTrustAccessApplicationPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireOkta:getZeroTrustAccessApplicationPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireSaml:getZeroTrustAccessApplicationPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationPolicyRequireServiceToken:getZeroTrustAccessApplicationPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasApp:getZeroTrustAccessApplicationSaasApp": {
            "properties": {
                "accessTokenLifetime": {
                    "type": "string",
                    "description": "The lifetime of the OIDC Access Token after creation. Valid units are m,h. Must be greater than or equal to 1m and less than or equal to 24h.\n"
                },
                "allowPkceWithoutClientSecret": {
                    "type": "boolean",
                    "description": "If client secret should be required on the token endpoint when authorization*code*with_pkce grant is used.\n"
                },
                "appLauncherUrl": {
                    "type": "string",
                    "description": "The URL where this applications tile redirects users\n"
                },
                "authType": {
                    "type": "string",
                    "description": "Optional identifier indicating the authentication protocol used for the saas app. Required for OIDC. Default if unset is \"saml\"\nAvailable values: \"saml\", \"oidc\".\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The application client id\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The application client secret, only returned on POST request.\n",
                    "secret": true
                },
                "consumerServiceUrl": {
                    "type": "string",
                    "description": "The service provider's endpoint that is responsible for receiving and parsing a SAML assertion.\n"
                },
                "customAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomAttribute:getZeroTrustAccessApplicationSaasAppCustomAttribute"
                    }
                },
                "customClaims": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomClaim:getZeroTrustAccessApplicationSaasAppCustomClaim"
                    }
                },
                "defaultRelayState": {
                    "type": "string",
                    "description": "The URL that the user will be redirected to after a successful login for IDP initiated logins.\n"
                },
                "grantTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The OIDC flows supported by this application\n"
                },
                "groupFilterRegex": {
                    "type": "string",
                    "description": "A regex to filter Cloudflare groups returned in ID token and userinfo endpoint\n"
                },
                "hybridAndImplicitOptions": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions:getZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions"
                },
                "idpEntityId": {
                    "type": "string",
                    "description": "The unique identifier for your SaaS application.\n"
                },
                "nameIdFormat": {
                    "type": "string",
                    "description": "The format of the name identifier sent to the SaaS application.\nAvailable values: \"id\", \"email\".\n"
                },
                "nameIdTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into a NameID value for its SAML assertion. This expression should evaluate to a singular string. The output of this expression can override the \u003cspan pulumi-lang-nodejs=\"`nameIdFormat`\" pulumi-lang-dotnet=\"`NameIdFormat`\" pulumi-lang-go=\"`nameIdFormat`\" pulumi-lang-python=\"`name_id_format`\" pulumi-lang-yaml=\"`nameIdFormat`\" pulumi-lang-java=\"`nameIdFormat`\"\u003e`nameIdFormat`\u003c/span\u003e setting.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The Access public certificate that will be used to verify your identity.\n"
                },
                "redirectUris": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The permitted URL's for Cloudflare to return Authorization codes and Access/ID tokens\n"
                },
                "refreshTokenOptions": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppRefreshTokenOptions:getZeroTrustAccessApplicationSaasAppRefreshTokenOptions"
                },
                "samlAttributeTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into attribute assertions in the SAML response. The expression can transform id, email, name, and groups values. It can also transform fields listed in the saml*attributes or oidc*fields of the identity provider used to authenticate. The output of this expression must be a JSON object.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Define the user information shared with access, \u003cspan pulumi-lang-nodejs=\"\"offlineAccess\"\" pulumi-lang-dotnet=\"\"OfflineAccess\"\" pulumi-lang-go=\"\"offlineAccess\"\" pulumi-lang-python=\"\"offline_access\"\" pulumi-lang-yaml=\"\"offlineAccess\"\" pulumi-lang-java=\"\"offlineAccess\"\"\u003e\"offlineAccess\"\u003c/span\u003e scope will be automatically enabled if refresh tokens are enabled\n"
                },
                "spEntityId": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\n"
                },
                "ssoEndpoint": {
                    "type": "string",
                    "description": "The endpoint where your SaaS application will send login requests.\n"
                }
            },
            "type": "object",
            "required": [
                "accessTokenLifetime",
                "allowPkceWithoutClientSecret",
                "appLauncherUrl",
                "authType",
                "clientId",
                "clientSecret",
                "consumerServiceUrl",
                "customAttributes",
                "customClaims",
                "defaultRelayState",
                "grantTypes",
                "groupFilterRegex",
                "hybridAndImplicitOptions",
                "idpEntityId",
                "nameIdFormat",
                "nameIdTransformJsonata",
                "publicKey",
                "redirectUris",
                "refreshTokenOptions",
                "samlAttributeTransformJsonata",
                "scopes",
                "spEntityId",
                "ssoEndpoint"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomAttribute:getZeroTrustAccessApplicationSaasAppCustomAttribute": {
            "properties": {
                "friendlyName": {
                    "type": "string",
                    "description": "The SAML FriendlyName of the attribute.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the attribute.\n"
                },
                "nameFormat": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\nAvailable values: \"urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:basic\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:uri\".\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the attribute is required when building a SAML assertion.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomAttributeSource:getZeroTrustAccessApplicationSaasAppCustomAttributeSource"
                }
            },
            "type": "object",
            "required": [
                "friendlyName",
                "name",
                "nameFormat",
                "required",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomAttributeSource:getZeroTrustAccessApplicationSaasAppCustomAttributeSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP attribute.\n"
                },
                "nameByIdps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp:getZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp"
                    },
                    "description": "A mapping from IdP ID to attribute name.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "nameByIdps"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp:getZeroTrustAccessApplicationSaasAppCustomAttributeSourceNameByIdp": {
            "properties": {
                "idpId": {
                    "type": "string",
                    "description": "The UID of the IdP.\n"
                },
                "sourceName": {
                    "type": "string",
                    "description": "The name of the IdP provided attribute.\n"
                }
            },
            "type": "object",
            "required": [
                "idpId",
                "sourceName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomClaim:getZeroTrustAccessApplicationSaasAppCustomClaim": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the claim.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the claim is required when building an OIDC token.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of the claim.\nAvailable values: \"groups\", \"profile\", \"email\", \"openid\".\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomClaimSource:getZeroTrustAccessApplicationSaasAppCustomClaimSource"
                }
            },
            "type": "object",
            "required": [
                "name",
                "required",
                "scope",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppCustomClaimSource:getZeroTrustAccessApplicationSaasAppCustomClaimSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP claim.\n"
                },
                "nameByIdp": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A mapping from IdP ID to claim name.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "nameByIdp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions:getZeroTrustAccessApplicationSaasAppHybridAndImplicitOptions": {
            "properties": {
                "returnAccessTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an Access Token should be returned from the OIDC Authorization endpoint\n"
                },
                "returnIdTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an ID Token should be returned from the OIDC Authorization endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "returnAccessTokenFromAuthorizationEndpoint",
                "returnIdTokenFromAuthorizationEndpoint"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationSaasAppRefreshTokenOptions:getZeroTrustAccessApplicationSaasAppRefreshTokenOptions": {
            "properties": {
                "lifetime": {
                    "type": "string",
                    "description": "How long a refresh token will be valid for after creation. Valid units are m,h,d. Must be longer than 1m.\n"
                }
            },
            "type": "object",
            "required": [
                "lifetime"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationScimConfig:getZeroTrustAccessApplicationScimConfig": {
            "properties": {
                "authentication": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationScimConfigAuthentication:getZeroTrustAccessApplicationScimConfigAuthentication",
                    "description": "Attributes for configuring HTTP Basic authentication scheme for SCIM provisioning to an application.\n"
                },
                "deactivateOnDelete": {
                    "type": "boolean",
                    "description": "If false, propagates DELETE requests to the target application for SCIM resources. If true, sets 'active' to false on the SCIM resource. Note: Some targets do not support DELETE operations.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether SCIM provisioning is turned on for this application.\n"
                },
                "idpUid": {
                    "type": "string",
                    "description": "The UID of the IdP to use as the source for SCIM resources to provision to this application.\n"
                },
                "mappings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationScimConfigMapping:getZeroTrustAccessApplicationScimConfigMapping"
                    },
                    "description": "A list of mappings to apply to SCIM resources before provisioning them in this application. These can transform or filter the resources to be provisioned.\n"
                },
                "remoteUri": {
                    "type": "string",
                    "description": "The base URI for the application's SCIM-compatible API.\n"
                }
            },
            "type": "object",
            "required": [
                "authentication",
                "deactivateOnDelete",
                "enabled",
                "idpUid",
                "mappings",
                "remoteUri"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationScimConfigAuthentication:getZeroTrustAccessApplicationScimConfigAuthentication": {
            "properties": {
                "authorizationUrl": {
                    "type": "string",
                    "description": "URL used to generate the auth code used during token generation.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Client ID used to authenticate when generating a token for authenticating with the remote SCIM service.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Secret used to authenticate when generating a token for authenticating with the remove SCIM service.\n",
                    "secret": true
                },
                "password": {
                    "type": "string",
                    "description": "Password used to authenticate with the remote SCIM service.\n"
                },
                "scheme": {
                    "type": "string",
                    "description": "The authentication scheme to use when making SCIM requests to this application.\nAvailable values: \"httpbasic\", \"oauthbearertoken\", \"oauth2\", \"access*service*token\".\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authorization scopes to request when generating the token used to authenticate with the remove SCIM service.\n"
                },
                "token": {
                    "type": "string",
                    "description": "Token used to authenticate with the remote SCIM service.\n",
                    "secret": true
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "URL used to generate the token used to authenticate with the remote SCIM service.\n"
                },
                "user": {
                    "type": "string",
                    "description": "User name used to authenticate with the remote SCIM service.\n"
                }
            },
            "type": "object",
            "required": [
                "authorizationUrl",
                "clientId",
                "clientSecret",
                "password",
                "scheme",
                "scopes",
                "token",
                "tokenUrl",
                "user"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationScimConfigMapping:getZeroTrustAccessApplicationScimConfigMapping": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this mapping is enabled.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "A [SCIM filter expression](https://datatracker.ietf.org/doc/html/rfc7644#section-3.4.2.2) that matches resources that should be provisioned to this application.\n"
                },
                "operations": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationScimConfigMappingOperations:getZeroTrustAccessApplicationScimConfigMappingOperations",
                    "description": "Whether or not this mapping applies to creates, updates, or deletes.\n"
                },
                "schema": {
                    "type": "string",
                    "description": "Which SCIM resource type this mapping applies to.\n"
                },
                "strictness": {
                    "type": "string",
                    "description": "The level of adherence to outbound resource schemas when provisioning to this mapping. ‘Strict’ removes unknown values, while ‘passthrough’ passes unknown values to the target.\nAvailable values: \"strict\", \"passthrough\".\n"
                },
                "transformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms the resource before provisioning it in the application.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "filter",
                "operations",
                "schema",
                "strictness",
                "transformJsonata"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationScimConfigMappingOperations:getZeroTrustAccessApplicationScimConfigMappingOperations": {
            "properties": {
                "create": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to create (POST) operations.\n"
                },
                "delete": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to DELETE operations.\n"
                },
                "update": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to update (PATCH/PUT) operations.\n"
                }
            },
            "type": "object",
            "required": [
                "create",
                "delete",
                "update"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationTargetCriteria:getZeroTrustAccessApplicationTargetCriteria": {
            "properties": {
                "port": {
                    "type": "integer",
                    "description": "The port that the targets use for the chosen communication protocol. A port cannot be assigned to multiple protocols.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The communication protocol your application secures.\nAvailable values: \"SSH\", \"RDP\".\n"
                },
                "targetAttributes": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Contains a map of target attribute keys to target attribute values.\n"
                }
            },
            "type": "object",
            "required": [
                "port",
                "protocol",
                "targetAttributes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResult:getZeroTrustAccessApplicationsResult": {
            "properties": {
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                },
                "allowIframe": {
                    "type": "boolean",
                    "description": "Enables loading application content in an iFrame.\n"
                },
                "allowedIdps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                },
                "appLauncherLogoUrl": {
                    "type": "string",
                    "description": "The image URL of the logo shown in the App Launcher header.\n"
                },
                "appLauncherVisible": {
                    "type": "boolean",
                    "description": "Displays the application in the App Launcher.\n"
                },
                "aud": {
                    "type": "string",
                    "description": "Audience tag.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                },
                "bgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher page.\n"
                },
                "corsHeaders": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultCorsHeaders:getZeroTrustAccessApplicationsResultCorsHeaders"
                },
                "customDenyMessage": {
                    "type": "string",
                    "description": "The custom error message shown to a user when they are denied access to the application.\n"
                },
                "customDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                },
                "customNonIdentityDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                },
                "customPages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The custom pages that will be displayed when applicable for this application\n"
                },
                "destinations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultDestination:getZeroTrustAccessApplicationsResultDestination"
                    },
                    "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                },
                "enableBindingCookie": {
                    "type": "boolean",
                    "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                },
                "footerLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultFooterLink:getZeroTrustAccessApplicationsResultFooterLink"
                    },
                    "description": "The links in the App Launcher footer.\n"
                },
                "headerBgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher header.\n"
                },
                "httpOnlyCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "landingPageDesign": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultLandingPageDesign:getZeroTrustAccessApplicationsResultLandingPageDesign",
                    "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                },
                "logoUrl": {
                    "type": "string",
                    "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultMfaConfig:getZeroTrustAccessApplicationsResultMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the application.\n"
                },
                "optionsPreflightBypass": {
                    "type": "boolean",
                    "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                },
                "pathCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicy:getZeroTrustAccessApplicationsResultPolicy"
                    }
                },
                "readServiceTokensFromHeader": {
                    "type": "string",
                    "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                },
                "saasApp": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasApp:getZeroTrustAccessApplicationsResultSaasApp"
                },
                "sameSiteCookieAttribute": {
                    "type": "string",
                    "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultScimConfig:getZeroTrustAccessApplicationsResultScimConfig",
                    "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                },
                "selfHostedDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "serviceAuth401Redirect": {
                    "type": "boolean",
                    "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                },
                "skipAppLauncherLoginPage": {
                    "type": "boolean",
                    "description": "Determines when to skip the App Launcher landing page.\n"
                },
                "skipInterstitial": {
                    "type": "boolean",
                    "description": "Enables automatic authentication through cloudflared.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                },
                "targetCriterias": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultTargetCriteria:getZeroTrustAccessApplicationsResultTargetCriteria"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\".\n"
                }
            },
            "type": "object",
            "required": [
                "allowAuthenticateViaWarp",
                "allowIframe",
                "allowedIdps",
                "appLauncherLogoUrl",
                "appLauncherVisible",
                "aud",
                "autoRedirectToIdentity",
                "bgColor",
                "corsHeaders",
                "customDenyMessage",
                "customDenyUrl",
                "customNonIdentityDenyUrl",
                "customPages",
                "destinations",
                "domain",
                "enableBindingCookie",
                "footerLinks",
                "headerBgColor",
                "httpOnlyCookieAttribute",
                "id",
                "landingPageDesign",
                "logoUrl",
                "mfaConfig",
                "name",
                "optionsPreflightBypass",
                "pathCookieAttribute",
                "policies",
                "readServiceTokensFromHeader",
                "saasApp",
                "sameSiteCookieAttribute",
                "scimConfig",
                "selfHostedDomains",
                "serviceAuth401Redirect",
                "sessionDuration",
                "skipAppLauncherLoginPage",
                "skipInterstitial",
                "tags",
                "targetCriterias",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultCorsHeaders:getZeroTrustAccessApplicationsResultCorsHeaders": {
            "properties": {
                "allowAllHeaders": {
                    "type": "boolean",
                    "description": "Allows all HTTP request headers.\n"
                },
                "allowAllMethods": {
                    "type": "boolean",
                    "description": "Allows all HTTP request methods.\n"
                },
                "allowAllOrigins": {
                    "type": "boolean",
                    "description": "Allows all origins.\n"
                },
                "allowCredentials": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, includes credentials (cookies, authorization headers, or TLS client certificates) with requests.\n"
                },
                "allowedHeaders": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request headers.\n"
                },
                "allowedMethods": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed HTTP request methods.\n"
                },
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Allowed origins.\n"
                },
                "maxAge": {
                    "type": "number",
                    "description": "The maximum number of seconds the results of a preflight request can be cached.\n"
                }
            },
            "type": "object",
            "required": [
                "allowAllHeaders",
                "allowAllMethods",
                "allowAllOrigins",
                "allowCredentials",
                "allowedHeaders",
                "allowedMethods",
                "allowedOrigins",
                "maxAge"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultDestination:getZeroTrustAccessApplicationsResultDestination": {
            "properties": {
                "cidr": {
                    "type": "string",
                    "description": "The CIDR range of the destination. Single IPs will be computed as /32.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the destination. Matches a valid SNI served by an HTTPS origin.\n"
                },
                "l4Protocol": {
                    "type": "string",
                    "description": "The L4 protocol of the destination. When omitted, both UDP and TCP traffic will match.\nAvailable values: \"tcp\", \"udp\".\n"
                },
                "mcpServerId": {
                    "type": "string",
                    "description": "A MCP server id configured in ai-controls. Access will secure the MCP server if accessed through a MCP portal.\n"
                },
                "portRange": {
                    "type": "string",
                    "description": "The port range of the destination. Can be a single port or a range of ports. When omitted, all ports will match.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"public\", \"private\".\n"
                },
                "uri": {
                    "type": "string",
                    "description": "The URI of the destination. Public destinations' URIs can include a domain and path with [wildcards](https://developers.cloudflare.com/cloudflare-one/policies/access/app-paths/).\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "The VNET ID to match the destination. When omitted, all VNETs will match.\n"
                }
            },
            "type": "object",
            "required": [
                "cidr",
                "hostname",
                "l4Protocol",
                "portRange",
                "type",
                "uri",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultFooterLink:getZeroTrustAccessApplicationsResultFooterLink": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The hypertext in the footer link.\n"
                },
                "url": {
                    "type": "string",
                    "description": "the hyperlink in the footer link.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultLandingPageDesign:getZeroTrustAccessApplicationsResultLandingPageDesign": {
            "properties": {
                "buttonColor": {
                    "type": "string",
                    "description": "The background color of the log in button on the landing page.\n"
                },
                "buttonTextColor": {
                    "type": "string",
                    "description": "The color of the text in the log in button on the landing page.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "The URL of the image shown on the landing page.\n"
                },
                "message": {
                    "type": "string",
                    "description": "The message shown on the landing page.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title shown on the landing page.\n"
                }
            },
            "type": "object",
            "required": [
                "buttonColor",
                "buttonTextColor",
                "imageUrl",
                "message",
                "title"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultMfaConfig:getZeroTrustAccessApplicationsResultMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \u003cspan pulumi-lang-nodejs=\"\"securityKey\"\" pulumi-lang-dotnet=\"\"SecurityKey\"\" pulumi-lang-go=\"\"securityKey\"\" pulumi-lang-python=\"\"security_key\"\" pulumi-lang-yaml=\"\"securityKey\"\" pulumi-lang-java=\"\"securityKey\"\"\u003e\"securityKey\"\u003c/span\u003e.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this application.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "mfaDisabled",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicy:getZeroTrustAccessApplicationsResultPolicy": {
            "properties": {
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyApprovalGroup:getZeroTrustAccessApplicationsResultPolicyApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyConnectionRules:getZeroTrustAccessApplicationsResultPolicyConnectionRules",
                    "description": "The rules that define how users may connect to the targets secured by your application.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExclude:getZeroTrustAccessApplicationsResultPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The UUID of the policy\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyInclude:getZeroTrustAccessApplicationsResultPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyMfaConfig:getZeroTrustAccessApplicationsResultPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for this policy.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The order of execution for this policy. Must be unique for each policy within an app.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequire:getZeroTrustAccessApplicationsResultPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "approvalGroups",
                "approvalRequired",
                "connectionRules",
                "createdAt",
                "decision",
                "excludes",
                "id",
                "includes",
                "isolationRequired",
                "mfaConfig",
                "name",
                "precedence",
                "purposeJustificationPrompt",
                "purposeJustificationRequired",
                "requires",
                "sessionDuration",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyApprovalGroup:getZeroTrustAccessApplicationsResultPolicyApprovalGroup": {
            "properties": {
                "approvalsNeeded": {
                    "type": "number",
                    "description": "The number of approvals needed to obtain access.\n"
                },
                "emailAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of emails that can approve the access request.\n"
                },
                "emailListUuid": {
                    "type": "string",
                    "description": "The UUID of an re-usable email list.\n"
                }
            },
            "type": "object",
            "required": [
                "approvalsNeeded",
                "emailAddresses",
                "emailListUuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyConnectionRules:getZeroTrustAccessApplicationsResultPolicyConnectionRules": {
            "properties": {
                "ssh": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyConnectionRulesSsh:getZeroTrustAccessApplicationsResultPolicyConnectionRulesSsh",
                    "description": "The SSH-specific rules that define how users may connect to the targets secured by your application.\n"
                }
            },
            "type": "object",
            "required": [
                "ssh"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyConnectionRulesSsh:getZeroTrustAccessApplicationsResultPolicyConnectionRulesSsh": {
            "properties": {
                "allowEmailAlias": {
                    "type": "boolean",
                    "description": "Enables using Identity Provider email alias as SSH username.\n"
                },
                "usernames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains the Unix usernames that may be used when connecting over SSH.\n"
                }
            },
            "type": "object",
            "required": [
                "allowEmailAlias",
                "usernames"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExclude:getZeroTrustAccessApplicationsResultPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAnyValidServiceToken:getZeroTrustAccessApplicationsResultPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAuthContext:getZeroTrustAccessApplicationsResultPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAuthMethod:getZeroTrustAccessApplicationsResultPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAzureAd:getZeroTrustAccessApplicationsResultPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeCertificate:getZeroTrustAccessApplicationsResultPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeCommonName:getZeroTrustAccessApplicationsResultPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeDevicePosture:getZeroTrustAccessApplicationsResultPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEmail:getZeroTrustAccessApplicationsResultPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEmailDomain:getZeroTrustAccessApplicationsResultPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEmailList:getZeroTrustAccessApplicationsResultPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEveryone:getZeroTrustAccessApplicationsResultPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeExternalEvaluation:getZeroTrustAccessApplicationsResultPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGeo:getZeroTrustAccessApplicationsResultPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGithubOrganization:getZeroTrustAccessApplicationsResultPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGroup:getZeroTrustAccessApplicationsResultPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGsuite:getZeroTrustAccessApplicationsResultPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeIp:getZeroTrustAccessApplicationsResultPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeIpList:getZeroTrustAccessApplicationsResultPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeLinkedAppToken:getZeroTrustAccessApplicationsResultPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeLoginMethod:getZeroTrustAccessApplicationsResultPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeOidc:getZeroTrustAccessApplicationsResultPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeOkta:getZeroTrustAccessApplicationsResultPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeSaml:getZeroTrustAccessApplicationsResultPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeServiceToken:getZeroTrustAccessApplicationsResultPolicyExcludeServiceToken"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAnyValidServiceToken:getZeroTrustAccessApplicationsResultPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAuthContext:getZeroTrustAccessApplicationsResultPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAuthMethod:getZeroTrustAccessApplicationsResultPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeAzureAd:getZeroTrustAccessApplicationsResultPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeCertificate:getZeroTrustAccessApplicationsResultPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeCommonName:getZeroTrustAccessApplicationsResultPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeDevicePosture:getZeroTrustAccessApplicationsResultPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEmail:getZeroTrustAccessApplicationsResultPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEmailDomain:getZeroTrustAccessApplicationsResultPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEmailList:getZeroTrustAccessApplicationsResultPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeEveryone:getZeroTrustAccessApplicationsResultPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeExternalEvaluation:getZeroTrustAccessApplicationsResultPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGeo:getZeroTrustAccessApplicationsResultPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGithubOrganization:getZeroTrustAccessApplicationsResultPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGroup:getZeroTrustAccessApplicationsResultPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeGsuite:getZeroTrustAccessApplicationsResultPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeIp:getZeroTrustAccessApplicationsResultPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeIpList:getZeroTrustAccessApplicationsResultPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeLinkedAppToken:getZeroTrustAccessApplicationsResultPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeLoginMethod:getZeroTrustAccessApplicationsResultPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeOidc:getZeroTrustAccessApplicationsResultPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeOkta:getZeroTrustAccessApplicationsResultPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeSaml:getZeroTrustAccessApplicationsResultPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyExcludeServiceToken:getZeroTrustAccessApplicationsResultPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyInclude:getZeroTrustAccessApplicationsResultPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAnyValidServiceToken:getZeroTrustAccessApplicationsResultPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAuthContext:getZeroTrustAccessApplicationsResultPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAuthMethod:getZeroTrustAccessApplicationsResultPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAzureAd:getZeroTrustAccessApplicationsResultPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeCertificate:getZeroTrustAccessApplicationsResultPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeCommonName:getZeroTrustAccessApplicationsResultPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeDevicePosture:getZeroTrustAccessApplicationsResultPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEmail:getZeroTrustAccessApplicationsResultPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEmailDomain:getZeroTrustAccessApplicationsResultPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEmailList:getZeroTrustAccessApplicationsResultPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEveryone:getZeroTrustAccessApplicationsResultPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeExternalEvaluation:getZeroTrustAccessApplicationsResultPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGeo:getZeroTrustAccessApplicationsResultPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGithubOrganization:getZeroTrustAccessApplicationsResultPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGroup:getZeroTrustAccessApplicationsResultPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGsuite:getZeroTrustAccessApplicationsResultPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeIp:getZeroTrustAccessApplicationsResultPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeIpList:getZeroTrustAccessApplicationsResultPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeLinkedAppToken:getZeroTrustAccessApplicationsResultPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeLoginMethod:getZeroTrustAccessApplicationsResultPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeOidc:getZeroTrustAccessApplicationsResultPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeOkta:getZeroTrustAccessApplicationsResultPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeSaml:getZeroTrustAccessApplicationsResultPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeServiceToken:getZeroTrustAccessApplicationsResultPolicyIncludeServiceToken"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAnyValidServiceToken:getZeroTrustAccessApplicationsResultPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAuthContext:getZeroTrustAccessApplicationsResultPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAuthMethod:getZeroTrustAccessApplicationsResultPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeAzureAd:getZeroTrustAccessApplicationsResultPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeCertificate:getZeroTrustAccessApplicationsResultPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeCommonName:getZeroTrustAccessApplicationsResultPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeDevicePosture:getZeroTrustAccessApplicationsResultPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEmail:getZeroTrustAccessApplicationsResultPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEmailDomain:getZeroTrustAccessApplicationsResultPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEmailList:getZeroTrustAccessApplicationsResultPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeEveryone:getZeroTrustAccessApplicationsResultPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeExternalEvaluation:getZeroTrustAccessApplicationsResultPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGeo:getZeroTrustAccessApplicationsResultPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGithubOrganization:getZeroTrustAccessApplicationsResultPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGroup:getZeroTrustAccessApplicationsResultPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeGsuite:getZeroTrustAccessApplicationsResultPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeIp:getZeroTrustAccessApplicationsResultPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeIpList:getZeroTrustAccessApplicationsResultPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeLinkedAppToken:getZeroTrustAccessApplicationsResultPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeLoginMethod:getZeroTrustAccessApplicationsResultPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeOidc:getZeroTrustAccessApplicationsResultPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeOkta:getZeroTrustAccessApplicationsResultPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeSaml:getZeroTrustAccessApplicationsResultPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyIncludeServiceToken:getZeroTrustAccessApplicationsResultPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyMfaConfig:getZeroTrustAccessApplicationsResultPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authenticators allowed for MFA.\nAvailable values: \"totp\", \"biometrics\", \"security*key\", \"ssh*piv_key\".\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Whether MFA is disabled for this policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "How often a user will be forced to re-authenticate with MFA.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "mfaDisabled",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequire:getZeroTrustAccessApplicationsResultPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAnyValidServiceToken:getZeroTrustAccessApplicationsResultPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAuthContext:getZeroTrustAccessApplicationsResultPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAuthMethod:getZeroTrustAccessApplicationsResultPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAzureAd:getZeroTrustAccessApplicationsResultPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireCertificate:getZeroTrustAccessApplicationsResultPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireCommonName:getZeroTrustAccessApplicationsResultPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireDevicePosture:getZeroTrustAccessApplicationsResultPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEmail:getZeroTrustAccessApplicationsResultPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEmailDomain:getZeroTrustAccessApplicationsResultPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEmailList:getZeroTrustAccessApplicationsResultPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEveryone:getZeroTrustAccessApplicationsResultPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireExternalEvaluation:getZeroTrustAccessApplicationsResultPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGeo:getZeroTrustAccessApplicationsResultPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGithubOrganization:getZeroTrustAccessApplicationsResultPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGroup:getZeroTrustAccessApplicationsResultPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGsuite:getZeroTrustAccessApplicationsResultPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireIp:getZeroTrustAccessApplicationsResultPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireIpList:getZeroTrustAccessApplicationsResultPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireLinkedAppToken:getZeroTrustAccessApplicationsResultPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireLoginMethod:getZeroTrustAccessApplicationsResultPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireOidc:getZeroTrustAccessApplicationsResultPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireOkta:getZeroTrustAccessApplicationsResultPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireSaml:getZeroTrustAccessApplicationsResultPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireServiceToken:getZeroTrustAccessApplicationsResultPolicyRequireServiceToken"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAnyValidServiceToken:getZeroTrustAccessApplicationsResultPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAuthContext:getZeroTrustAccessApplicationsResultPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAuthMethod:getZeroTrustAccessApplicationsResultPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireAzureAd:getZeroTrustAccessApplicationsResultPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireCertificate:getZeroTrustAccessApplicationsResultPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireCommonName:getZeroTrustAccessApplicationsResultPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireDevicePosture:getZeroTrustAccessApplicationsResultPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEmail:getZeroTrustAccessApplicationsResultPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEmailDomain:getZeroTrustAccessApplicationsResultPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEmailList:getZeroTrustAccessApplicationsResultPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireEveryone:getZeroTrustAccessApplicationsResultPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireExternalEvaluation:getZeroTrustAccessApplicationsResultPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGeo:getZeroTrustAccessApplicationsResultPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGithubOrganization:getZeroTrustAccessApplicationsResultPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGroup:getZeroTrustAccessApplicationsResultPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireGsuite:getZeroTrustAccessApplicationsResultPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireIp:getZeroTrustAccessApplicationsResultPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireIpList:getZeroTrustAccessApplicationsResultPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireLinkedAppToken:getZeroTrustAccessApplicationsResultPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireLoginMethod:getZeroTrustAccessApplicationsResultPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireOidc:getZeroTrustAccessApplicationsResultPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireOkta:getZeroTrustAccessApplicationsResultPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireSaml:getZeroTrustAccessApplicationsResultPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultPolicyRequireServiceToken:getZeroTrustAccessApplicationsResultPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasApp:getZeroTrustAccessApplicationsResultSaasApp": {
            "properties": {
                "accessTokenLifetime": {
                    "type": "string",
                    "description": "The lifetime of the OIDC Access Token after creation. Valid units are m,h. Must be greater than or equal to 1m and less than or equal to 24h.\n"
                },
                "allowPkceWithoutClientSecret": {
                    "type": "boolean",
                    "description": "If client secret should be required on the token endpoint when authorization*code*with_pkce grant is used.\n"
                },
                "appLauncherUrl": {
                    "type": "string",
                    "description": "The URL where this applications tile redirects users\n"
                },
                "authType": {
                    "type": "string",
                    "description": "Optional identifier indicating the authentication protocol used for the saas app. Required for OIDC. Default if unset is \"saml\"\nAvailable values: \"saml\", \"oidc\".\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The application client id\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The application client secret, only returned on POST request.\n",
                    "secret": true
                },
                "consumerServiceUrl": {
                    "type": "string",
                    "description": "The service provider's endpoint that is responsible for receiving and parsing a SAML assertion.\n"
                },
                "customAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomAttribute:getZeroTrustAccessApplicationsResultSaasAppCustomAttribute"
                    }
                },
                "customClaims": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomClaim:getZeroTrustAccessApplicationsResultSaasAppCustomClaim"
                    }
                },
                "defaultRelayState": {
                    "type": "string",
                    "description": "The URL that the user will be redirected to after a successful login for IDP initiated logins.\n"
                },
                "grantTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The OIDC flows supported by this application\n"
                },
                "groupFilterRegex": {
                    "type": "string",
                    "description": "A regex to filter Cloudflare groups returned in ID token and userinfo endpoint\n"
                },
                "hybridAndImplicitOptions": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppHybridAndImplicitOptions:getZeroTrustAccessApplicationsResultSaasAppHybridAndImplicitOptions"
                },
                "idpEntityId": {
                    "type": "string",
                    "description": "The unique identifier for your SaaS application.\n"
                },
                "nameIdFormat": {
                    "type": "string",
                    "description": "The format of the name identifier sent to the SaaS application.\nAvailable values: \"id\", \"email\".\n"
                },
                "nameIdTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into a NameID value for its SAML assertion. This expression should evaluate to a singular string. The output of this expression can override the \u003cspan pulumi-lang-nodejs=\"`nameIdFormat`\" pulumi-lang-dotnet=\"`NameIdFormat`\" pulumi-lang-go=\"`nameIdFormat`\" pulumi-lang-python=\"`name_id_format`\" pulumi-lang-yaml=\"`nameIdFormat`\" pulumi-lang-java=\"`nameIdFormat`\"\u003e`nameIdFormat`\u003c/span\u003e setting.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The Access public certificate that will be used to verify your identity.\n"
                },
                "redirectUris": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The permitted URL's for Cloudflare to return Authorization codes and Access/ID tokens\n"
                },
                "refreshTokenOptions": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppRefreshTokenOptions:getZeroTrustAccessApplicationsResultSaasAppRefreshTokenOptions"
                },
                "samlAttributeTransformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into attribute assertions in the SAML response. The expression can transform id, email, name, and groups values. It can also transform fields listed in the saml*attributes or oidc*fields of the identity provider used to authenticate. The output of this expression must be a JSON object.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Define the user information shared with access, \u003cspan pulumi-lang-nodejs=\"\"offlineAccess\"\" pulumi-lang-dotnet=\"\"OfflineAccess\"\" pulumi-lang-go=\"\"offlineAccess\"\" pulumi-lang-python=\"\"offline_access\"\" pulumi-lang-yaml=\"\"offlineAccess\"\" pulumi-lang-java=\"\"offlineAccess\"\"\u003e\"offlineAccess\"\u003c/span\u003e scope will be automatically enabled if refresh tokens are enabled\n"
                },
                "spEntityId": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\n"
                },
                "ssoEndpoint": {
                    "type": "string",
                    "description": "The endpoint where your SaaS application will send login requests.\n"
                }
            },
            "type": "object",
            "required": [
                "accessTokenLifetime",
                "allowPkceWithoutClientSecret",
                "appLauncherUrl",
                "authType",
                "clientId",
                "clientSecret",
                "consumerServiceUrl",
                "customAttributes",
                "customClaims",
                "defaultRelayState",
                "grantTypes",
                "groupFilterRegex",
                "hybridAndImplicitOptions",
                "idpEntityId",
                "nameIdFormat",
                "nameIdTransformJsonata",
                "publicKey",
                "redirectUris",
                "refreshTokenOptions",
                "samlAttributeTransformJsonata",
                "scopes",
                "spEntityId",
                "ssoEndpoint"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomAttribute:getZeroTrustAccessApplicationsResultSaasAppCustomAttribute": {
            "properties": {
                "friendlyName": {
                    "type": "string",
                    "description": "The SAML FriendlyName of the attribute.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the attribute.\n"
                },
                "nameFormat": {
                    "type": "string",
                    "description": "A globally unique name for an identity or service provider.\nAvailable values: \"urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:basic\", \"urn:oasis:names:tc:SAML:2.0:attrname-format:uri\".\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the attribute is required when building a SAML assertion.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSource:getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSource"
                }
            },
            "type": "object",
            "required": [
                "friendlyName",
                "name",
                "nameFormat",
                "required",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSource:getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP attribute.\n"
                },
                "nameByIdps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSourceNameByIdp:getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSourceNameByIdp"
                    },
                    "description": "A mapping from IdP ID to attribute name.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "nameByIdps"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSourceNameByIdp:getZeroTrustAccessApplicationsResultSaasAppCustomAttributeSourceNameByIdp": {
            "properties": {
                "idpId": {
                    "type": "string",
                    "description": "The UID of the IdP.\n"
                },
                "sourceName": {
                    "type": "string",
                    "description": "The name of the IdP provided attribute.\n"
                }
            },
            "type": "object",
            "required": [
                "idpId",
                "sourceName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomClaim:getZeroTrustAccessApplicationsResultSaasAppCustomClaim": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the claim.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "If the claim is required when building an OIDC token.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of the claim.\nAvailable values: \"groups\", \"profile\", \"email\", \"openid\".\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomClaimSource:getZeroTrustAccessApplicationsResultSaasAppCustomClaimSource"
                }
            },
            "type": "object",
            "required": [
                "name",
                "required",
                "scope",
                "source"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppCustomClaimSource:getZeroTrustAccessApplicationsResultSaasAppCustomClaimSource": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the IdP claim.\n"
                },
                "nameByIdp": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "A mapping from IdP ID to claim name.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "nameByIdp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppHybridAndImplicitOptions:getZeroTrustAccessApplicationsResultSaasAppHybridAndImplicitOptions": {
            "properties": {
                "returnAccessTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an Access Token should be returned from the OIDC Authorization endpoint\n"
                },
                "returnIdTokenFromAuthorizationEndpoint": {
                    "type": "boolean",
                    "description": "If an ID Token should be returned from the OIDC Authorization endpoint\n"
                }
            },
            "type": "object",
            "required": [
                "returnAccessTokenFromAuthorizationEndpoint",
                "returnIdTokenFromAuthorizationEndpoint"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultSaasAppRefreshTokenOptions:getZeroTrustAccessApplicationsResultSaasAppRefreshTokenOptions": {
            "properties": {
                "lifetime": {
                    "type": "string",
                    "description": "How long a refresh token will be valid for after creation. Valid units are m,h,d. Must be longer than 1m.\n"
                }
            },
            "type": "object",
            "required": [
                "lifetime"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultScimConfig:getZeroTrustAccessApplicationsResultScimConfig": {
            "properties": {
                "authentication": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultScimConfigAuthentication:getZeroTrustAccessApplicationsResultScimConfigAuthentication",
                    "description": "Attributes for configuring HTTP Basic authentication scheme for SCIM provisioning to an application.\n"
                },
                "deactivateOnDelete": {
                    "type": "boolean",
                    "description": "If false, propagates DELETE requests to the target application for SCIM resources. If true, sets 'active' to false on the SCIM resource. Note: Some targets do not support DELETE operations.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether SCIM provisioning is turned on for this application.\n"
                },
                "idpUid": {
                    "type": "string",
                    "description": "The UID of the IdP to use as the source for SCIM resources to provision to this application.\n"
                },
                "mappings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultScimConfigMapping:getZeroTrustAccessApplicationsResultScimConfigMapping"
                    },
                    "description": "A list of mappings to apply to SCIM resources before provisioning them in this application. These can transform or filter the resources to be provisioned.\n"
                },
                "remoteUri": {
                    "type": "string",
                    "description": "The base URI for the application's SCIM-compatible API.\n"
                }
            },
            "type": "object",
            "required": [
                "authentication",
                "deactivateOnDelete",
                "enabled",
                "idpUid",
                "mappings",
                "remoteUri"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultScimConfigAuthentication:getZeroTrustAccessApplicationsResultScimConfigAuthentication": {
            "properties": {
                "authorizationUrl": {
                    "type": "string",
                    "description": "URL used to generate the auth code used during token generation.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Client ID used to authenticate when generating a token for authenticating with the remote SCIM service.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Secret used to authenticate when generating a token for authenticating with the remove SCIM service.\n",
                    "secret": true
                },
                "password": {
                    "type": "string",
                    "description": "Password used to authenticate with the remote SCIM service.\n"
                },
                "scheme": {
                    "type": "string",
                    "description": "The authentication scheme to use when making SCIM requests to this application.\nAvailable values: \"httpbasic\", \"oauthbearertoken\", \"oauth2\", \"access*service*token\".\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The authorization scopes to request when generating the token used to authenticate with the remove SCIM service.\n"
                },
                "token": {
                    "type": "string",
                    "description": "Token used to authenticate with the remote SCIM service.\n",
                    "secret": true
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "URL used to generate the token used to authenticate with the remote SCIM service.\n"
                },
                "user": {
                    "type": "string",
                    "description": "User name used to authenticate with the remote SCIM service.\n"
                }
            },
            "type": "object",
            "required": [
                "authorizationUrl",
                "clientId",
                "clientSecret",
                "password",
                "scheme",
                "scopes",
                "token",
                "tokenUrl",
                "user"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultScimConfigMapping:getZeroTrustAccessApplicationsResultScimConfigMapping": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not this mapping is enabled.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "A [SCIM filter expression](https://datatracker.ietf.org/doc/html/rfc7644#section-3.4.2.2) that matches resources that should be provisioned to this application.\n"
                },
                "operations": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResultScimConfigMappingOperations:getZeroTrustAccessApplicationsResultScimConfigMappingOperations",
                    "description": "Whether or not this mapping applies to creates, updates, or deletes.\n"
                },
                "schema": {
                    "type": "string",
                    "description": "Which SCIM resource type this mapping applies to.\n"
                },
                "strictness": {
                    "type": "string",
                    "description": "The level of adherence to outbound resource schemas when provisioning to this mapping. ‘Strict’ removes unknown values, while ‘passthrough’ passes unknown values to the target.\nAvailable values: \"strict\", \"passthrough\".\n"
                },
                "transformJsonata": {
                    "type": "string",
                    "description": "A [JSONata](https://jsonata.org/) expression that transforms the resource before provisioning it in the application.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "filter",
                "operations",
                "schema",
                "strictness",
                "transformJsonata"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultScimConfigMappingOperations:getZeroTrustAccessApplicationsResultScimConfigMappingOperations": {
            "properties": {
                "create": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to create (POST) operations.\n"
                },
                "delete": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to DELETE operations.\n"
                },
                "update": {
                    "type": "boolean",
                    "description": "Whether or not this mapping applies to update (PATCH/PUT) operations.\n"
                }
            },
            "type": "object",
            "required": [
                "create",
                "delete",
                "update"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessApplicationsResultTargetCriteria:getZeroTrustAccessApplicationsResultTargetCriteria": {
            "properties": {
                "port": {
                    "type": "integer",
                    "description": "The port that the targets use for the chosen communication protocol. A port cannot be assigned to multiple protocols.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The communication protocol your application secures.\nAvailable values: \"SSH\", \"RDP\".\n"
                },
                "targetAttributes": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Contains a map of target attribute keys to target attribute values.\n"
                }
            },
            "type": "object",
            "required": [
                "port",
                "protocol",
                "targetAttributes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessCustomPagesResult:getZeroTrustAccessCustomPagesResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Custom page name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "UUID.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "type",
                "uid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExclude:getZeroTrustAccessGroupExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeAnyValidServiceToken:getZeroTrustAccessGroupExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeAuthContext:getZeroTrustAccessGroupExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeAuthMethod:getZeroTrustAccessGroupExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeAzureAd:getZeroTrustAccessGroupExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeCertificate:getZeroTrustAccessGroupExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeCommonName:getZeroTrustAccessGroupExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeDevicePosture:getZeroTrustAccessGroupExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeEmail:getZeroTrustAccessGroupExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeEmailDomain:getZeroTrustAccessGroupExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeEmailList:getZeroTrustAccessGroupExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeEveryone:getZeroTrustAccessGroupExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeExternalEvaluation:getZeroTrustAccessGroupExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeGeo:getZeroTrustAccessGroupExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeGithubOrganization:getZeroTrustAccessGroupExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeGroup:getZeroTrustAccessGroupExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeGsuite:getZeroTrustAccessGroupExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeIp:getZeroTrustAccessGroupExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeIpList:getZeroTrustAccessGroupExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeLinkedAppToken:getZeroTrustAccessGroupExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeLoginMethod:getZeroTrustAccessGroupExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeOidc:getZeroTrustAccessGroupExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeOkta:getZeroTrustAccessGroupExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeSaml:getZeroTrustAccessGroupExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeServiceToken:getZeroTrustAccessGroupExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExcludeUserRiskScore:getZeroTrustAccessGroupExcludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeAnyValidServiceToken:getZeroTrustAccessGroupExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeAuthContext:getZeroTrustAccessGroupExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeAuthMethod:getZeroTrustAccessGroupExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeAzureAd:getZeroTrustAccessGroupExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeCertificate:getZeroTrustAccessGroupExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeCommonName:getZeroTrustAccessGroupExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeDevicePosture:getZeroTrustAccessGroupExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeEmail:getZeroTrustAccessGroupExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeEmailDomain:getZeroTrustAccessGroupExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeEmailList:getZeroTrustAccessGroupExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeEveryone:getZeroTrustAccessGroupExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeExternalEvaluation:getZeroTrustAccessGroupExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeGeo:getZeroTrustAccessGroupExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeGithubOrganization:getZeroTrustAccessGroupExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeGroup:getZeroTrustAccessGroupExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeGsuite:getZeroTrustAccessGroupExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeIp:getZeroTrustAccessGroupExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeIpList:getZeroTrustAccessGroupExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeLinkedAppToken:getZeroTrustAccessGroupExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeLoginMethod:getZeroTrustAccessGroupExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeOidc:getZeroTrustAccessGroupExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeOkta:getZeroTrustAccessGroupExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeSaml:getZeroTrustAccessGroupExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeServiceToken:getZeroTrustAccessGroupExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupExcludeUserRiskScore:getZeroTrustAccessGroupExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupFilter:getZeroTrustAccessGroupFilter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the group.\n"
                },
                "search": {
                    "type": "string",
                    "description": "Search for groups by other listed query parameters.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupInclude:getZeroTrustAccessGroupInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeAnyValidServiceToken:getZeroTrustAccessGroupIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeAuthContext:getZeroTrustAccessGroupIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeAuthMethod:getZeroTrustAccessGroupIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeAzureAd:getZeroTrustAccessGroupIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeCertificate:getZeroTrustAccessGroupIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeCommonName:getZeroTrustAccessGroupIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeDevicePosture:getZeroTrustAccessGroupIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeEmail:getZeroTrustAccessGroupIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeEmailDomain:getZeroTrustAccessGroupIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeEmailList:getZeroTrustAccessGroupIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeEveryone:getZeroTrustAccessGroupIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeExternalEvaluation:getZeroTrustAccessGroupIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeGeo:getZeroTrustAccessGroupIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeGithubOrganization:getZeroTrustAccessGroupIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeGroup:getZeroTrustAccessGroupIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeGsuite:getZeroTrustAccessGroupIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeIp:getZeroTrustAccessGroupIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeIpList:getZeroTrustAccessGroupIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeLinkedAppToken:getZeroTrustAccessGroupIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeLoginMethod:getZeroTrustAccessGroupIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeOidc:getZeroTrustAccessGroupIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeOkta:getZeroTrustAccessGroupIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeSaml:getZeroTrustAccessGroupIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeServiceToken:getZeroTrustAccessGroupIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIncludeUserRiskScore:getZeroTrustAccessGroupIncludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeAnyValidServiceToken:getZeroTrustAccessGroupIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeAuthContext:getZeroTrustAccessGroupIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeAuthMethod:getZeroTrustAccessGroupIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeAzureAd:getZeroTrustAccessGroupIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeCertificate:getZeroTrustAccessGroupIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeCommonName:getZeroTrustAccessGroupIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeDevicePosture:getZeroTrustAccessGroupIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeEmail:getZeroTrustAccessGroupIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeEmailDomain:getZeroTrustAccessGroupIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeEmailList:getZeroTrustAccessGroupIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeEveryone:getZeroTrustAccessGroupIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeExternalEvaluation:getZeroTrustAccessGroupIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeGeo:getZeroTrustAccessGroupIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeGithubOrganization:getZeroTrustAccessGroupIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeGroup:getZeroTrustAccessGroupIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeGsuite:getZeroTrustAccessGroupIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeIp:getZeroTrustAccessGroupIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeIpList:getZeroTrustAccessGroupIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeLinkedAppToken:getZeroTrustAccessGroupIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeLoginMethod:getZeroTrustAccessGroupIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeOidc:getZeroTrustAccessGroupIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeOkta:getZeroTrustAccessGroupIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeSaml:getZeroTrustAccessGroupIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeServiceToken:getZeroTrustAccessGroupIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIncludeUserRiskScore:getZeroTrustAccessGroupIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefault:getZeroTrustAccessGroupIsDefault": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultAnyValidServiceToken:getZeroTrustAccessGroupIsDefaultAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultAuthContext:getZeroTrustAccessGroupIsDefaultAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultAuthMethod:getZeroTrustAccessGroupIsDefaultAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultAzureAd:getZeroTrustAccessGroupIsDefaultAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultCertificate:getZeroTrustAccessGroupIsDefaultCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultCommonName:getZeroTrustAccessGroupIsDefaultCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultDevicePosture:getZeroTrustAccessGroupIsDefaultDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultEmail:getZeroTrustAccessGroupIsDefaultEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultEmailDomain:getZeroTrustAccessGroupIsDefaultEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultEmailList:getZeroTrustAccessGroupIsDefaultEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultEveryone:getZeroTrustAccessGroupIsDefaultEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultExternalEvaluation:getZeroTrustAccessGroupIsDefaultExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultGeo:getZeroTrustAccessGroupIsDefaultGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultGithubOrganization:getZeroTrustAccessGroupIsDefaultGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultGroup:getZeroTrustAccessGroupIsDefaultGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultGsuite:getZeroTrustAccessGroupIsDefaultGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultIp:getZeroTrustAccessGroupIsDefaultIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultIpList:getZeroTrustAccessGroupIsDefaultIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultLinkedAppToken:getZeroTrustAccessGroupIsDefaultLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultLoginMethod:getZeroTrustAccessGroupIsDefaultLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultOidc:getZeroTrustAccessGroupIsDefaultOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultOkta:getZeroTrustAccessGroupIsDefaultOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultSaml:getZeroTrustAccessGroupIsDefaultSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultServiceToken:getZeroTrustAccessGroupIsDefaultServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefaultUserRiskScore:getZeroTrustAccessGroupIsDefaultUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultAnyValidServiceToken:getZeroTrustAccessGroupIsDefaultAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultAuthContext:getZeroTrustAccessGroupIsDefaultAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultAuthMethod:getZeroTrustAccessGroupIsDefaultAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultAzureAd:getZeroTrustAccessGroupIsDefaultAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultCertificate:getZeroTrustAccessGroupIsDefaultCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultCommonName:getZeroTrustAccessGroupIsDefaultCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultDevicePosture:getZeroTrustAccessGroupIsDefaultDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultEmail:getZeroTrustAccessGroupIsDefaultEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultEmailDomain:getZeroTrustAccessGroupIsDefaultEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultEmailList:getZeroTrustAccessGroupIsDefaultEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultEveryone:getZeroTrustAccessGroupIsDefaultEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultExternalEvaluation:getZeroTrustAccessGroupIsDefaultExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultGeo:getZeroTrustAccessGroupIsDefaultGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultGithubOrganization:getZeroTrustAccessGroupIsDefaultGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultGroup:getZeroTrustAccessGroupIsDefaultGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultGsuite:getZeroTrustAccessGroupIsDefaultGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultIp:getZeroTrustAccessGroupIsDefaultIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultIpList:getZeroTrustAccessGroupIsDefaultIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultLinkedAppToken:getZeroTrustAccessGroupIsDefaultLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultLoginMethod:getZeroTrustAccessGroupIsDefaultLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultOidc:getZeroTrustAccessGroupIsDefaultOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultOkta:getZeroTrustAccessGroupIsDefaultOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultSaml:getZeroTrustAccessGroupIsDefaultSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultServiceToken:getZeroTrustAccessGroupIsDefaultServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupIsDefaultUserRiskScore:getZeroTrustAccessGroupIsDefaultUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequire:getZeroTrustAccessGroupRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireAnyValidServiceToken:getZeroTrustAccessGroupRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireAuthContext:getZeroTrustAccessGroupRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireAuthMethod:getZeroTrustAccessGroupRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireAzureAd:getZeroTrustAccessGroupRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireCertificate:getZeroTrustAccessGroupRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireCommonName:getZeroTrustAccessGroupRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireDevicePosture:getZeroTrustAccessGroupRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireEmail:getZeroTrustAccessGroupRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireEmailDomain:getZeroTrustAccessGroupRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireEmailList:getZeroTrustAccessGroupRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireEveryone:getZeroTrustAccessGroupRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireExternalEvaluation:getZeroTrustAccessGroupRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireGeo:getZeroTrustAccessGroupRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireGithubOrganization:getZeroTrustAccessGroupRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireGroup:getZeroTrustAccessGroupRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireGsuite:getZeroTrustAccessGroupRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireIp:getZeroTrustAccessGroupRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireIpList:getZeroTrustAccessGroupRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireLinkedAppToken:getZeroTrustAccessGroupRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireLoginMethod:getZeroTrustAccessGroupRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireOidc:getZeroTrustAccessGroupRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireOkta:getZeroTrustAccessGroupRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireSaml:getZeroTrustAccessGroupRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireServiceToken:getZeroTrustAccessGroupRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequireUserRiskScore:getZeroTrustAccessGroupRequireUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireAnyValidServiceToken:getZeroTrustAccessGroupRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireAuthContext:getZeroTrustAccessGroupRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireAuthMethod:getZeroTrustAccessGroupRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireAzureAd:getZeroTrustAccessGroupRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireCertificate:getZeroTrustAccessGroupRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireCommonName:getZeroTrustAccessGroupRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireDevicePosture:getZeroTrustAccessGroupRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireEmail:getZeroTrustAccessGroupRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireEmailDomain:getZeroTrustAccessGroupRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireEmailList:getZeroTrustAccessGroupRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireEveryone:getZeroTrustAccessGroupRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireExternalEvaluation:getZeroTrustAccessGroupRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireGeo:getZeroTrustAccessGroupRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireGithubOrganization:getZeroTrustAccessGroupRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireGroup:getZeroTrustAccessGroupRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireGsuite:getZeroTrustAccessGroupRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireIp:getZeroTrustAccessGroupRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireIpList:getZeroTrustAccessGroupRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireLinkedAppToken:getZeroTrustAccessGroupRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireLoginMethod:getZeroTrustAccessGroupRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireOidc:getZeroTrustAccessGroupRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireOkta:getZeroTrustAccessGroupRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireSaml:getZeroTrustAccessGroupRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireServiceToken:getZeroTrustAccessGroupRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupRequireUserRiskScore:getZeroTrustAccessGroupRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResult:getZeroTrustAccessGroupsResult": {
            "properties": {
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExclude:getZeroTrustAccessGroupsResultExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultInclude:getZeroTrustAccessGroupsResultInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isDefaults": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefault:getZeroTrustAccessGroupsResultIsDefault"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access group.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequire:getZeroTrustAccessGroupsResultRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                }
            },
            "type": "object",
            "required": [
                "excludes",
                "id",
                "includes",
                "isDefaults",
                "name",
                "requires"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExclude:getZeroTrustAccessGroupsResultExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeAnyValidServiceToken:getZeroTrustAccessGroupsResultExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeAuthContext:getZeroTrustAccessGroupsResultExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeAuthMethod:getZeroTrustAccessGroupsResultExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeAzureAd:getZeroTrustAccessGroupsResultExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeCertificate:getZeroTrustAccessGroupsResultExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeCommonName:getZeroTrustAccessGroupsResultExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeDevicePosture:getZeroTrustAccessGroupsResultExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeEmail:getZeroTrustAccessGroupsResultExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeEmailDomain:getZeroTrustAccessGroupsResultExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeEmailList:getZeroTrustAccessGroupsResultExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeEveryone:getZeroTrustAccessGroupsResultExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeExternalEvaluation:getZeroTrustAccessGroupsResultExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeGeo:getZeroTrustAccessGroupsResultExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeGithubOrganization:getZeroTrustAccessGroupsResultExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeGroup:getZeroTrustAccessGroupsResultExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeGsuite:getZeroTrustAccessGroupsResultExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeIp:getZeroTrustAccessGroupsResultExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeIpList:getZeroTrustAccessGroupsResultExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeLinkedAppToken:getZeroTrustAccessGroupsResultExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeLoginMethod:getZeroTrustAccessGroupsResultExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeOidc:getZeroTrustAccessGroupsResultExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeOkta:getZeroTrustAccessGroupsResultExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeSaml:getZeroTrustAccessGroupsResultExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeServiceToken:getZeroTrustAccessGroupsResultExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultExcludeUserRiskScore:getZeroTrustAccessGroupsResultExcludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeAnyValidServiceToken:getZeroTrustAccessGroupsResultExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeAuthContext:getZeroTrustAccessGroupsResultExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeAuthMethod:getZeroTrustAccessGroupsResultExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeAzureAd:getZeroTrustAccessGroupsResultExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeCertificate:getZeroTrustAccessGroupsResultExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeCommonName:getZeroTrustAccessGroupsResultExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeDevicePosture:getZeroTrustAccessGroupsResultExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeEmail:getZeroTrustAccessGroupsResultExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeEmailDomain:getZeroTrustAccessGroupsResultExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeEmailList:getZeroTrustAccessGroupsResultExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeEveryone:getZeroTrustAccessGroupsResultExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeExternalEvaluation:getZeroTrustAccessGroupsResultExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeGeo:getZeroTrustAccessGroupsResultExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeGithubOrganization:getZeroTrustAccessGroupsResultExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeGroup:getZeroTrustAccessGroupsResultExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeGsuite:getZeroTrustAccessGroupsResultExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeIp:getZeroTrustAccessGroupsResultExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeIpList:getZeroTrustAccessGroupsResultExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeLinkedAppToken:getZeroTrustAccessGroupsResultExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeLoginMethod:getZeroTrustAccessGroupsResultExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeOidc:getZeroTrustAccessGroupsResultExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeOkta:getZeroTrustAccessGroupsResultExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeSaml:getZeroTrustAccessGroupsResultExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeServiceToken:getZeroTrustAccessGroupsResultExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultExcludeUserRiskScore:getZeroTrustAccessGroupsResultExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultInclude:getZeroTrustAccessGroupsResultInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeAnyValidServiceToken:getZeroTrustAccessGroupsResultIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeAuthContext:getZeroTrustAccessGroupsResultIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeAuthMethod:getZeroTrustAccessGroupsResultIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeAzureAd:getZeroTrustAccessGroupsResultIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeCertificate:getZeroTrustAccessGroupsResultIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeCommonName:getZeroTrustAccessGroupsResultIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeDevicePosture:getZeroTrustAccessGroupsResultIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeEmail:getZeroTrustAccessGroupsResultIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeEmailDomain:getZeroTrustAccessGroupsResultIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeEmailList:getZeroTrustAccessGroupsResultIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeEveryone:getZeroTrustAccessGroupsResultIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeExternalEvaluation:getZeroTrustAccessGroupsResultIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeGeo:getZeroTrustAccessGroupsResultIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeGithubOrganization:getZeroTrustAccessGroupsResultIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeGroup:getZeroTrustAccessGroupsResultIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeGsuite:getZeroTrustAccessGroupsResultIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeIp:getZeroTrustAccessGroupsResultIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeIpList:getZeroTrustAccessGroupsResultIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeLinkedAppToken:getZeroTrustAccessGroupsResultIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeLoginMethod:getZeroTrustAccessGroupsResultIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeOidc:getZeroTrustAccessGroupsResultIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeOkta:getZeroTrustAccessGroupsResultIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeSaml:getZeroTrustAccessGroupsResultIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeServiceToken:getZeroTrustAccessGroupsResultIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIncludeUserRiskScore:getZeroTrustAccessGroupsResultIncludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeAnyValidServiceToken:getZeroTrustAccessGroupsResultIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeAuthContext:getZeroTrustAccessGroupsResultIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeAuthMethod:getZeroTrustAccessGroupsResultIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeAzureAd:getZeroTrustAccessGroupsResultIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeCertificate:getZeroTrustAccessGroupsResultIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeCommonName:getZeroTrustAccessGroupsResultIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeDevicePosture:getZeroTrustAccessGroupsResultIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeEmail:getZeroTrustAccessGroupsResultIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeEmailDomain:getZeroTrustAccessGroupsResultIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeEmailList:getZeroTrustAccessGroupsResultIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeEveryone:getZeroTrustAccessGroupsResultIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeExternalEvaluation:getZeroTrustAccessGroupsResultIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeGeo:getZeroTrustAccessGroupsResultIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeGithubOrganization:getZeroTrustAccessGroupsResultIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeGroup:getZeroTrustAccessGroupsResultIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeGsuite:getZeroTrustAccessGroupsResultIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeIp:getZeroTrustAccessGroupsResultIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeIpList:getZeroTrustAccessGroupsResultIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeLinkedAppToken:getZeroTrustAccessGroupsResultIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeLoginMethod:getZeroTrustAccessGroupsResultIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeOidc:getZeroTrustAccessGroupsResultIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeOkta:getZeroTrustAccessGroupsResultIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeSaml:getZeroTrustAccessGroupsResultIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeServiceToken:getZeroTrustAccessGroupsResultIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIncludeUserRiskScore:getZeroTrustAccessGroupsResultIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefault:getZeroTrustAccessGroupsResultIsDefault": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAnyValidServiceToken:getZeroTrustAccessGroupsResultIsDefaultAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAuthContext:getZeroTrustAccessGroupsResultIsDefaultAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAuthMethod:getZeroTrustAccessGroupsResultIsDefaultAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAzureAd:getZeroTrustAccessGroupsResultIsDefaultAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultCertificate:getZeroTrustAccessGroupsResultIsDefaultCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultCommonName:getZeroTrustAccessGroupsResultIsDefaultCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultDevicePosture:getZeroTrustAccessGroupsResultIsDefaultDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEmail:getZeroTrustAccessGroupsResultIsDefaultEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEmailDomain:getZeroTrustAccessGroupsResultIsDefaultEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEmailList:getZeroTrustAccessGroupsResultIsDefaultEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEveryone:getZeroTrustAccessGroupsResultIsDefaultEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultExternalEvaluation:getZeroTrustAccessGroupsResultIsDefaultExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGeo:getZeroTrustAccessGroupsResultIsDefaultGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGithubOrganization:getZeroTrustAccessGroupsResultIsDefaultGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGroup:getZeroTrustAccessGroupsResultIsDefaultGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGsuite:getZeroTrustAccessGroupsResultIsDefaultGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultIp:getZeroTrustAccessGroupsResultIsDefaultIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultIpList:getZeroTrustAccessGroupsResultIsDefaultIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultLinkedAppToken:getZeroTrustAccessGroupsResultIsDefaultLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultLoginMethod:getZeroTrustAccessGroupsResultIsDefaultLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultOidc:getZeroTrustAccessGroupsResultIsDefaultOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultOkta:getZeroTrustAccessGroupsResultIsDefaultOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultSaml:getZeroTrustAccessGroupsResultIsDefaultSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultServiceToken:getZeroTrustAccessGroupsResultIsDefaultServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultUserRiskScore:getZeroTrustAccessGroupsResultIsDefaultUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAnyValidServiceToken:getZeroTrustAccessGroupsResultIsDefaultAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAuthContext:getZeroTrustAccessGroupsResultIsDefaultAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAuthMethod:getZeroTrustAccessGroupsResultIsDefaultAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultAzureAd:getZeroTrustAccessGroupsResultIsDefaultAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultCertificate:getZeroTrustAccessGroupsResultIsDefaultCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultCommonName:getZeroTrustAccessGroupsResultIsDefaultCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultDevicePosture:getZeroTrustAccessGroupsResultIsDefaultDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEmail:getZeroTrustAccessGroupsResultIsDefaultEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEmailDomain:getZeroTrustAccessGroupsResultIsDefaultEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEmailList:getZeroTrustAccessGroupsResultIsDefaultEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultEveryone:getZeroTrustAccessGroupsResultIsDefaultEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultExternalEvaluation:getZeroTrustAccessGroupsResultIsDefaultExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGeo:getZeroTrustAccessGroupsResultIsDefaultGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGithubOrganization:getZeroTrustAccessGroupsResultIsDefaultGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGroup:getZeroTrustAccessGroupsResultIsDefaultGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultGsuite:getZeroTrustAccessGroupsResultIsDefaultGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultIp:getZeroTrustAccessGroupsResultIsDefaultIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultIpList:getZeroTrustAccessGroupsResultIsDefaultIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultLinkedAppToken:getZeroTrustAccessGroupsResultIsDefaultLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultLoginMethod:getZeroTrustAccessGroupsResultIsDefaultLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultOidc:getZeroTrustAccessGroupsResultIsDefaultOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultOkta:getZeroTrustAccessGroupsResultIsDefaultOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultSaml:getZeroTrustAccessGroupsResultIsDefaultSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultServiceToken:getZeroTrustAccessGroupsResultIsDefaultServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultIsDefaultUserRiskScore:getZeroTrustAccessGroupsResultIsDefaultUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequire:getZeroTrustAccessGroupsResultRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireAnyValidServiceToken:getZeroTrustAccessGroupsResultRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireAuthContext:getZeroTrustAccessGroupsResultRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireAuthMethod:getZeroTrustAccessGroupsResultRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireAzureAd:getZeroTrustAccessGroupsResultRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireCertificate:getZeroTrustAccessGroupsResultRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireCommonName:getZeroTrustAccessGroupsResultRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireDevicePosture:getZeroTrustAccessGroupsResultRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireEmail:getZeroTrustAccessGroupsResultRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireEmailDomain:getZeroTrustAccessGroupsResultRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireEmailList:getZeroTrustAccessGroupsResultRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireEveryone:getZeroTrustAccessGroupsResultRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireExternalEvaluation:getZeroTrustAccessGroupsResultRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireGeo:getZeroTrustAccessGroupsResultRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireGithubOrganization:getZeroTrustAccessGroupsResultRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireGroup:getZeroTrustAccessGroupsResultRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireGsuite:getZeroTrustAccessGroupsResultRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireIp:getZeroTrustAccessGroupsResultRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireIpList:getZeroTrustAccessGroupsResultRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireLinkedAppToken:getZeroTrustAccessGroupsResultRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireLoginMethod:getZeroTrustAccessGroupsResultRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireOidc:getZeroTrustAccessGroupsResultRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireOkta:getZeroTrustAccessGroupsResultRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireSaml:getZeroTrustAccessGroupsResultRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireServiceToken:getZeroTrustAccessGroupsResultRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResultRequireUserRiskScore:getZeroTrustAccessGroupsResultRequireUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireAnyValidServiceToken:getZeroTrustAccessGroupsResultRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireAuthContext:getZeroTrustAccessGroupsResultRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireAuthMethod:getZeroTrustAccessGroupsResultRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireAzureAd:getZeroTrustAccessGroupsResultRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireCertificate:getZeroTrustAccessGroupsResultRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireCommonName:getZeroTrustAccessGroupsResultRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireDevicePosture:getZeroTrustAccessGroupsResultRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireEmail:getZeroTrustAccessGroupsResultRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireEmailDomain:getZeroTrustAccessGroupsResultRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireEmailList:getZeroTrustAccessGroupsResultRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireEveryone:getZeroTrustAccessGroupsResultRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireExternalEvaluation:getZeroTrustAccessGroupsResultRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireGeo:getZeroTrustAccessGroupsResultRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireGithubOrganization:getZeroTrustAccessGroupsResultRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireGroup:getZeroTrustAccessGroupsResultRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireGsuite:getZeroTrustAccessGroupsResultRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireIp:getZeroTrustAccessGroupsResultRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireIpList:getZeroTrustAccessGroupsResultRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireLinkedAppToken:getZeroTrustAccessGroupsResultRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireLoginMethod:getZeroTrustAccessGroupsResultRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireOidc:getZeroTrustAccessGroupsResultRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireOkta:getZeroTrustAccessGroupsResultRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireSaml:getZeroTrustAccessGroupsResultRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireServiceToken:getZeroTrustAccessGroupsResultRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessGroupsResultRequireUserRiskScore:getZeroTrustAccessGroupsResultRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProviderConfig:getZeroTrustAccessIdentityProviderConfig": {
            "properties": {
                "appsDomain": {
                    "type": "string",
                    "description": "Your companies TLD\n"
                },
                "attributes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of SAML attribute names that will be added to your signed JWT token and can be used in SAML policy rules.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" authorizationEndpoint \" pulumi-lang-dotnet=\" AuthorizationEndpoint \" pulumi-lang-go=\" authorizationEndpoint \" pulumi-lang-python=\" authorization_endpoint \" pulumi-lang-yaml=\" authorizationEndpoint \" pulumi-lang-java=\" authorizationEndpoint \"\u003e authorizationEndpoint \u003c/span\u003eURL of your IdP\n"
                },
                "authorizationServerId": {
                    "type": "string",
                    "description": "Your okta authorization server id\n"
                },
                "centrifyAccount": {
                    "type": "string",
                    "description": "Your centrify account url\n"
                },
                "centrifyAppId": {
                    "type": "string",
                    "description": "Your centrify app id\n"
                },
                "certsUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" jwksUri \" pulumi-lang-dotnet=\" JwksUri \" pulumi-lang-go=\" jwksUri \" pulumi-lang-python=\" jwks_uri \" pulumi-lang-yaml=\" jwksUri \" pulumi-lang-java=\" jwksUri \"\u003e jwksUri \u003c/span\u003eendpoint of your IdP to allow the IdP keys to sign the tokens\n"
                },
                "claims": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom claims\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your OAuth Client ID\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Your OAuth Client Secret\n",
                    "secret": true
                },
                "conditionalAccessEnabled": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load authentication contexts from your account\n"
                },
                "directoryId": {
                    "type": "string",
                    "description": "Your Azure directory uuid\n"
                },
                "emailAttributeName": {
                    "type": "string",
                    "description": "The attribute name for email in the SAML response.\n"
                },
                "emailClaimName": {
                    "type": "string",
                    "description": "The claim name for email in the\u003cspan pulumi-lang-nodejs=\" idToken \" pulumi-lang-dotnet=\" IdToken \" pulumi-lang-go=\" idToken \" pulumi-lang-python=\" id_token \" pulumi-lang-yaml=\" idToken \" pulumi-lang-java=\" idToken \"\u003e idToken \u003c/span\u003eresponse.\n"
                },
                "headerAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProviderConfigHeaderAttribute:getZeroTrustAccessIdentityProviderConfigHeaderAttribute"
                    },
                    "description": "Add a list of attribute names that will be returned in the response header from the Access callback.\n"
                },
                "idpPublicCerts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "X509 certificate to verify the signature in the SAML authentication response\n"
                },
                "issuerUrl": {
                    "type": "string",
                    "description": "IdP Entity ID or Issuer URL\n"
                },
                "oktaAccount": {
                    "type": "string",
                    "description": "Your okta account url\n"
                },
                "oneloginAccount": {
                    "type": "string",
                    "description": "Your OneLogin account url\n"
                },
                "pingEnvId": {
                    "type": "string",
                    "description": "Your PingOne environment identifier\n"
                },
                "pkceEnabled": {
                    "type": "boolean",
                    "description": "Enable Proof Key for Code Exchange (PKCE)\n"
                },
                "prompt": {
                    "type": "string",
                    "description": "Indicates the type of user interaction that is required. prompt=login forces the user to enter their credentials on that request, negating single-sign on. prompt=none is the opposite. It ensures that the user isn't presented with any interactive prompt. If the request can't be completed silently by using single-sign on, the Microsoft identity platform returns an interaction*required error. prompt=select*account interrupts single sign-on providing account selection experience listing all the accounts either in session or any remembered account or an option to choose to use a different account altogether.\nAvailable values: \"login\", \u003cspan pulumi-lang-nodejs=\"\"selectAccount\"\" pulumi-lang-dotnet=\"\"SelectAccount\"\" pulumi-lang-go=\"\"selectAccount\"\" pulumi-lang-python=\"\"select_account\"\" pulumi-lang-yaml=\"\"selectAccount\"\" pulumi-lang-java=\"\"selectAccount\"\"\u003e\"selectAccount\"\u003c/span\u003e, \"none\".\n"
                },
                "redirectUrl": {
                    "type": "string"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "OAuth scopes\n"
                },
                "signRequest": {
                    "type": "boolean",
                    "description": "Sign the SAML authentication request with Access credentials. To verify the signature, use the public key from the Access certs endpoints.\n"
                },
                "ssoTargetUrl": {
                    "type": "string",
                    "description": "URL to send the SAML authentication requests to\n"
                },
                "supportGroups": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load groups from your account\n"
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" tokenEndpoint \" pulumi-lang-dotnet=\" TokenEndpoint \" pulumi-lang-go=\" tokenEndpoint \" pulumi-lang-python=\" token_endpoint \" pulumi-lang-yaml=\" tokenEndpoint \" pulumi-lang-java=\" tokenEndpoint \"\u003e tokenEndpoint \u003c/span\u003eURL of your IdP\n"
                }
            },
            "type": "object",
            "required": [
                "appsDomain",
                "attributes",
                "authUrl",
                "authorizationServerId",
                "centrifyAccount",
                "centrifyAppId",
                "certsUrl",
                "claims",
                "clientId",
                "clientSecret",
                "conditionalAccessEnabled",
                "directoryId",
                "emailAttributeName",
                "emailClaimName",
                "headerAttributes",
                "idpPublicCerts",
                "issuerUrl",
                "oktaAccount",
                "oneloginAccount",
                "pingEnvId",
                "pkceEnabled",
                "prompt",
                "redirectUrl",
                "scopes",
                "signRequest",
                "ssoTargetUrl",
                "supportGroups",
                "tokenUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProviderConfigHeaderAttribute:getZeroTrustAccessIdentityProviderConfigHeaderAttribute": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "attribute name from the IDP\n"
                },
                "headerName": {
                    "type": "string",
                    "description": "header that will be added on the request to the origin\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "headerName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProviderFilter:getZeroTrustAccessIdentityProviderFilter": {
            "properties": {
                "scimEnabled": {
                    "type": "string",
                    "description": "Indicates to Access to only retrieve identity providers that have the System for Cross-Domain Identity Management (SCIM) enabled.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessIdentityProviderScimConfig:getZeroTrustAccessIdentityProviderScimConfig": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "A flag to enable or disable SCIM for the identity provider.\n"
                },
                "identityUpdateBehavior": {
                    "type": "string",
                    "description": "Indicates how a SCIM event updates a user identity used for policy evaluation. Use \"automatic\" to automatically update a user's identity and augment it with fields from the SCIM user resource. Use \"reauth\" to force re-authentication on group membership updates, user identity update will only occur after successful re-authentication. With \"reauth\" identities will not contain fields from the SCIM user resource. With \"no*action\" identities will not be changed by SCIM updates in any way and users will not be prompted to reauthenticate.\nAvailable values: \"automatic\", \"reauth\", \"no*action\".\n"
                },
                "scimBaseUrl": {
                    "type": "string",
                    "description": "The base URL of Cloudflare's SCIM V2.0 API endpoint.\n"
                },
                "seatDeprovision": {
                    "type": "boolean",
                    "description": "A flag to remove a user's seat in Zero Trust when they have been deprovisioned in the Identity Provider.  This cannot be enabled unless\u003cspan pulumi-lang-nodejs=\" userDeprovision \" pulumi-lang-dotnet=\" UserDeprovision \" pulumi-lang-go=\" userDeprovision \" pulumi-lang-python=\" user_deprovision \" pulumi-lang-yaml=\" userDeprovision \" pulumi-lang-java=\" userDeprovision \"\u003e userDeprovision \u003c/span\u003eis also enabled.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "A read-only token generated when the SCIM integration is enabled for the first time.  It is redacted on subsequent requests.  If you lose this you will need to refresh it at /access/identity*providers/:idpID/refresh*scim_secret.\n",
                    "secret": true
                },
                "userDeprovision": {
                    "type": "boolean",
                    "description": "A flag to enable revoking a user's session in Access and Gateway when they have been deprovisioned in the Identity Provider.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "identityUpdateBehavior",
                "scimBaseUrl",
                "seatDeprovision",
                "secret",
                "userDeprovision"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProvidersResult:getZeroTrustAccessIdentityProvidersResult": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProvidersResultConfig:getZeroTrustAccessIdentityProvidersResultConfig",
                    "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the identity provider, shown to users on the login page.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProvidersResultScimConfig:getZeroTrustAccessIdentityProvidersResultScimConfig",
                    "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "id",
                "name",
                "scimConfig",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProvidersResultConfig:getZeroTrustAccessIdentityProvidersResultConfig": {
            "properties": {
                "appsDomain": {
                    "type": "string",
                    "description": "Your companies TLD\n"
                },
                "attributes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of SAML attribute names that will be added to your signed JWT token and can be used in SAML policy rules.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" authorizationEndpoint \" pulumi-lang-dotnet=\" AuthorizationEndpoint \" pulumi-lang-go=\" authorizationEndpoint \" pulumi-lang-python=\" authorization_endpoint \" pulumi-lang-yaml=\" authorizationEndpoint \" pulumi-lang-java=\" authorizationEndpoint \"\u003e authorizationEndpoint \u003c/span\u003eURL of your IdP\n"
                },
                "authorizationServerId": {
                    "type": "string",
                    "description": "Your okta authorization server id\n"
                },
                "centrifyAccount": {
                    "type": "string",
                    "description": "Your centrify account url\n"
                },
                "centrifyAppId": {
                    "type": "string",
                    "description": "Your centrify app id\n"
                },
                "certsUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" jwksUri \" pulumi-lang-dotnet=\" JwksUri \" pulumi-lang-go=\" jwksUri \" pulumi-lang-python=\" jwks_uri \" pulumi-lang-yaml=\" jwksUri \" pulumi-lang-java=\" jwksUri \"\u003e jwksUri \u003c/span\u003eendpoint of your IdP to allow the IdP keys to sign the tokens\n"
                },
                "claims": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom claims\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your OAuth Client ID\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Your OAuth Client Secret\n",
                    "secret": true
                },
                "conditionalAccessEnabled": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load authentication contexts from your account\n"
                },
                "directoryId": {
                    "type": "string",
                    "description": "Your Azure directory uuid\n"
                },
                "emailAttributeName": {
                    "type": "string",
                    "description": "The attribute name for email in the SAML response.\n"
                },
                "emailClaimName": {
                    "type": "string",
                    "description": "The claim name for email in the\u003cspan pulumi-lang-nodejs=\" idToken \" pulumi-lang-dotnet=\" IdToken \" pulumi-lang-go=\" idToken \" pulumi-lang-python=\" id_token \" pulumi-lang-yaml=\" idToken \" pulumi-lang-java=\" idToken \"\u003e idToken \u003c/span\u003eresponse.\n"
                },
                "headerAttributes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProvidersResultConfigHeaderAttribute:getZeroTrustAccessIdentityProvidersResultConfigHeaderAttribute"
                    },
                    "description": "Add a list of attribute names that will be returned in the response header from the Access callback.\n"
                },
                "idpPublicCerts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "X509 certificate to verify the signature in the SAML authentication response\n"
                },
                "issuerUrl": {
                    "type": "string",
                    "description": "IdP Entity ID or Issuer URL\n"
                },
                "oktaAccount": {
                    "type": "string",
                    "description": "Your okta account url\n"
                },
                "oneloginAccount": {
                    "type": "string",
                    "description": "Your OneLogin account url\n"
                },
                "pingEnvId": {
                    "type": "string",
                    "description": "Your PingOne environment identifier\n"
                },
                "pkceEnabled": {
                    "type": "boolean",
                    "description": "Enable Proof Key for Code Exchange (PKCE)\n"
                },
                "prompt": {
                    "type": "string",
                    "description": "Indicates the type of user interaction that is required. prompt=login forces the user to enter their credentials on that request, negating single-sign on. prompt=none is the opposite. It ensures that the user isn't presented with any interactive prompt. If the request can't be completed silently by using single-sign on, the Microsoft identity platform returns an interaction*required error. prompt=select*account interrupts single sign-on providing account selection experience listing all the accounts either in session or any remembered account or an option to choose to use a different account altogether.\nAvailable values: \"login\", \u003cspan pulumi-lang-nodejs=\"\"selectAccount\"\" pulumi-lang-dotnet=\"\"SelectAccount\"\" pulumi-lang-go=\"\"selectAccount\"\" pulumi-lang-python=\"\"select_account\"\" pulumi-lang-yaml=\"\"selectAccount\"\" pulumi-lang-java=\"\"selectAccount\"\"\u003e\"selectAccount\"\u003c/span\u003e, \"none\".\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "OAuth scopes\n"
                },
                "signRequest": {
                    "type": "boolean",
                    "description": "Sign the SAML authentication request with Access credentials. To verify the signature, use the public key from the Access certs endpoints.\n"
                },
                "ssoTargetUrl": {
                    "type": "string",
                    "description": "URL to send the SAML authentication requests to\n"
                },
                "supportGroups": {
                    "type": "boolean",
                    "description": "Should Cloudflare try to load groups from your account\n"
                },
                "tokenUrl": {
                    "type": "string",
                    "description": "The\u003cspan pulumi-lang-nodejs=\" tokenEndpoint \" pulumi-lang-dotnet=\" TokenEndpoint \" pulumi-lang-go=\" tokenEndpoint \" pulumi-lang-python=\" token_endpoint \" pulumi-lang-yaml=\" tokenEndpoint \" pulumi-lang-java=\" tokenEndpoint \"\u003e tokenEndpoint \u003c/span\u003eURL of your IdP\n"
                }
            },
            "type": "object",
            "required": [
                "appsDomain",
                "attributes",
                "authUrl",
                "authorizationServerId",
                "centrifyAccount",
                "centrifyAppId",
                "certsUrl",
                "claims",
                "clientId",
                "clientSecret",
                "conditionalAccessEnabled",
                "directoryId",
                "emailAttributeName",
                "emailClaimName",
                "headerAttributes",
                "idpPublicCerts",
                "issuerUrl",
                "oktaAccount",
                "oneloginAccount",
                "pingEnvId",
                "pkceEnabled",
                "prompt",
                "scopes",
                "signRequest",
                "ssoTargetUrl",
                "supportGroups",
                "tokenUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProvidersResultConfigHeaderAttribute:getZeroTrustAccessIdentityProvidersResultConfigHeaderAttribute": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "attribute name from the IDP\n"
                },
                "headerName": {
                    "type": "string",
                    "description": "header that will be added on the request to the origin\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "headerName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProvidersResultScimConfig:getZeroTrustAccessIdentityProvidersResultScimConfig": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "A flag to enable or disable SCIM for the identity provider.\n"
                },
                "identityUpdateBehavior": {
                    "type": "string",
                    "description": "Indicates how a SCIM event updates a user identity used for policy evaluation. Use \"automatic\" to automatically update a user's identity and augment it with fields from the SCIM user resource. Use \"reauth\" to force re-authentication on group membership updates, user identity update will only occur after successful re-authentication. With \"reauth\" identities will not contain fields from the SCIM user resource. With \"no*action\" identities will not be changed by SCIM updates in any way and users will not be prompted to reauthenticate.\nAvailable values: \"automatic\", \"reauth\", \"no*action\".\n"
                },
                "scimBaseUrl": {
                    "type": "string",
                    "description": "The base URL of Cloudflare's SCIM V2.0 API endpoint.\n"
                },
                "seatDeprovision": {
                    "type": "boolean",
                    "description": "A flag to remove a user's seat in Zero Trust when they have been deprovisioned in the Identity Provider.  This cannot be enabled unless\u003cspan pulumi-lang-nodejs=\" userDeprovision \" pulumi-lang-dotnet=\" UserDeprovision \" pulumi-lang-go=\" userDeprovision \" pulumi-lang-python=\" user_deprovision \" pulumi-lang-yaml=\" userDeprovision \" pulumi-lang-java=\" userDeprovision \"\u003e userDeprovision \u003c/span\u003eis also enabled.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "A read-only token generated when the SCIM integration is enabled for the first time.  It is redacted on subsequent requests.  If you lose this you will need to refresh it at /access/identity*providers/:idpID/refresh*scim_secret.\n",
                    "secret": true
                },
                "userDeprovision": {
                    "type": "boolean",
                    "description": "A flag to enable revoking a user's session in Access and Gateway when they have been deprovisioned in the Identity Provider.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "identityUpdateBehavior",
                "scimBaseUrl",
                "seatDeprovision",
                "secret",
                "userDeprovision"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetFilter:getZeroTrustAccessInfrastructureTargetFilter": {
            "properties": {
                "createdAfter": {
                    "type": "string",
                    "description": "Date and time at which the target was created after (inclusive)\n"
                },
                "createdBefore": {
                    "type": "string",
                    "description": "Date and time at which the target was created before (inclusive)\n"
                },
                "direction": {
                    "type": "string",
                    "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of a target\n"
                },
                "hostnameContains": {
                    "type": "string",
                    "description": "Partial match to the hostname of a target\n"
                },
                "ipLike": {
                    "type": "string",
                    "description": "Filters for targets whose IP addresses look like the specified string.\nSupports `*` as a wildcard character\n"
                },
                "ipV4": {
                    "type": "string",
                    "description": "IPv4 address of the target\n"
                },
                "ipV6": {
                    "type": "string",
                    "description": "IPv6 address of the target\n"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Filters for targets that have any of the following IP addresses. Specify\n\u003cspan pulumi-lang-nodejs=\"`ips`\" pulumi-lang-dotnet=\"`Ips`\" pulumi-lang-go=\"`ips`\" pulumi-lang-python=\"`ips`\" pulumi-lang-yaml=\"`ips`\" pulumi-lang-java=\"`ips`\"\u003e`ips`\u003c/span\u003e multiple times in query parameter to build list of candidates.\n"
                },
                "ipv4End": {
                    "type": "string",
                    "description": "Defines an IPv4 filter range's ending value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv4Start`\" pulumi-lang-dotnet=\"`Ipv4Start`\" pulumi-lang-go=\"`ipv4Start`\" pulumi-lang-python=\"`ipv4_start`\" pulumi-lang-yaml=\"`ipv4Start`\" pulumi-lang-java=\"`ipv4Start`\"\u003e`ipv4Start`\u003c/span\u003e to be specified as well.\n"
                },
                "ipv4Start": {
                    "type": "string",
                    "description": "Defines an IPv4 filter range's starting value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv4End`\" pulumi-lang-dotnet=\"`Ipv4End`\" pulumi-lang-go=\"`ipv4End`\" pulumi-lang-python=\"`ipv4_end`\" pulumi-lang-yaml=\"`ipv4End`\" pulumi-lang-java=\"`ipv4End`\"\u003e`ipv4End`\u003c/span\u003e to be specified as well.\n"
                },
                "ipv6End": {
                    "type": "string",
                    "description": "Defines an IPv6 filter range's ending value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv6Start`\" pulumi-lang-dotnet=\"`Ipv6Start`\" pulumi-lang-go=\"`ipv6Start`\" pulumi-lang-python=\"`ipv6_start`\" pulumi-lang-yaml=\"`ipv6Start`\" pulumi-lang-java=\"`ipv6Start`\"\u003e`ipv6Start`\u003c/span\u003e to be specified as well.\n"
                },
                "ipv6Start": {
                    "type": "string",
                    "description": "Defines an IPv6 filter range's starting value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv6End`\" pulumi-lang-dotnet=\"`Ipv6End`\" pulumi-lang-go=\"`ipv6End`\" pulumi-lang-python=\"`ipv6_end`\" pulumi-lang-yaml=\"`ipv6End`\" pulumi-lang-java=\"`ipv6End`\"\u003e`ipv6End`\u003c/span\u003e to be specified as well.\n"
                },
                "modifiedAfter": {
                    "type": "string",
                    "description": "Date and time at which the target was modified after (inclusive)\n"
                },
                "modifiedBefore": {
                    "type": "string",
                    "description": "Date and time at which the target was modified before (inclusive)\n"
                },
                "order": {
                    "type": "string",
                    "description": "The field to sort by.\nAvailable values: \"hostname\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                },
                "targetIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Filters for targets that have any of the following UUIDs. Specify\n\u003cspan pulumi-lang-nodejs=\"`targetIds`\" pulumi-lang-dotnet=\"`TargetIds`\" pulumi-lang-go=\"`targetIds`\" pulumi-lang-python=\"`target_ids`\" pulumi-lang-yaml=\"`targetIds`\" pulumi-lang-java=\"`targetIds`\"\u003e`targetIds`\u003c/span\u003e multiple times in query parameter to build list of\ncandidates.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "Private virtual network identifier of the target\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetIp:getZeroTrustAccessInfrastructureTargetIp": {
            "properties": {
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetIpIpv4:getZeroTrustAccessInfrastructureTargetIpIpv4",
                    "description": "The target's IPv4 address\n"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetIpIpv6:getZeroTrustAccessInfrastructureTargetIpIpv6",
                    "description": "The target's IPv6 address\n"
                }
            },
            "type": "object",
            "required": [
                "ipv4",
                "ipv6"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetIpIpv4:getZeroTrustAccessInfrastructureTargetIpIpv4": {
            "properties": {
                "ipAddr": {
                    "type": "string",
                    "description": "IP address of the target\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.\n"
                }
            },
            "type": "object",
            "required": [
                "ipAddr",
                "virtualNetworkId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetIpIpv6:getZeroTrustAccessInfrastructureTargetIpIpv6": {
            "properties": {
                "ipAddr": {
                    "type": "string",
                    "description": "IP address of the target\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.\n"
                }
            },
            "type": "object",
            "required": [
                "ipAddr",
                "virtualNetworkId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetsResult:getZeroTrustAccessInfrastructureTargetsResult": {
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Date and time at which the target was created\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "A non-unique field that refers to a target\n"
                },
                "id": {
                    "type": "string",
                    "description": "Target identifier\n"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetsResultIp:getZeroTrustAccessInfrastructureTargetsResultIp",
                    "description": "The IPv4/IPv6 address that identifies where to reach a target\n"
                },
                "modifiedAt": {
                    "type": "string",
                    "description": "Date and time at which the target was modified\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "hostname",
                "id",
                "ip",
                "modifiedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetsResultIp:getZeroTrustAccessInfrastructureTargetsResultIp": {
            "properties": {
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetsResultIpIpv4:getZeroTrustAccessInfrastructureTargetsResultIpIpv4",
                    "description": "The target's IPv4 address\n"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetsResultIpIpv6:getZeroTrustAccessInfrastructureTargetsResultIpIpv6",
                    "description": "The target's IPv6 address\n"
                }
            },
            "type": "object",
            "required": [
                "ipv4",
                "ipv6"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetsResultIpIpv4:getZeroTrustAccessInfrastructureTargetsResultIpIpv4": {
            "properties": {
                "ipAddr": {
                    "type": "string",
                    "description": "IP address of the target\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.\n"
                }
            },
            "type": "object",
            "required": [
                "ipAddr",
                "virtualNetworkId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargetsResultIpIpv6:getZeroTrustAccessInfrastructureTargetsResultIpIpv6": {
            "properties": {
                "ipAddr": {
                    "type": "string",
                    "description": "IP address of the target\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.\n"
                }
            },
            "type": "object",
            "required": [
                "ipAddr",
                "virtualNetworkId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessMtlsCertificatesResult:getZeroTrustAccessMtlsCertificatesResult": {
            "properties": {
                "associatedHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The hostnames of the applications that will use this certificate.\n"
                },
                "expiresOn": {
                    "type": "string"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "The MD5 fingerprint of the certificate.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the application that will use this certificate.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the certificate.\n"
                }
            },
            "type": "object",
            "required": [
                "associatedHostnames",
                "expiresOn",
                "fingerprint",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResult:getZeroTrustAccessPoliciesResult": {
            "properties": {
                "appCount": {
                    "type": "integer",
                    "description": "Number of access applications currently using this policy.\n"
                },
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultApprovalGroup:getZeroTrustAccessPoliciesResultApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultConnectionRules:getZeroTrustAccessPoliciesResultConnectionRules",
                    "description": "The rules that define how users may connect to targets secured by your application.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExclude:getZeroTrustAccessPoliciesResultExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The UUID of the policy\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultInclude:getZeroTrustAccessPoliciesResultInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultMfaConfig:getZeroTrustAccessPoliciesResultMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequire:getZeroTrustAccessPoliciesResultRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "reusable": {
                    "type": "boolean"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "appCount",
                "approvalGroups",
                "approvalRequired",
                "connectionRules",
                "createdAt",
                "decision",
                "excludes",
                "id",
                "includes",
                "isolationRequired",
                "mfaConfig",
                "name",
                "purposeJustificationPrompt",
                "purposeJustificationRequired",
                "requires",
                "reusable",
                "sessionDuration",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultApprovalGroup:getZeroTrustAccessPoliciesResultApprovalGroup": {
            "properties": {
                "approvalsNeeded": {
                    "type": "number",
                    "description": "The number of approvals needed to obtain access.\n"
                },
                "emailAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of emails that can approve the access request.\n"
                },
                "emailListUuid": {
                    "type": "string",
                    "description": "The UUID of an re-usable email list.\n"
                }
            },
            "type": "object",
            "required": [
                "approvalsNeeded",
                "emailAddresses",
                "emailListUuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultConnectionRules:getZeroTrustAccessPoliciesResultConnectionRules": {
            "properties": {
                "rdp": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultConnectionRulesRdp:getZeroTrustAccessPoliciesResultConnectionRulesRdp",
                    "description": "The RDP-specific rules that define clipboard behavior for RDP connections.\n"
                }
            },
            "type": "object",
            "required": [
                "rdp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultConnectionRulesRdp:getZeroTrustAccessPoliciesResultConnectionRulesRdp": {
            "properties": {
                "allowedClipboardLocalToRemoteFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from local machine to remote RDP session.\n"
                },
                "allowedClipboardRemoteToLocalFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from remote RDP session to local machine.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedClipboardLocalToRemoteFormats",
                "allowedClipboardRemoteToLocalFormats"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExclude:getZeroTrustAccessPoliciesResultExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAnyValidServiceToken:getZeroTrustAccessPoliciesResultExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAuthContext:getZeroTrustAccessPoliciesResultExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAuthMethod:getZeroTrustAccessPoliciesResultExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAzureAd:getZeroTrustAccessPoliciesResultExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeCertificate:getZeroTrustAccessPoliciesResultExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeCommonName:getZeroTrustAccessPoliciesResultExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeDevicePosture:getZeroTrustAccessPoliciesResultExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEmail:getZeroTrustAccessPoliciesResultExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEmailDomain:getZeroTrustAccessPoliciesResultExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEmailList:getZeroTrustAccessPoliciesResultExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEveryone:getZeroTrustAccessPoliciesResultExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeExternalEvaluation:getZeroTrustAccessPoliciesResultExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGeo:getZeroTrustAccessPoliciesResultExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGithubOrganization:getZeroTrustAccessPoliciesResultExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGroup:getZeroTrustAccessPoliciesResultExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGsuite:getZeroTrustAccessPoliciesResultExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeIp:getZeroTrustAccessPoliciesResultExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeIpList:getZeroTrustAccessPoliciesResultExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeLinkedAppToken:getZeroTrustAccessPoliciesResultExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeLoginMethod:getZeroTrustAccessPoliciesResultExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeOidc:getZeroTrustAccessPoliciesResultExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeOkta:getZeroTrustAccessPoliciesResultExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeSaml:getZeroTrustAccessPoliciesResultExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeServiceToken:getZeroTrustAccessPoliciesResultExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultExcludeUserRiskScore:getZeroTrustAccessPoliciesResultExcludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAnyValidServiceToken:getZeroTrustAccessPoliciesResultExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAuthContext:getZeroTrustAccessPoliciesResultExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAuthMethod:getZeroTrustAccessPoliciesResultExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeAzureAd:getZeroTrustAccessPoliciesResultExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeCertificate:getZeroTrustAccessPoliciesResultExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeCommonName:getZeroTrustAccessPoliciesResultExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeDevicePosture:getZeroTrustAccessPoliciesResultExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEmail:getZeroTrustAccessPoliciesResultExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEmailDomain:getZeroTrustAccessPoliciesResultExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEmailList:getZeroTrustAccessPoliciesResultExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeEveryone:getZeroTrustAccessPoliciesResultExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeExternalEvaluation:getZeroTrustAccessPoliciesResultExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGeo:getZeroTrustAccessPoliciesResultExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGithubOrganization:getZeroTrustAccessPoliciesResultExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGroup:getZeroTrustAccessPoliciesResultExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeGsuite:getZeroTrustAccessPoliciesResultExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeIp:getZeroTrustAccessPoliciesResultExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeIpList:getZeroTrustAccessPoliciesResultExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeLinkedAppToken:getZeroTrustAccessPoliciesResultExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeLoginMethod:getZeroTrustAccessPoliciesResultExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeOidc:getZeroTrustAccessPoliciesResultExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeOkta:getZeroTrustAccessPoliciesResultExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeSaml:getZeroTrustAccessPoliciesResultExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeServiceToken:getZeroTrustAccessPoliciesResultExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultExcludeUserRiskScore:getZeroTrustAccessPoliciesResultExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultInclude:getZeroTrustAccessPoliciesResultInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAnyValidServiceToken:getZeroTrustAccessPoliciesResultIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAuthContext:getZeroTrustAccessPoliciesResultIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAuthMethod:getZeroTrustAccessPoliciesResultIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAzureAd:getZeroTrustAccessPoliciesResultIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeCertificate:getZeroTrustAccessPoliciesResultIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeCommonName:getZeroTrustAccessPoliciesResultIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeDevicePosture:getZeroTrustAccessPoliciesResultIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEmail:getZeroTrustAccessPoliciesResultIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEmailDomain:getZeroTrustAccessPoliciesResultIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEmailList:getZeroTrustAccessPoliciesResultIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEveryone:getZeroTrustAccessPoliciesResultIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeExternalEvaluation:getZeroTrustAccessPoliciesResultIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGeo:getZeroTrustAccessPoliciesResultIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGithubOrganization:getZeroTrustAccessPoliciesResultIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGroup:getZeroTrustAccessPoliciesResultIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGsuite:getZeroTrustAccessPoliciesResultIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeIp:getZeroTrustAccessPoliciesResultIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeIpList:getZeroTrustAccessPoliciesResultIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeLinkedAppToken:getZeroTrustAccessPoliciesResultIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeLoginMethod:getZeroTrustAccessPoliciesResultIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeOidc:getZeroTrustAccessPoliciesResultIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeOkta:getZeroTrustAccessPoliciesResultIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeSaml:getZeroTrustAccessPoliciesResultIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeServiceToken:getZeroTrustAccessPoliciesResultIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultIncludeUserRiskScore:getZeroTrustAccessPoliciesResultIncludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAnyValidServiceToken:getZeroTrustAccessPoliciesResultIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAuthContext:getZeroTrustAccessPoliciesResultIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAuthMethod:getZeroTrustAccessPoliciesResultIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeAzureAd:getZeroTrustAccessPoliciesResultIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeCertificate:getZeroTrustAccessPoliciesResultIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeCommonName:getZeroTrustAccessPoliciesResultIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeDevicePosture:getZeroTrustAccessPoliciesResultIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEmail:getZeroTrustAccessPoliciesResultIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEmailDomain:getZeroTrustAccessPoliciesResultIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEmailList:getZeroTrustAccessPoliciesResultIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeEveryone:getZeroTrustAccessPoliciesResultIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeExternalEvaluation:getZeroTrustAccessPoliciesResultIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGeo:getZeroTrustAccessPoliciesResultIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGithubOrganization:getZeroTrustAccessPoliciesResultIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGroup:getZeroTrustAccessPoliciesResultIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeGsuite:getZeroTrustAccessPoliciesResultIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeIp:getZeroTrustAccessPoliciesResultIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeIpList:getZeroTrustAccessPoliciesResultIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeLinkedAppToken:getZeroTrustAccessPoliciesResultIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeLoginMethod:getZeroTrustAccessPoliciesResultIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeOidc:getZeroTrustAccessPoliciesResultIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeOkta:getZeroTrustAccessPoliciesResultIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeSaml:getZeroTrustAccessPoliciesResultIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeServiceToken:getZeroTrustAccessPoliciesResultIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultIncludeUserRiskScore:getZeroTrustAccessPoliciesResultIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultMfaConfig:getZeroTrustAccessPoliciesResultMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Indicates whether to disable MFA for this resource. This option is available at the application and policy level.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "mfaDisabled",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequire:getZeroTrustAccessPoliciesResultRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireAnyValidServiceToken:getZeroTrustAccessPoliciesResultRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireAuthContext:getZeroTrustAccessPoliciesResultRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireAuthMethod:getZeroTrustAccessPoliciesResultRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireAzureAd:getZeroTrustAccessPoliciesResultRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireCertificate:getZeroTrustAccessPoliciesResultRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireCommonName:getZeroTrustAccessPoliciesResultRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireDevicePosture:getZeroTrustAccessPoliciesResultRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireEmail:getZeroTrustAccessPoliciesResultRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireEmailDomain:getZeroTrustAccessPoliciesResultRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireEmailList:getZeroTrustAccessPoliciesResultRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireEveryone:getZeroTrustAccessPoliciesResultRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireExternalEvaluation:getZeroTrustAccessPoliciesResultRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireGeo:getZeroTrustAccessPoliciesResultRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireGithubOrganization:getZeroTrustAccessPoliciesResultRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireGroup:getZeroTrustAccessPoliciesResultRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireGsuite:getZeroTrustAccessPoliciesResultRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireIp:getZeroTrustAccessPoliciesResultRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireIpList:getZeroTrustAccessPoliciesResultRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireLinkedAppToken:getZeroTrustAccessPoliciesResultRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireLoginMethod:getZeroTrustAccessPoliciesResultRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireOidc:getZeroTrustAccessPoliciesResultRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireOkta:getZeroTrustAccessPoliciesResultRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireSaml:getZeroTrustAccessPoliciesResultRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireServiceToken:getZeroTrustAccessPoliciesResultRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResultRequireUserRiskScore:getZeroTrustAccessPoliciesResultRequireUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireAnyValidServiceToken:getZeroTrustAccessPoliciesResultRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireAuthContext:getZeroTrustAccessPoliciesResultRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireAuthMethod:getZeroTrustAccessPoliciesResultRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireAzureAd:getZeroTrustAccessPoliciesResultRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireCertificate:getZeroTrustAccessPoliciesResultRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireCommonName:getZeroTrustAccessPoliciesResultRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireDevicePosture:getZeroTrustAccessPoliciesResultRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireEmail:getZeroTrustAccessPoliciesResultRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireEmailDomain:getZeroTrustAccessPoliciesResultRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireEmailList:getZeroTrustAccessPoliciesResultRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireEveryone:getZeroTrustAccessPoliciesResultRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireExternalEvaluation:getZeroTrustAccessPoliciesResultRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireGeo:getZeroTrustAccessPoliciesResultRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireGithubOrganization:getZeroTrustAccessPoliciesResultRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireGroup:getZeroTrustAccessPoliciesResultRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireGsuite:getZeroTrustAccessPoliciesResultRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireIp:getZeroTrustAccessPoliciesResultRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireIpList:getZeroTrustAccessPoliciesResultRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireLinkedAppToken:getZeroTrustAccessPoliciesResultRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireLoginMethod:getZeroTrustAccessPoliciesResultRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireOidc:getZeroTrustAccessPoliciesResultRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireOkta:getZeroTrustAccessPoliciesResultRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireSaml:getZeroTrustAccessPoliciesResultRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireServiceToken:getZeroTrustAccessPoliciesResultRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPoliciesResultRequireUserRiskScore:getZeroTrustAccessPoliciesResultRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyApprovalGroup:getZeroTrustAccessPolicyApprovalGroup": {
            "properties": {
                "approvalsNeeded": {
                    "type": "number",
                    "description": "The number of approvals needed to obtain access.\n"
                },
                "emailAddresses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of emails that can approve the access request.\n"
                },
                "emailListUuid": {
                    "type": "string",
                    "description": "The UUID of an re-usable email list.\n"
                }
            },
            "type": "object",
            "required": [
                "approvalsNeeded",
                "emailAddresses",
                "emailListUuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyConnectionRules:getZeroTrustAccessPolicyConnectionRules": {
            "properties": {
                "rdp": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyConnectionRulesRdp:getZeroTrustAccessPolicyConnectionRulesRdp",
                    "description": "The RDP-specific rules that define clipboard behavior for RDP connections.\n"
                }
            },
            "type": "object",
            "required": [
                "rdp"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyConnectionRulesRdp:getZeroTrustAccessPolicyConnectionRulesRdp": {
            "properties": {
                "allowedClipboardLocalToRemoteFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from local machine to remote RDP session.\n"
                },
                "allowedClipboardRemoteToLocalFormats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Clipboard formats allowed when copying from remote RDP session to local machine.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedClipboardLocalToRemoteFormats",
                "allowedClipboardRemoteToLocalFormats"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExclude:getZeroTrustAccessPolicyExclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeAnyValidServiceToken:getZeroTrustAccessPolicyExcludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeAuthContext:getZeroTrustAccessPolicyExcludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeAuthMethod:getZeroTrustAccessPolicyExcludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeAzureAd:getZeroTrustAccessPolicyExcludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeCertificate:getZeroTrustAccessPolicyExcludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeCommonName:getZeroTrustAccessPolicyExcludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeDevicePosture:getZeroTrustAccessPolicyExcludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeEmail:getZeroTrustAccessPolicyExcludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeEmailDomain:getZeroTrustAccessPolicyExcludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeEmailList:getZeroTrustAccessPolicyExcludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeEveryone:getZeroTrustAccessPolicyExcludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeExternalEvaluation:getZeroTrustAccessPolicyExcludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeGeo:getZeroTrustAccessPolicyExcludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeGithubOrganization:getZeroTrustAccessPolicyExcludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeGroup:getZeroTrustAccessPolicyExcludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeGsuite:getZeroTrustAccessPolicyExcludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeIp:getZeroTrustAccessPolicyExcludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeIpList:getZeroTrustAccessPolicyExcludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeLinkedAppToken:getZeroTrustAccessPolicyExcludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeLoginMethod:getZeroTrustAccessPolicyExcludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeOidc:getZeroTrustAccessPolicyExcludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeOkta:getZeroTrustAccessPolicyExcludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeSaml:getZeroTrustAccessPolicyExcludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeServiceToken:getZeroTrustAccessPolicyExcludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExcludeUserRiskScore:getZeroTrustAccessPolicyExcludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeAnyValidServiceToken:getZeroTrustAccessPolicyExcludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeAuthContext:getZeroTrustAccessPolicyExcludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeAuthMethod:getZeroTrustAccessPolicyExcludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeAzureAd:getZeroTrustAccessPolicyExcludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeCertificate:getZeroTrustAccessPolicyExcludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeCommonName:getZeroTrustAccessPolicyExcludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeDevicePosture:getZeroTrustAccessPolicyExcludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeEmail:getZeroTrustAccessPolicyExcludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeEmailDomain:getZeroTrustAccessPolicyExcludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeEmailList:getZeroTrustAccessPolicyExcludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeEveryone:getZeroTrustAccessPolicyExcludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeExternalEvaluation:getZeroTrustAccessPolicyExcludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeGeo:getZeroTrustAccessPolicyExcludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeGithubOrganization:getZeroTrustAccessPolicyExcludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeGroup:getZeroTrustAccessPolicyExcludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeGsuite:getZeroTrustAccessPolicyExcludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeIp:getZeroTrustAccessPolicyExcludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeIpList:getZeroTrustAccessPolicyExcludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeLinkedAppToken:getZeroTrustAccessPolicyExcludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeLoginMethod:getZeroTrustAccessPolicyExcludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeOidc:getZeroTrustAccessPolicyExcludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeOkta:getZeroTrustAccessPolicyExcludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeSaml:getZeroTrustAccessPolicyExcludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeServiceToken:getZeroTrustAccessPolicyExcludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyExcludeUserRiskScore:getZeroTrustAccessPolicyExcludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyInclude:getZeroTrustAccessPolicyInclude": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeAnyValidServiceToken:getZeroTrustAccessPolicyIncludeAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeAuthContext:getZeroTrustAccessPolicyIncludeAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeAuthMethod:getZeroTrustAccessPolicyIncludeAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeAzureAd:getZeroTrustAccessPolicyIncludeAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeCertificate:getZeroTrustAccessPolicyIncludeCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeCommonName:getZeroTrustAccessPolicyIncludeCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeDevicePosture:getZeroTrustAccessPolicyIncludeDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeEmail:getZeroTrustAccessPolicyIncludeEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeEmailDomain:getZeroTrustAccessPolicyIncludeEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeEmailList:getZeroTrustAccessPolicyIncludeEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeEveryone:getZeroTrustAccessPolicyIncludeEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeExternalEvaluation:getZeroTrustAccessPolicyIncludeExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeGeo:getZeroTrustAccessPolicyIncludeGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeGithubOrganization:getZeroTrustAccessPolicyIncludeGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeGroup:getZeroTrustAccessPolicyIncludeGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeGsuite:getZeroTrustAccessPolicyIncludeGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeIp:getZeroTrustAccessPolicyIncludeIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeIpList:getZeroTrustAccessPolicyIncludeIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeLinkedAppToken:getZeroTrustAccessPolicyIncludeLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeLoginMethod:getZeroTrustAccessPolicyIncludeLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeOidc:getZeroTrustAccessPolicyIncludeOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeOkta:getZeroTrustAccessPolicyIncludeOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeSaml:getZeroTrustAccessPolicyIncludeSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeServiceToken:getZeroTrustAccessPolicyIncludeServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyIncludeUserRiskScore:getZeroTrustAccessPolicyIncludeUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeAnyValidServiceToken:getZeroTrustAccessPolicyIncludeAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeAuthContext:getZeroTrustAccessPolicyIncludeAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeAuthMethod:getZeroTrustAccessPolicyIncludeAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeAzureAd:getZeroTrustAccessPolicyIncludeAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeCertificate:getZeroTrustAccessPolicyIncludeCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeCommonName:getZeroTrustAccessPolicyIncludeCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeDevicePosture:getZeroTrustAccessPolicyIncludeDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeEmail:getZeroTrustAccessPolicyIncludeEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeEmailDomain:getZeroTrustAccessPolicyIncludeEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeEmailList:getZeroTrustAccessPolicyIncludeEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeEveryone:getZeroTrustAccessPolicyIncludeEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeExternalEvaluation:getZeroTrustAccessPolicyIncludeExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeGeo:getZeroTrustAccessPolicyIncludeGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeGithubOrganization:getZeroTrustAccessPolicyIncludeGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeGroup:getZeroTrustAccessPolicyIncludeGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeGsuite:getZeroTrustAccessPolicyIncludeGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeIp:getZeroTrustAccessPolicyIncludeIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeIpList:getZeroTrustAccessPolicyIncludeIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeLinkedAppToken:getZeroTrustAccessPolicyIncludeLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeLoginMethod:getZeroTrustAccessPolicyIncludeLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeOidc:getZeroTrustAccessPolicyIncludeOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeOkta:getZeroTrustAccessPolicyIncludeOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeSaml:getZeroTrustAccessPolicyIncludeSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeServiceToken:getZeroTrustAccessPolicyIncludeServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyIncludeUserRiskScore:getZeroTrustAccessPolicyIncludeUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyMfaConfig:getZeroTrustAccessPolicyMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with.\n"
                },
                "mfaDisabled": {
                    "type": "boolean",
                    "description": "Indicates whether to disable MFA for this resource. This option is available at the application and policy level.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "mfaDisabled",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequire:getZeroTrustAccessPolicyRequire": {
            "properties": {
                "anyValidServiceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireAnyValidServiceToken:getZeroTrustAccessPolicyRequireAnyValidServiceToken",
                    "description": "An empty object which matches on all service tokens.\n"
                },
                "authContext": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireAuthContext:getZeroTrustAccessPolicyRequireAuthContext"
                },
                "authMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireAuthMethod:getZeroTrustAccessPolicyRequireAuthMethod"
                },
                "azureAd": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireAzureAd:getZeroTrustAccessPolicyRequireAzureAd"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireCertificate:getZeroTrustAccessPolicyRequireCertificate"
                },
                "commonName": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireCommonName:getZeroTrustAccessPolicyRequireCommonName"
                },
                "devicePosture": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireDevicePosture:getZeroTrustAccessPolicyRequireDevicePosture"
                },
                "email": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireEmail:getZeroTrustAccessPolicyRequireEmail"
                },
                "emailDomain": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireEmailDomain:getZeroTrustAccessPolicyRequireEmailDomain"
                },
                "emailList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireEmailList:getZeroTrustAccessPolicyRequireEmailList"
                },
                "everyone": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireEveryone:getZeroTrustAccessPolicyRequireEveryone",
                    "description": "An empty object which matches on all users.\n"
                },
                "externalEvaluation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireExternalEvaluation:getZeroTrustAccessPolicyRequireExternalEvaluation"
                },
                "geo": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireGeo:getZeroTrustAccessPolicyRequireGeo"
                },
                "githubOrganization": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireGithubOrganization:getZeroTrustAccessPolicyRequireGithubOrganization"
                },
                "group": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireGroup:getZeroTrustAccessPolicyRequireGroup"
                },
                "gsuite": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireGsuite:getZeroTrustAccessPolicyRequireGsuite"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireIp:getZeroTrustAccessPolicyRequireIp"
                },
                "ipList": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireIpList:getZeroTrustAccessPolicyRequireIpList"
                },
                "linkedAppToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireLinkedAppToken:getZeroTrustAccessPolicyRequireLinkedAppToken"
                },
                "loginMethod": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireLoginMethod:getZeroTrustAccessPolicyRequireLoginMethod"
                },
                "oidc": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireOidc:getZeroTrustAccessPolicyRequireOidc"
                },
                "okta": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireOkta:getZeroTrustAccessPolicyRequireOkta"
                },
                "saml": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireSaml:getZeroTrustAccessPolicyRequireSaml"
                },
                "serviceToken": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireServiceToken:getZeroTrustAccessPolicyRequireServiceToken"
                },
                "userRiskScore": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequireUserRiskScore:getZeroTrustAccessPolicyRequireUserRiskScore"
                }
            },
            "type": "object",
            "required": [
                "anyValidServiceToken",
                "authContext",
                "authMethod",
                "azureAd",
                "certificate",
                "commonName",
                "devicePosture",
                "email",
                "emailDomain",
                "emailList",
                "everyone",
                "externalEvaluation",
                "geo",
                "githubOrganization",
                "group",
                "gsuite",
                "ip",
                "ipList",
                "linkedAppToken",
                "loginMethod",
                "oidc",
                "okta",
                "saml",
                "serviceToken",
                "userRiskScore"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireAnyValidServiceToken:getZeroTrustAccessPolicyRequireAnyValidServiceToken": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireAuthContext:getZeroTrustAccessPolicyRequireAuthContext": {
            "properties": {
                "acId": {
                    "type": "string",
                    "description": "The ACID of an Authentication context.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of an Authentication context.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "acId",
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireAuthMethod:getZeroTrustAccessPolicyRequireAuthMethod": {
            "properties": {
                "authMethod": {
                    "type": "string",
                    "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2.\n"
                }
            },
            "type": "object",
            "required": [
                "authMethod"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireAzureAd:getZeroTrustAccessPolicyRequireAzureAd": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an Azure group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Azure identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireCertificate:getZeroTrustAccessPolicyRequireCertificate": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireCommonName:getZeroTrustAccessPolicyRequireCommonName": {
            "properties": {
                "commonName": {
                    "type": "string",
                    "description": "The common name to match.\n"
                }
            },
            "type": "object",
            "required": [
                "commonName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireDevicePosture:getZeroTrustAccessPolicyRequireDevicePosture": {
            "properties": {
                "integrationUid": {
                    "type": "string",
                    "description": "The ID of a device posture integration.\n"
                }
            },
            "type": "object",
            "required": [
                "integrationUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireEmail:getZeroTrustAccessPolicyRequireEmail": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the user.\n"
                }
            },
            "type": "object",
            "required": [
                "email"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireEmailDomain:getZeroTrustAccessPolicyRequireEmailDomain": {
            "properties": {
                "domain": {
                    "type": "string",
                    "description": "The email domain to match.\n"
                }
            },
            "type": "object",
            "required": [
                "domain"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireEmailList:getZeroTrustAccessPolicyRequireEmailList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created email list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireEveryone:getZeroTrustAccessPolicyRequireEveryone": {
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireExternalEvaluation:getZeroTrustAccessPolicyRequireExternalEvaluation": {
            "properties": {
                "evaluateUrl": {
                    "type": "string",
                    "description": "The API endpoint containing your business logic.\n"
                },
                "keysUrl": {
                    "type": "string",
                    "description": "The API endpoint containing the key that Access uses to verify that the response came from your API.\n"
                }
            },
            "type": "object",
            "required": [
                "evaluateUrl",
                "keysUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireGeo:getZeroTrustAccessPolicyRequireGeo": {
            "properties": {
                "countryCode": {
                    "type": "string",
                    "description": "The country code that should be matched.\n"
                }
            },
            "type": "object",
            "required": [
                "countryCode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireGithubOrganization:getZeroTrustAccessPolicyRequireGithubOrganization": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Github identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the organization.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The name of the team\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name",
                "team"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireGroup:getZeroTrustAccessPolicyRequireGroup": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created Access group.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireGsuite:getZeroTrustAccessPolicyRequireGsuite": {
            "properties": {
                "email": {
                    "type": "string",
                    "description": "The email of the Google Workspace group.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Google Workspace identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "email",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireIp:getZeroTrustAccessPolicyRequireIp": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "An IPv4 or IPv6 CIDR block.\n"
                }
            },
            "type": "object",
            "required": [
                "ip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireIpList:getZeroTrustAccessPolicyRequireIpList": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of a previously created IP list.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireLinkedAppToken:getZeroTrustAccessPolicyRequireLinkedAppToken": {
            "properties": {
                "appUid": {
                    "type": "string",
                    "description": "The ID of an Access OIDC SaaS application\n"
                }
            },
            "type": "object",
            "required": [
                "appUid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireLoginMethod:getZeroTrustAccessPolicyRequireLoginMethod": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The ID of an identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireOidc:getZeroTrustAccessPolicyRequireOidc": {
            "properties": {
                "claimName": {
                    "type": "string",
                    "description": "The name of the OIDC claim.\n"
                },
                "claimValue": {
                    "type": "string",
                    "description": "The OIDC claim value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your OIDC identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "claimName",
                "claimValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireOkta:getZeroTrustAccessPolicyRequireOkta": {
            "properties": {
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your Okta identity provider.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Okta group.\n"
                }
            },
            "type": "object",
            "required": [
                "identityProviderId",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireSaml:getZeroTrustAccessPolicyRequireSaml": {
            "properties": {
                "attributeName": {
                    "type": "string",
                    "description": "The name of the SAML attribute.\n"
                },
                "attributeValue": {
                    "type": "string",
                    "description": "The SAML attribute value to look for.\n"
                },
                "identityProviderId": {
                    "type": "string",
                    "description": "The ID of your SAML identity provider.\n"
                }
            },
            "type": "object",
            "required": [
                "attributeName",
                "attributeValue",
                "identityProviderId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireServiceToken:getZeroTrustAccessPolicyRequireServiceToken": {
            "properties": {
                "tokenId": {
                    "type": "string",
                    "description": "The ID of a Service Token.\n"
                }
            },
            "type": "object",
            "required": [
                "tokenId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicyRequireUserRiskScore:getZeroTrustAccessPolicyRequireUserRiskScore": {
            "properties": {
                "userRiskScores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored.\n"
                }
            },
            "type": "object",
            "required": [
                "userRiskScores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessServiceTokenFilter:getZeroTrustAccessServiceTokenFilter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the service token.\n"
                },
                "search": {
                    "type": "string",
                    "description": "Search for service tokens by other listed query parameters.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustAccessServiceTokensResult:getZeroTrustAccessServiceTokensResult": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                },
                "expiresAt": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the service token.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the service token.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "duration",
                "expiresAt",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessShortLivedCertificatesResult:getZeroTrustAccessShortLivedCertificatesResult": {
            "properties": {
                "aud": {
                    "type": "string",
                    "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the CA.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The public key to add to your SSH server configuration.\n"
                }
            },
            "type": "object",
            "required": [
                "aud",
                "id",
                "publicKey"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustAccessTagsResult:getZeroTrustAccessTagsResult": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The name of the tag\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tag\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfileExclude:getZeroTrustDeviceCustomProfileExclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "description",
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfileFallbackDomain:getZeroTrustDeviceCustomProfileFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "dnsServers",
                "suffix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfileInclude:getZeroTrustDeviceCustomProfileInclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "description",
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfileServiceModeV2:getZeroTrustDeviceCustomProfileServiceModeV2": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The mode to run the WARP client under.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port number when used with proxy mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfileTargetTest:getZeroTrustDeviceCustomProfileTargetTest": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The id of the DEX test targeting this policy.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX test targeting this policy.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfilesResult:getZeroTrustDeviceCustomProfilesResult": {
            "properties": {
                "allowModeSwitch": {
                    "type": "boolean",
                    "description": "Whether to allow the user to switch WARP between modes.\n"
                },
                "allowUpdates": {
                    "type": "boolean",
                    "description": "Whether to receive update notifications when a new version of the client is available.\n"
                },
                "allowedToLeave": {
                    "type": "boolean",
                    "description": "Whether to allow devices to leave the organization.\n"
                },
                "autoConnect": {
                    "type": "number",
                    "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                },
                "captivePortal": {
                    "type": "number",
                    "description": "Turn on the captive portal after the specified amount of time.\n"
                },
                "default": {
                    "type": "boolean",
                    "description": "Whether the policy is the default policy for an account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the policy.\n"
                },
                "disableAutoFallback": {
                    "type": "boolean",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy will be applied to matching devices.\n"
                },
                "excludeOfficeIps": {
                    "type": "boolean",
                    "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfilesResultExclude:getZeroTrustDeviceCustomProfilesResultExclude"
                    },
                    "description": "List of routes excluded in the WARP client's tunnel.\n"
                },
                "fallbackDomains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfilesResultFallbackDomain:getZeroTrustDeviceCustomProfilesResultFallbackDomain"
                    }
                },
                "gatewayUniqueId": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfilesResultInclude:getZeroTrustDeviceCustomProfilesResultInclude"
                    },
                    "description": "List of routes included in the WARP client's tunnel.\n"
                },
                "lanAllowMinutes": {
                    "type": "number",
                    "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                },
                "lanAllowSubnetSize": {
                    "type": "number",
                    "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service*token*uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device settings profile.\n"
                },
                "policyId": {
                    "type": "string"
                },
                "precedence": {
                    "type": "number",
                    "description": "The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field.\n"
                },
                "registerInterfaceIpWithDns": {
                    "type": "boolean",
                    "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                },
                "sccmVpnBoundarySupport": {
                    "type": "boolean",
                    "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                },
                "serviceModeV2": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfilesResultServiceModeV2:getZeroTrustDeviceCustomProfilesResultServiceModeV2"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "The URL to launch when the Send Feedback button is clicked.\n"
                },
                "switchLocked": {
                    "type": "boolean",
                    "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                },
                "targetTests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfilesResultTargetTest:getZeroTrustDeviceCustomProfilesResultTargetTest"
                    }
                },
                "tunnelProtocol": {
                    "type": "string",
                    "description": "Determines which tunnel protocol to use.\n"
                }
            },
            "type": "object",
            "required": [
                "allowModeSwitch",
                "allowUpdates",
                "allowedToLeave",
                "autoConnect",
                "captivePortal",
                "default",
                "description",
                "disableAutoFallback",
                "enabled",
                "excludes",
                "excludeOfficeIps",
                "fallbackDomains",
                "gatewayUniqueId",
                "id",
                "includes",
                "lanAllowMinutes",
                "lanAllowSubnetSize",
                "match",
                "name",
                "policyId",
                "precedence",
                "registerInterfaceIpWithDns",
                "sccmVpnBoundarySupport",
                "serviceModeV2",
                "supportUrl",
                "switchLocked",
                "targetTests",
                "tunnelProtocol"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfilesResultExclude:getZeroTrustDeviceCustomProfilesResultExclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "description",
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfilesResultFallbackDomain:getZeroTrustDeviceCustomProfilesResultFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "dnsServers",
                "suffix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfilesResultInclude:getZeroTrustDeviceCustomProfilesResultInclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "description",
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfilesResultServiceModeV2:getZeroTrustDeviceCustomProfilesResultServiceModeV2": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The mode to run the WARP client under.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port number when used with proxy mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfilesResultTargetTest:getZeroTrustDeviceCustomProfilesResultTargetTest": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The id of the DEX test targeting this policy.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX test targeting this policy.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfileExclude:getZeroTrustDeviceDefaultProfileExclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to exclude from the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "description",
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfileFallbackDomain:getZeroTrustDeviceDefaultProfileFallbackDomain": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the fallback domain, displayed in the client UI.\n"
                },
                "dnsServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of IP addresses to handle domain resolution.\n"
                },
                "suffix": {
                    "type": "string",
                    "description": "The domain suffix to match when resolving locally.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "dnsServers",
                "suffix"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfileInclude:getZeroTrustDeviceDefaultProfileInclude": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The address in CIDR format to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e must not be present.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the Split Tunnel item, displayed in the client UI.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The domain name to include in the tunnel. If \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e is present, \u003cspan pulumi-lang-nodejs=\"`address`\" pulumi-lang-dotnet=\"`Address`\" pulumi-lang-go=\"`address`\" pulumi-lang-python=\"`address`\" pulumi-lang-yaml=\"`address`\" pulumi-lang-java=\"`address`\"\u003e`address`\u003c/span\u003e must not be present.\n"
                }
            },
            "type": "object",
            "required": [
                "address",
                "description",
                "host"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfileServiceModeV2:getZeroTrustDeviceDefaultProfileServiceModeV2": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "The mode to run the WARP client under.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The port number when used with proxy mode.\n"
                }
            },
            "type": "object",
            "required": [
                "mode",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceIpProfileFilter:getZeroTrustDeviceIpProfileFilter": {
            "properties": {
                "perPage": {
                    "type": "integer",
                    "description": "The number of IP profiles to return per page.\n"
                }
            },
            "type": "object",
            "required": [
                "perPage"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceIpProfilesResult:getZeroTrustDeviceIpProfilesResult": {
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "The RFC3339Nano timestamp when the Device IP profile was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description of the Device IP profile.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Device IP profile is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the Device IP profile.\n"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the Device IP profile.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field.\n"
                },
                "subnetId": {
                    "type": "string",
                    "description": "The ID of the Subnet.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The RFC3339Nano timestamp when the Device IP profile was last updated.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "description",
                "enabled",
                "id",
                "match",
                "name",
                "precedence",
                "subnetId",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceManagedNetworksConfig:getZeroTrustDeviceManagedNetworksConfig": {
            "properties": {
                "sha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the TLS certificate presented by the host found at tls_sockaddr. If absent, regular certificate verification (trusted roots, valid timestamp, etc) will be used to validate the certificate.\n"
                },
                "tlsSockaddr": {
                    "type": "string",
                    "description": "A network address of the form \"host:port\" that the WARP client will use to detect the presence of a TLS host.\n"
                }
            },
            "type": "object",
            "required": [
                "sha256",
                "tlsSockaddr"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceManagedNetworksListResult:getZeroTrustDeviceManagedNetworksListResult": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDeviceManagedNetworksListResultConfig:getZeroTrustDeviceManagedNetworksListResultConfig",
                    "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                },
                "id": {
                    "type": "string",
                    "description": "API UUID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device managed network. This name must be unique.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "API UUID.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "id",
                "name",
                "networkId",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDeviceManagedNetworksListResultConfig:getZeroTrustDeviceManagedNetworksListResultConfig": {
            "properties": {
                "sha256": {
                    "type": "string",
                    "description": "The SHA-256 hash of the TLS certificate presented by the host found at tls_sockaddr. If absent, regular certificate verification (trusted roots, valid timestamp, etc) will be used to validate the certificate.\n"
                },
                "tlsSockaddr": {
                    "type": "string",
                    "description": "A network address of the form \"host:port\" that the WARP client will use to detect the presence of a TLS host.\n"
                }
            },
            "type": "object",
            "required": [
                "sha256",
                "tlsSockaddr"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureIntegrationConfig:getZeroTrustDevicePostureIntegrationConfig": {
            "properties": {
                "apiUrl": {
                    "type": "string",
                    "description": "The Workspace One API URL provided in the Workspace One Admin Dashboard.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The Workspace One Authorization URL depending on your region.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The Workspace One client ID provided in the Workspace One Admin Dashboard.\n"
                }
            },
            "type": "object",
            "required": [
                "apiUrl",
                "authUrl",
                "clientId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureIntegrationsResult:getZeroTrustDevicePostureIntegrationsResult": {
            "properties": {
                "config": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureIntegrationsResultConfig:getZeroTrustDevicePostureIntegrationsResultConfig",
                    "description": "The configuration object containing third-party integration information.\n"
                },
                "id": {
                    "type": "string",
                    "description": "API UUID.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture integration.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "config",
                "id",
                "interval",
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureIntegrationsResultConfig:getZeroTrustDevicePostureIntegrationsResultConfig": {
            "properties": {
                "apiUrl": {
                    "type": "string",
                    "description": "The Workspace One API URL provided in the Workspace One Admin Dashboard.\n"
                },
                "authUrl": {
                    "type": "string",
                    "description": "The Workspace One Authorization URL depending on your region.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The Workspace One client ID provided in the Workspace One Admin Dashboard.\n"
                }
            },
            "type": "object",
            "required": [
                "apiUrl",
                "authUrl",
                "clientId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRuleInput:getZeroTrustDevicePostureRuleInput": {
            "properties": {
                "activeThreats": {
                    "type": "number",
                    "description": "The Number of active threats.\n"
                },
                "authStates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of Kolide device authentication states that pass the posture check. Device must match one of the specified states.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "UUID of Cloudflare managed certificate.\n"
                },
                "checkDisks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of volume names to be checked for encryption.\n"
                },
                "checkPrivateKey": {
                    "type": "boolean",
                    "description": "Confirm the certificate was not imported from another device. We recommend keeping this enabled unless the certificate was deployed without a private key.\n"
                },
                "cn": {
                    "type": "string",
                    "description": "Common Name that is protected by the certificate.\n"
                },
                "complianceStatus": {
                    "type": "string",
                    "description": "Compliance Status.\nAvailable values: \"compliant\", \"noncompliant\", \"unknown\", \"notapplicable\", \"ingraceperiod\", \"error\".\n"
                },
                "connectionId": {
                    "type": "string",
                    "description": "Posture Integration ID.\n"
                },
                "countOperator": {
                    "type": "string",
                    "description": "Count Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Domain.\n"
                },
                "eidLastSeen": {
                    "type": "string",
                    "description": "For more details on eid last seen, refer to the Tanium documentation.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enabled.\n"
                },
                "exists": {
                    "type": "boolean",
                    "description": "Whether or not file exists.\n"
                },
                "extendedKeyUsages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of values indicating purposes for which the certificate public key can be used.\n"
                },
                "id": {
                    "type": "string",
                    "description": "List ID.\n"
                },
                "infected": {
                    "type": "boolean",
                    "description": "Whether device is infected.\n"
                },
                "isActive": {
                    "type": "boolean",
                    "description": "Whether device is active.\n"
                },
                "issueCount": {
                    "type": "string",
                    "description": "The Number of Issues.\n"
                },
                "lastSeen": {
                    "type": "string",
                    "description": "For more details on last seen, please refer to the Crowdstrike documentation.\n"
                },
                "locations": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRuleInputLocations:getZeroTrustDevicePostureRuleInputLocations"
                },
                "networkStatus": {
                    "type": "string",
                    "description": "Network status of device.\nAvailable values: \"connected\", \"disconnected\", \"disconnecting\", \"connecting\".\n"
                },
                "operatingSystem": {
                    "type": "string",
                    "description": "Operating system.\nAvailable values: \"windows\", \"linux\", \"mac\", \"android\", \"ios\", \"chromeos\".\n"
                },
                "operationalState": {
                    "type": "string",
                    "description": "Agent operational state.\nAvailable values: \"na\", \"partially*disabled\", \"auto*fully*disabled\", \"fully*disabled\", \"auto*partially*disabled\", \"disabled*error\", \"db*corruption\".\n"
                },
                "operator": {
                    "type": "string",
                    "description": "Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "os": {
                    "type": "string",
                    "description": "Os Version.\n"
                },
                "osDistroName": {
                    "type": "string",
                    "description": "Operating System Distribution Name (linux only).\n"
                },
                "osDistroRevision": {
                    "type": "string",
                    "description": "Version of OS Distribution (linux only).\n"
                },
                "osVersionExtra": {
                    "type": "string",
                    "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version.\n"
                },
                "overall": {
                    "type": "string",
                    "description": "Overall.\n"
                },
                "path": {
                    "type": "string",
                    "description": "File path.\n"
                },
                "requireAll": {
                    "type": "boolean",
                    "description": "Whether to check all disks for encryption.\n"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "For more details on risk level, refer to the Tanium documentation.\nAvailable values: \"low\", \"medium\", \"high\", \"critical\".\n"
                },
                "score": {
                    "type": "number",
                    "description": "A value between 0-100 assigned to devices set by the 3rd party posture provider.\n"
                },
                "scoreOperator": {
                    "type": "string",
                    "description": "Score Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "sensorConfig": {
                    "type": "string",
                    "description": "SensorConfig.\n"
                },
                "sha256": {
                    "type": "string",
                    "description": "SHA-256.\n"
                },
                "state": {
                    "type": "string",
                    "description": "For more details on state, please refer to the Crowdstrike documentation.\nAvailable values: \"online\", \"offline\", \"unknown\".\n"
                },
                "subjectAlternativeNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of certificate Subject Alternative Names.\n"
                },
                "thumbprint": {
                    "type": "string",
                    "description": "Signing certificate thumbprint.\n"
                },
                "totalScore": {
                    "type": "number",
                    "description": "For more details on total score, refer to the Tanium documentation.\n"
                },
                "updateWindowDays": {
                    "type": "number",
                    "description": "Number of days that the antivirus should be updated within.\n"
                },
                "version": {
                    "type": "string",
                    "description": "Version of OS.\n"
                },
                "versionOperator": {
                    "type": "string",
                    "description": "Version Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                }
            },
            "type": "object",
            "required": [
                "activeThreats",
                "authStates",
                "certificateId",
                "checkDisks",
                "checkPrivateKey",
                "cn",
                "complianceStatus",
                "connectionId",
                "countOperator",
                "domain",
                "eidLastSeen",
                "enabled",
                "exists",
                "extendedKeyUsages",
                "id",
                "infected",
                "isActive",
                "issueCount",
                "lastSeen",
                "locations",
                "networkStatus",
                "operatingSystem",
                "operationalState",
                "operator",
                "os",
                "osDistroName",
                "osDistroRevision",
                "osVersionExtra",
                "overall",
                "path",
                "requireAll",
                "riskLevel",
                "score",
                "scoreOperator",
                "sensorConfig",
                "sha256",
                "state",
                "subjectAlternativeNames",
                "thumbprint",
                "totalScore",
                "updateWindowDays",
                "version",
                "versionOperator"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRuleInputLocations:getZeroTrustDevicePostureRuleInputLocations": {
            "properties": {
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of paths to check for client certificate on linux.\n"
                },
                "trustStores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of trust stores to check for client certificate.\n"
                }
            },
            "type": "object",
            "required": [
                "paths",
                "trustStores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRuleMatch:getZeroTrustDevicePostureRuleMatch": {
            "properties": {
                "platform": {
                    "type": "string",
                    "description": "Available values: \"windows\", \"mac\", \"linux\", \"android\", \"ios\", \"chromeos\".\n"
                }
            },
            "type": "object",
            "required": [
                "platform"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRulesResult:getZeroTrustDevicePostureRulesResult": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "The description of the device posture rule.\n"
                },
                "expiration": {
                    "type": "string",
                    "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                },
                "id": {
                    "type": "string",
                    "description": "API UUID.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRulesResultInput:getZeroTrustDevicePostureRulesResultInput",
                    "description": "The value to be checked against.\n"
                },
                "matches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRulesResultMatch:getZeroTrustDevicePostureRulesResultMatch"
                    },
                    "description": "The conditions that the client must match to run the rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture rule.\n"
                },
                "schedule": {
                    "type": "string",
                    "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "expiration",
                "id",
                "input",
                "matches",
                "name",
                "schedule",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRulesResultInput:getZeroTrustDevicePostureRulesResultInput": {
            "properties": {
                "activeThreats": {
                    "type": "number",
                    "description": "The Number of active threats.\n"
                },
                "authStates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of Kolide device authentication states that pass the posture check. Device must match one of the specified states.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "UUID of Cloudflare managed certificate.\n"
                },
                "checkDisks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of volume names to be checked for encryption.\n"
                },
                "checkPrivateKey": {
                    "type": "boolean",
                    "description": "Confirm the certificate was not imported from another device. We recommend keeping this enabled unless the certificate was deployed without a private key.\n"
                },
                "cn": {
                    "type": "string",
                    "description": "Common Name that is protected by the certificate.\n"
                },
                "complianceStatus": {
                    "type": "string",
                    "description": "Compliance Status.\nAvailable values: \"compliant\", \"noncompliant\", \"unknown\", \"notapplicable\", \"ingraceperiod\", \"error\".\n"
                },
                "connectionId": {
                    "type": "string",
                    "description": "Posture Integration ID.\n"
                },
                "countOperator": {
                    "type": "string",
                    "description": "Count Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Domain.\n"
                },
                "eidLastSeen": {
                    "type": "string",
                    "description": "For more details on eid last seen, refer to the Tanium documentation.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enabled.\n"
                },
                "exists": {
                    "type": "boolean",
                    "description": "Whether or not file exists.\n"
                },
                "extendedKeyUsages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of values indicating purposes for which the certificate public key can be used.\n"
                },
                "id": {
                    "type": "string",
                    "description": "List ID.\n"
                },
                "infected": {
                    "type": "boolean",
                    "description": "Whether device is infected.\n"
                },
                "isActive": {
                    "type": "boolean",
                    "description": "Whether device is active.\n"
                },
                "issueCount": {
                    "type": "string",
                    "description": "The Number of Issues.\n"
                },
                "lastSeen": {
                    "type": "string",
                    "description": "For more details on last seen, please refer to the Crowdstrike documentation.\n"
                },
                "locations": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRulesResultInputLocations:getZeroTrustDevicePostureRulesResultInputLocations"
                },
                "networkStatus": {
                    "type": "string",
                    "description": "Network status of device.\nAvailable values: \"connected\", \"disconnected\", \"disconnecting\", \"connecting\".\n"
                },
                "operatingSystem": {
                    "type": "string",
                    "description": "Operating system.\nAvailable values: \"windows\", \"linux\", \"mac\", \"android\", \"ios\", \"chromeos\".\n"
                },
                "operationalState": {
                    "type": "string",
                    "description": "Agent operational state.\nAvailable values: \"na\", \"partially*disabled\", \"auto*fully*disabled\", \"fully*disabled\", \"auto*partially*disabled\", \"disabled*error\", \"db*corruption\".\n"
                },
                "operator": {
                    "type": "string",
                    "description": "Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "os": {
                    "type": "string",
                    "description": "Os Version.\n"
                },
                "osDistroName": {
                    "type": "string",
                    "description": "Operating System Distribution Name (linux only).\n"
                },
                "osDistroRevision": {
                    "type": "string",
                    "description": "Version of OS Distribution (linux only).\n"
                },
                "osVersionExtra": {
                    "type": "string",
                    "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version.\n"
                },
                "overall": {
                    "type": "string",
                    "description": "Overall.\n"
                },
                "path": {
                    "type": "string",
                    "description": "File path.\n"
                },
                "requireAll": {
                    "type": "boolean",
                    "description": "Whether to check all disks for encryption.\n"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "For more details on risk level, refer to the Tanium documentation.\nAvailable values: \"low\", \"medium\", \"high\", \"critical\".\n"
                },
                "score": {
                    "type": "number",
                    "description": "A value between 0-100 assigned to devices set by the 3rd party posture provider.\n"
                },
                "scoreOperator": {
                    "type": "string",
                    "description": "Score Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                },
                "sensorConfig": {
                    "type": "string",
                    "description": "SensorConfig.\n"
                },
                "sha256": {
                    "type": "string",
                    "description": "SHA-256.\n"
                },
                "state": {
                    "type": "string",
                    "description": "For more details on state, please refer to the Crowdstrike documentation.\nAvailable values: \"online\", \"offline\", \"unknown\".\n"
                },
                "subjectAlternativeNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of certificate Subject Alternative Names.\n"
                },
                "thumbprint": {
                    "type": "string",
                    "description": "Signing certificate thumbprint.\n"
                },
                "totalScore": {
                    "type": "number",
                    "description": "For more details on total score, refer to the Tanium documentation.\n"
                },
                "updateWindowDays": {
                    "type": "number",
                    "description": "Number of days that the antivirus should be updated within.\n"
                },
                "version": {
                    "type": "string",
                    "description": "Version of OS.\n"
                },
                "versionOperator": {
                    "type": "string",
                    "description": "Version Operator.\nAvailable values: \"\u003c\", \"\u003c=\", \"\u003e\", \"\u003e=\", \"==\".\n"
                }
            },
            "type": "object",
            "required": [
                "activeThreats",
                "authStates",
                "certificateId",
                "checkDisks",
                "checkPrivateKey",
                "cn",
                "complianceStatus",
                "connectionId",
                "countOperator",
                "domain",
                "eidLastSeen",
                "enabled",
                "exists",
                "extendedKeyUsages",
                "id",
                "infected",
                "isActive",
                "issueCount",
                "lastSeen",
                "locations",
                "networkStatus",
                "operatingSystem",
                "operationalState",
                "operator",
                "os",
                "osDistroName",
                "osDistroRevision",
                "osVersionExtra",
                "overall",
                "path",
                "requireAll",
                "riskLevel",
                "score",
                "scoreOperator",
                "sensorConfig",
                "sha256",
                "state",
                "subjectAlternativeNames",
                "thumbprint",
                "totalScore",
                "updateWindowDays",
                "version",
                "versionOperator"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRulesResultInputLocations:getZeroTrustDevicePostureRulesResultInputLocations": {
            "properties": {
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of paths to check for client certificate on linux.\n"
                },
                "trustStores": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of trust stores to check for client certificate.\n"
                }
            },
            "type": "object",
            "required": [
                "paths",
                "trustStores"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRulesResultMatch:getZeroTrustDevicePostureRulesResultMatch": {
            "properties": {
                "platform": {
                    "type": "string",
                    "description": "Available values: \"windows\", \"mac\", \"linux\", \"android\", \"ios\", \"chromeos\".\n"
                }
            },
            "type": "object",
            "required": [
                "platform"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexRuleTargetedTest:getZeroTrustDexRuleTargetedTest": {
            "properties": {
                "data": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDexRuleTargetedTestData:getZeroTrustDexRuleTargetedTestData",
                    "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "testId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "data",
                "enabled",
                "name",
                "testId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexRuleTargetedTestData:getZeroTrustDexRuleTargetedTestData": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The desired endpoint to test.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of test.\nAvailable values: \"http\", \"traceroute\".\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP request method type.\nAvailable values: \"GET\".\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "kind",
                "method"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexRulesResult:getZeroTrustDexRulesResult": {
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDexRulesResultRule:getZeroTrustDexRulesResultRule"
                    }
                }
            },
            "type": "object",
            "required": [
                "rules"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexRulesResultRule:getZeroTrustDexRulesResultRule": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "description": "API Resource UUID tag.\n"
                },
                "match": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "targetedTests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDexRulesResultRuleTargetedTest:getZeroTrustDexRulesResultRuleTargetedTest"
                    }
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "description",
                "id",
                "match",
                "name",
                "targetedTests",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexRulesResultRuleTargetedTest:getZeroTrustDexRulesResultRuleTargetedTest": {
            "properties": {
                "data": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDexRulesResultRuleTargetedTestData:getZeroTrustDexRulesResultRuleTargetedTestData",
                    "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "testId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "data",
                "enabled",
                "name",
                "testId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexRulesResultRuleTargetedTestData:getZeroTrustDexRulesResultRuleTargetedTestData": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The desired endpoint to test.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of test.\nAvailable values: \"http\", \"traceroute\".\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP request method type.\nAvailable values: \"GET\".\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "kind",
                "method"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexTestData:getZeroTrustDexTestData": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The desired endpoint to test.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of test.\nAvailable values: \"http\", \"traceroute\".\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP request method type.\nAvailable values: \"GET\".\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "kind",
                "method"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexTestFilter:getZeroTrustDexTestFilter": {
            "properties": {
                "kind": {
                    "type": "string",
                    "description": "Filter by test type\nAvailable values: \"http\", \"traceroute\".\n"
                },
                "testName": {
                    "type": "string",
                    "description": "Filter by test name\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustDexTestTargetPolicy:getZeroTrustDexTestTargetPolicy": {
            "properties": {
                "default": {
                    "type": "boolean",
                    "description": "Whether the DEX rule is the account default\n"
                },
                "id": {
                    "type": "string",
                    "description": "API Resource UUID tag.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX rule\n"
                }
            },
            "type": "object",
            "required": [
                "default",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexTestsResult:getZeroTrustDexTestsResult": {
            "properties": {
                "data": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDexTestsResultData:getZeroTrustDexTestsResultData",
                    "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Additional details about the test.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether or not the test is active.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier for the test.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "How often the test will run.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX test. Must be unique.\n"
                },
                "targetPolicies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDexTestsResultTargetPolicy:getZeroTrustDexTestsResultTargetPolicy"
                    },
                    "description": "DEX rules targeted by this test\n"
                },
                "targeted": {
                    "type": "boolean"
                },
                "testId": {
                    "type": "string",
                    "description": "The unique identifier for the test.\n"
                }
            },
            "type": "object",
            "required": [
                "data",
                "description",
                "enabled",
                "id",
                "interval",
                "name",
                "targetPolicies",
                "targeted",
                "testId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexTestsResultData:getZeroTrustDexTestsResultData": {
            "properties": {
                "host": {
                    "type": "string",
                    "description": "The desired endpoint to test.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of test.\nAvailable values: \"http\", \"traceroute\".\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP request method type.\nAvailable values: \"GET\".\n"
                }
            },
            "type": "object",
            "required": [
                "host",
                "kind",
                "method"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDexTestsResultTargetPolicy:getZeroTrustDexTestsResultTargetPolicy": {
            "properties": {
                "default": {
                    "type": "boolean",
                    "description": "Whether the DEX rule is the account default\n"
                },
                "id": {
                    "type": "string",
                    "description": "API Resource UUID tag.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX rule\n"
                }
            },
            "type": "object",
            "required": [
                "default",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntriesResult:getZeroTrustDlpCustomEntriesResult": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntriesResultConfidence:getZeroTrustDlpCustomEntriesResultConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntriesResultPattern:getZeroTrustDlpCustomEntriesResultPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntriesResultVariant:getZeroTrustDlpCustomEntriesResultVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntriesResultConfidence:getZeroTrustDlpCustomEntriesResultConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntriesResultPattern:getZeroTrustDlpCustomEntriesResultPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntriesResultVariant:getZeroTrustDlpCustomEntriesResultVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntryConfidence:getZeroTrustDlpCustomEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntryPattern:getZeroTrustDlpCustomEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntryProfile:getZeroTrustDlpCustomEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntryVariant:getZeroTrustDlpCustomEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileContextAwareness:getZeroTrustDlpCustomProfileContextAwareness": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "If true, scan the context of predefined entries to only return matches surrounded by keywords.\n"
                },
                "skip": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileContextAwarenessSkip:getZeroTrustDlpCustomProfileContextAwarenessSkip",
                    "description": "Content types to exclude from context analysis and return all matches.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "skip"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileContextAwarenessSkip:getZeroTrustDlpCustomProfileContextAwarenessSkip": {
            "properties": {
                "files": {
                    "type": "boolean",
                    "description": "If the content type is a file, skip context analysis and return all matches.\n"
                }
            },
            "type": "object",
            "required": [
                "files"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileEntry:getZeroTrustDlpCustomProfileEntry": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileEntryConfidence:getZeroTrustDlpCustomProfileEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileEntryPattern:getZeroTrustDlpCustomProfileEntryPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileEntryVariant:getZeroTrustDlpCustomProfileEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileEntryConfidence:getZeroTrustDlpCustomProfileEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileEntryPattern:getZeroTrustDlpCustomProfileEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileEntryVariant:getZeroTrustDlpCustomProfileEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileSensitivityLevel:getZeroTrustDlpCustomProfileSensitivityLevel": {
            "properties": {
                "groupId": {
                    "type": "string"
                },
                "levelId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "groupId",
                "levelId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileSharedEntry:getZeroTrustDlpCustomProfileSharedEntry": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileSharedEntryConfidence:getZeroTrustDlpCustomProfileSharedEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileSharedEntryPattern:getZeroTrustDlpCustomProfileSharedEntryPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileSharedEntryVariant:getZeroTrustDlpCustomProfileSharedEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileSharedEntryConfidence:getZeroTrustDlpCustomProfileSharedEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileSharedEntryPattern:getZeroTrustDlpCustomProfileSharedEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfileSharedEntryVariant:getZeroTrustDlpCustomProfileSharedEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpDatasetColumn:getZeroTrustDlpDatasetColumn": {
            "properties": {
                "entryId": {
                    "type": "string"
                },
                "headerName": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                }
            },
            "type": "object",
            "required": [
                "entryId",
                "headerName",
                "numCells",
                "uploadStatus"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpDatasetUpload:getZeroTrustDlpDatasetUpload": {
            "properties": {
                "numCells": {
                    "type": "integer"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "version": {
                    "type": "integer"
                }
            },
            "type": "object",
            "required": [
                "numCells",
                "status",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpDatasetsResult:getZeroTrustDlpDatasetsResult": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean"
                },
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpDatasetsResultColumn:getZeroTrustDlpDatasetsResultColumn"
                    }
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the dataset.\n"
                },
                "encodingVersion": {
                    "type": "integer"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "secret": {
                    "type": "boolean"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "Stores when the dataset was last updated.\n"
                },
                "uploads": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpDatasetsResultUpload:getZeroTrustDlpDatasetsResultUpload"
                    }
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "columns",
                "createdAt",
                "description",
                "encodingVersion",
                "id",
                "name",
                "numCells",
                "secret",
                "status",
                "updatedAt",
                "uploads"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpDatasetsResultColumn:getZeroTrustDlpDatasetsResultColumn": {
            "properties": {
                "entryId": {
                    "type": "string"
                },
                "headerName": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                }
            },
            "type": "object",
            "required": [
                "entryId",
                "headerName",
                "numCells",
                "uploadStatus"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpDatasetsResultUpload:getZeroTrustDlpDatasetsResultUpload": {
            "properties": {
                "numCells": {
                    "type": "integer"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "version": {
                    "type": "integer"
                }
            },
            "type": "object",
            "required": [
                "numCells",
                "status",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntriesResult:getZeroTrustDlpEntriesResult": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntriesResultConfidence:getZeroTrustDlpEntriesResultConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntriesResultPattern:getZeroTrustDlpEntriesResultPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntriesResultVariant:getZeroTrustDlpEntriesResultVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntriesResultConfidence:getZeroTrustDlpEntriesResultConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntriesResultPattern:getZeroTrustDlpEntriesResultPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntriesResultVariant:getZeroTrustDlpEntriesResultVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntryConfidence:getZeroTrustDlpEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntryPattern:getZeroTrustDlpEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntryProfile:getZeroTrustDlpEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpEntryVariant:getZeroTrustDlpEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntriesResult:getZeroTrustDlpIntegrationEntriesResult": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntriesResultConfidence:getZeroTrustDlpIntegrationEntriesResultConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntriesResultPattern:getZeroTrustDlpIntegrationEntriesResultPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntriesResultVariant:getZeroTrustDlpIntegrationEntriesResultVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntriesResultConfidence:getZeroTrustDlpIntegrationEntriesResultConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntriesResultPattern:getZeroTrustDlpIntegrationEntriesResultPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntriesResultVariant:getZeroTrustDlpIntegrationEntriesResultVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntryConfidence:getZeroTrustDlpIntegrationEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntryPattern:getZeroTrustDlpIntegrationEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntryProfile:getZeroTrustDlpIntegrationEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntryVariant:getZeroTrustDlpIntegrationEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntriesResult:getZeroTrustDlpPredefinedEntriesResult": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntriesResultConfidence:getZeroTrustDlpPredefinedEntriesResultConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntriesResultPattern:getZeroTrustDlpPredefinedEntriesResultPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntriesResultVariant:getZeroTrustDlpPredefinedEntriesResultVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntriesResultConfidence:getZeroTrustDlpPredefinedEntriesResultConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntriesResultPattern:getZeroTrustDlpPredefinedEntriesResultPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntriesResultVariant:getZeroTrustDlpPredefinedEntriesResultVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntryConfidence:getZeroTrustDlpPredefinedEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntryPattern:getZeroTrustDlpPredefinedEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntryProfile:getZeroTrustDlpPredefinedEntryProfile": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntryVariant:getZeroTrustDlpPredefinedEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedProfileEntry:getZeroTrustDlpPredefinedProfileEntry": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedProfileEntryConfidence:getZeroTrustDlpPredefinedProfileEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedProfileEntryPattern:getZeroTrustDlpPredefinedProfileEntryPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedProfileEntryVariant:getZeroTrustDlpPredefinedProfileEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "id",
                "name",
                "pattern",
                "profileId",
                "secret",
                "type",
                "updatedAt",
                "variant",
                "wordList"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedProfileEntryConfidence:getZeroTrustDlpPredefinedProfileEntryConfidence": {
            "properties": {
                "aiContextAvailable": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has AI remote service validation.\n"
                },
                "available": {
                    "type": "boolean",
                    "description": "Indicates whether this entry has any form of validation that is not an AI remote service.\n"
                }
            },
            "type": "object",
            "required": [
                "aiContextAvailable",
                "available"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedProfileEntryPattern:getZeroTrustDlpPredefinedProfileEntryPattern": {
            "properties": {
                "regex": {
                    "type": "string"
                },
                "validation": {
                    "type": "string",
                    "description": "Available values: \"luhn\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                }
            },
            "type": "object",
            "required": [
                "regex",
                "validation"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedProfileEntryVariant:getZeroTrustDlpPredefinedProfileEntryVariant": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "topicType": {
                    "type": "string",
                    "description": "Available values: \"Intent\", \"Content\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"PromptTopic\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "topicType",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDlpSettingsPayloadLogging:getZeroTrustDlpSettingsPayloadLogging": {
            "properties": {
                "maskingLevel": {
                    "type": "string",
                    "description": "Masking level for payload logs.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "Base64-encoded public key for encrypting payload logs. Null when payload logging is disabled.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "maskingLevel",
                "publicKey",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpoints:getZeroTrustDnsLocationEndpoints": {
            "properties": {
                "doh": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsDoh:getZeroTrustDnsLocationEndpointsDoh"
                },
                "dot": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsDot:getZeroTrustDnsLocationEndpointsDot"
                },
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsIpv4:getZeroTrustDnsLocationEndpointsIpv4"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsIpv6:getZeroTrustDnsLocationEndpointsIpv6"
                }
            },
            "type": "object",
            "required": [
                "doh",
                "dot",
                "ipv4",
                "ipv6"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsDoh:getZeroTrustDnsLocationEndpointsDoh": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOH endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsDohNetwork:getZeroTrustDnsLocationEndpointsDohNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                },
                "requireToken": {
                    "type": "boolean",
                    "description": "Specify whether the DOH endpoint requires user identity authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "networks",
                "requireToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsDohNetwork:getZeroTrustDnsLocationEndpointsDohNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsDot:getZeroTrustDnsLocationEndpointsDot": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOT endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsDotNetwork:getZeroTrustDnsLocationEndpointsDotNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "networks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsDotNetwork:getZeroTrustDnsLocationEndpointsDotNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsIpv4:getZeroTrustDnsLocationEndpointsIpv4": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPv4 endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsIpv6:getZeroTrustDnsLocationEndpointsIpv6": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPV6 endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpointsIpv6Network:getZeroTrustDnsLocationEndpointsIpv6Network"
                    },
                    "description": "Specify the list of allowed source IPv6 network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "networks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationEndpointsIpv6Network:getZeroTrustDnsLocationEndpointsIpv6Network": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv6 address or IPv6 CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationNetwork:getZeroTrustDnsLocationNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv4 address or IPv4 CIDR. Limit IPv4 CIDRs to a maximum of /24.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResult:getZeroTrustDnsLocationsResult": {
            "properties": {
                "clientDefault": {
                    "type": "boolean",
                    "description": "Indicate whether this location is the default location.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "dnsDestinationIpsId": {
                    "type": "string",
                    "description": "Indicate the identifier of the pair of IPv4 addresses assigned to this location.\n"
                },
                "dnsDestinationIpv6BlockId": {
                    "type": "string",
                    "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.\n"
                },
                "dohSubdomain": {
                    "type": "string",
                    "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.\n"
                },
                "ecsSupport": {
                    "type": "boolean",
                    "description": "Indicate whether the location must resolve EDNS queries.\n"
                },
                "endpoints": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpoints:getZeroTrustDnsLocationsResultEndpoints",
                    "description": "Configure the destination endpoints for this location.\n"
                },
                "id": {
                    "type": "string"
                },
                "ip": {
                    "type": "string",
                    "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.\n"
                },
                "ipv4Destination": {
                    "type": "string",
                    "description": "Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                },
                "ipv4DestinationBackup": {
                    "type": "string",
                    "description": "Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the location name.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultNetwork:getZeroTrustDnsLocationsResultNetwork"
                    },
                    "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "clientDefault",
                "createdAt",
                "dnsDestinationIpsId",
                "dnsDestinationIpv6BlockId",
                "dohSubdomain",
                "ecsSupport",
                "endpoints",
                "id",
                "ip",
                "ipv4Destination",
                "ipv4DestinationBackup",
                "name",
                "networks",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpoints:getZeroTrustDnsLocationsResultEndpoints": {
            "properties": {
                "doh": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDoh:getZeroTrustDnsLocationsResultEndpointsDoh"
                },
                "dot": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDot:getZeroTrustDnsLocationsResultEndpointsDot"
                },
                "ipv4": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsIpv4:getZeroTrustDnsLocationsResultEndpointsIpv4"
                },
                "ipv6": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsIpv6:getZeroTrustDnsLocationsResultEndpointsIpv6"
                }
            },
            "type": "object",
            "required": [
                "doh",
                "dot",
                "ipv4",
                "ipv6"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDoh:getZeroTrustDnsLocationsResultEndpointsDoh": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOH endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDohNetwork:getZeroTrustDnsLocationsResultEndpointsDohNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                },
                "requireToken": {
                    "type": "boolean",
                    "description": "Specify whether the DOH endpoint requires user identity authentication.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "networks",
                "requireToken"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDohNetwork:getZeroTrustDnsLocationsResultEndpointsDohNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDot:getZeroTrustDnsLocationsResultEndpointsDot": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the DOT endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDotNetwork:getZeroTrustDnsLocationsResultEndpointsDotNetwork"
                    },
                    "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "networks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsDotNetwork:getZeroTrustDnsLocationsResultEndpointsDotNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IP address or IP CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsIpv4:getZeroTrustDnsLocationsResultEndpointsIpv4": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPv4 endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsIpv6:getZeroTrustDnsLocationsResultEndpointsIpv6": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicate whether the IPV6 endpoint is enabled for this location.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResultEndpointsIpv6Network:getZeroTrustDnsLocationsResultEndpointsIpv6Network"
                    },
                    "description": "Specify the list of allowed source IPv6 network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "networks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultEndpointsIpv6Network:getZeroTrustDnsLocationsResultEndpointsIpv6Network": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv6 address or IPv6 CIDR.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustDnsLocationsResultNetwork:getZeroTrustDnsLocationsResultNetwork": {
            "properties": {
                "network": {
                    "type": "string",
                    "description": "Specify the IPv4 address or IPv4 CIDR. Limit IPv4 CIDRs to a maximum of /24.\n"
                }
            },
            "type": "object",
            "required": [
                "network"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayAppTypesListResult:getZeroTrustGatewayAppTypesListResult": {
            "properties": {
                "applicationTypeId": {
                    "type": "integer",
                    "description": "Identify the type of this application. Multiple applications can share the same type. Refers to the \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of a returned application type.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide a short summary of applications with this type.\n"
                },
                "id": {
                    "type": "integer",
                    "description": "Identify this application. Only one application per ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the name of the application or application type.\n"
                }
            },
            "type": "object",
            "required": [
                "applicationTypeId",
                "createdAt",
                "description",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayCategoriesListResult:getZeroTrustGatewayCategoriesListResult": {
            "properties": {
                "beta": {
                    "type": "boolean",
                    "description": "Indicate whether the category is in beta and subject to change.\n"
                },
                "class": {
                    "type": "string",
                    "description": "Specify which account types can create policies for this category. \u003cspan pulumi-lang-nodejs=\"`blocked`\" pulumi-lang-dotnet=\"`Blocked`\" pulumi-lang-go=\"`blocked`\" pulumi-lang-python=\"`blocked`\" pulumi-lang-yaml=\"`blocked`\" pulumi-lang-java=\"`blocked`\"\u003e`blocked`\u003c/span\u003e Blocks unconditionally for all accounts. `removalPending` Allows removal from policies but disables addition. `noBlock` Prevents blocking.\nAvailable values: \"free\", \"premium\", \"blocked\", \"removalPending\", \"noBlock\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "Provide a short summary of domains in the category.\n"
                },
                "id": {
                    "type": "integer",
                    "description": "Identify this category. Only one category per ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the category name.\n"
                },
                "subcategories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayCategoriesListResultSubcategory:getZeroTrustGatewayCategoriesListResultSubcategory"
                    },
                    "description": "Provide all subcategories for this category.\n"
                }
            },
            "type": "object",
            "required": [
                "beta",
                "class",
                "description",
                "id",
                "name",
                "subcategories"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayCategoriesListResultSubcategory:getZeroTrustGatewayCategoriesListResultSubcategory": {
            "properties": {
                "beta": {
                    "type": "boolean",
                    "description": "Indicate whether the category is in beta and subject to change.\n"
                },
                "class": {
                    "type": "string",
                    "description": "Specify which account types can create policies for this category. \u003cspan pulumi-lang-nodejs=\"`blocked`\" pulumi-lang-dotnet=\"`Blocked`\" pulumi-lang-go=\"`blocked`\" pulumi-lang-python=\"`blocked`\" pulumi-lang-yaml=\"`blocked`\" pulumi-lang-java=\"`blocked`\"\u003e`blocked`\u003c/span\u003e Blocks unconditionally for all accounts. `removalPending` Allows removal from policies but disables addition. `noBlock` Prevents blocking.\nAvailable values: \"free\", \"premium\", \"blocked\", \"removalPending\", \"noBlock\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "Provide a short summary of domains in the category.\n"
                },
                "id": {
                    "type": "integer",
                    "description": "Identify this category. Only one category per ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the category name.\n"
                }
            },
            "type": "object",
            "required": [
                "beta",
                "class",
                "description",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayCertificatesResult:getZeroTrustGatewayCertificatesResult": {
            "properties": {
                "bindingStatus": {
                    "type": "string",
                    "description": "Indicate the read-only deployment status of the certificate on Cloudflare's edge. Gateway TLS interception can use certificates in the 'available' (previously called 'active') state.\nAvailable values: \"pending*deployment\", \"available\", \"pending*deletion\", \"inactive\".\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "Provide the CA certificate (read-only).\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "expiresOn": {
                    "type": "string"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "Provide the SHA256 fingerprint of the certificate (read-only).\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identify the certificate with a UUID.\n"
                },
                "inUse": {
                    "type": "boolean",
                    "description": "Indicate whether Gateway TLS interception uses this certificate (read-only). You cannot set this value directly. To configure interception, use the Gateway configuration setting named \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e (read-only).\n"
                },
                "issuerOrg": {
                    "type": "string",
                    "description": "Indicate the organization that issued the certificate (read-only).\n"
                },
                "issuerRaw": {
                    "type": "string",
                    "description": "Provide the entire issuer field of the certificate (read-only).\n"
                },
                "type": {
                    "type": "string",
                    "description": "Indicate the read-only certificate type, BYO-PKI (custom) or Gateway-managed.\nAvailable values: \"custom\", \u003cspan pulumi-lang-nodejs=\"\"gatewayManaged\"\" pulumi-lang-dotnet=\"\"GatewayManaged\"\" pulumi-lang-go=\"\"gatewayManaged\"\" pulumi-lang-python=\"\"gateway_managed\"\" pulumi-lang-yaml=\"\"gatewayManaged\"\" pulumi-lang-java=\"\"gatewayManaged\"\"\u003e\"gatewayManaged\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadedOn": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "bindingStatus",
                "certificate",
                "createdAt",
                "expiresOn",
                "fingerprint",
                "id",
                "inUse",
                "issuerOrg",
                "issuerRaw",
                "type",
                "updatedAt",
                "uploadedOn"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleType:getZeroTrustGatewayLoggingSettingsByRuleType": {
            "properties": {
                "dns": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleTypeDns:getZeroTrustGatewayLoggingSettingsByRuleTypeDns",
                    "description": "Configure logging settings for DNS firewall.\n"
                },
                "http": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleTypeHttp:getZeroTrustGatewayLoggingSettingsByRuleTypeHttp",
                    "description": "Configure logging settings for HTTP/HTTPS firewall.\n"
                },
                "l4": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleTypeL4:getZeroTrustGatewayLoggingSettingsByRuleTypeL4",
                    "description": "Configure logging settings for Network firewall.\n"
                }
            },
            "type": "object",
            "required": [
                "dns",
                "http",
                "l4"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleTypeDns:getZeroTrustGatewayLoggingSettingsByRuleTypeDns": {
            "properties": {
                "logAll": {
                    "type": "boolean",
                    "description": "Specify whether to log all requests to this service.\n"
                },
                "logBlocks": {
                    "type": "boolean",
                    "description": "Specify whether to log only blocking requests to this service.\n"
                }
            },
            "type": "object",
            "required": [
                "logAll",
                "logBlocks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleTypeHttp:getZeroTrustGatewayLoggingSettingsByRuleTypeHttp": {
            "properties": {
                "logAll": {
                    "type": "boolean",
                    "description": "Specify whether to log all requests to this service.\n"
                },
                "logBlocks": {
                    "type": "boolean",
                    "description": "Specify whether to log only blocking requests to this service.\n"
                }
            },
            "type": "object",
            "required": [
                "logAll",
                "logBlocks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleTypeL4:getZeroTrustGatewayLoggingSettingsByRuleTypeL4": {
            "properties": {
                "logAll": {
                    "type": "boolean",
                    "description": "Specify whether to log all requests to this service.\n"
                },
                "logBlocks": {
                    "type": "boolean",
                    "description": "Specify whether to log only blocking requests to this service.\n"
                }
            },
            "type": "object",
            "required": [
                "logAll",
                "logBlocks"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPacfilesResult:getZeroTrustGatewayPacfilesResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Detailed description of the PAC file.\n"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the PAC file.\n"
                },
                "slug": {
                    "type": "string",
                    "description": "URL-friendly version of the PAC file name.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "url": {
                    "type": "string",
                    "description": "Unique URL to download the PAC file.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "description",
                "id",
                "name",
                "slug",
                "updatedAt",
                "url"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResult:getZeroTrustGatewayPoliciesResult": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Indicate the date of deletion, if any.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Specify the rule description.\n"
                },
                "devicePosture": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether the rule is enabled.\n"
                },
                "expiration": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultExpiration:getZeroTrustGatewayPoliciesResultExpiration",
                    "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identify the API resource with a UUID.\n"
                },
                "identity": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the rule name.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this rule is shared via the Orgs API and read only.\n"
                },
                "ruleSettings": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettings:getZeroTrustGatewayPoliciesResultRuleSettings",
                    "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                },
                "schedule": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultSchedule:getZeroTrustGatewayPoliciesResultSchedule",
                    "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "sharable": {
                    "type": "boolean",
                    "description": "Indicate that this rule is sharable via the Orgs API.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Provide the account tag of the account that created the rule.\n"
                },
                "traffic": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the rule(read-only).\n"
                },
                "warningStatus": {
                    "type": "string",
                    "description": "Indicate a warning for a misconfigured rule, if any.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "createdAt",
                "deletedAt",
                "description",
                "devicePosture",
                "enabled",
                "expiration",
                "filters",
                "id",
                "identity",
                "name",
                "precedence",
                "readOnly",
                "ruleSettings",
                "schedule",
                "sharable",
                "sourceAccount",
                "traffic",
                "updatedAt",
                "version",
                "warningStatus"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultExpiration:getZeroTrustGatewayPoliciesResultExpiration": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "Defines the default duration a policy active in minutes. Must set in order to use the \u003cspan pulumi-lang-nodejs=\"`resetExpiration`\" pulumi-lang-dotnet=\"`ResetExpiration`\" pulumi-lang-go=\"`resetExpiration`\" pulumi-lang-python=\"`reset_expiration`\" pulumi-lang-yaml=\"`resetExpiration`\" pulumi-lang-java=\"`resetExpiration`\"\u003e`resetExpiration`\u003c/span\u003e endpoint on this rule.\n"
                },
                "expired": {
                    "type": "boolean",
                    "description": "Indicates whether the policy is expired.\n"
                },
                "expiresAt": {
                    "type": "string",
                    "description": "Show the timestamp when the policy expires and stops applying.  The value must follow RFC 3339 and include a UTC offset.  The system accepts non-zero offsets but converts them to the equivalent UTC+00:00  value and returns timestamps with a trailing Z. Expiration policies ignore client  timezones and expire globally at the specified\u003cspan pulumi-lang-nodejs=\" expiresAt \" pulumi-lang-dotnet=\" ExpiresAt \" pulumi-lang-go=\" expiresAt \" pulumi-lang-python=\" expires_at \" pulumi-lang-yaml=\" expiresAt \" pulumi-lang-java=\" expiresAt \"\u003e expiresAt \u003c/span\u003etime.\n"
                }
            },
            "type": "object",
            "required": [
                "duration",
                "expired",
                "expiresAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettings:getZeroTrustGatewayPoliciesResultRuleSettings": {
            "properties": {
                "addHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Add custom headers to allowed requests as key-value pairs. Use header names as keys that map to arrays of header values. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "allowChildBypass": {
                    "type": "boolean",
                    "description": "Set to enable MSP children to bypass this rule. Only parent MSP accounts can set this. this rule. Settable for all types of rules.\n"
                },
                "auditSsh": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsAuditSsh:getZeroTrustGatewayPoliciesResultRuleSettingsAuditSsh",
                    "description": "Define the settings for the Audit SSH action. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with \u003cspan pulumi-lang-nodejs=\"`auditSsh`\" pulumi-lang-dotnet=\"`AuditSsh`\" pulumi-lang-go=\"`auditSsh`\" pulumi-lang-python=\"`audit_ssh`\" pulumi-lang-yaml=\"`auditSsh`\" pulumi-lang-java=\"`auditSsh`\"\u003e`auditSsh`\u003c/span\u003e action.\n"
                },
                "bisoAdminControls": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsBisoAdminControls:getZeroTrustGatewayPoliciesResultRuleSettingsBisoAdminControls",
                    "description": "Configure browser isolation behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`isolate`\" pulumi-lang-dotnet=\"`Isolate`\" pulumi-lang-go=\"`isolate`\" pulumi-lang-python=\"`isolate`\" pulumi-lang-yaml=\"`isolate`\" pulumi-lang-java=\"`isolate`\"\u003e`isolate`\u003c/span\u003e.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsBlockPage:getZeroTrustGatewayPoliciesResultRuleSettingsBlockPage",
                    "description": "Configure custom block page settings. If missing or null, use the account settings. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockPageEnabled": {
                    "type": "boolean",
                    "description": "Enable the custom block page. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with action \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockReason": {
                    "type": "string",
                    "description": "Explain why the rule blocks the request. The custom block page shows this text (if enabled). Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules when the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "bypassParentRule": {
                    "type": "boolean",
                    "description": "Set to enable MSP accounts to bypass their parent's rules. Only MSP child accounts can set this. Settable for all types of rules.\n"
                },
                "checkSession": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsCheckSession:getZeroTrustGatewayPoliciesResultRuleSettingsCheckSession",
                    "description": "Configure session check behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "dnsResolvers": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolvers:getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolvers",
                    "description": "Configure custom resolvers to route queries that match the resolver policy. Unused with 'resolve*dns*through*cloudflare' or 'resolve*dns*internally' settings. DNS queries get routed to the address closest to their origin. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "egress": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsEgress:getZeroTrustGatewayPoliciesResultRuleSettingsEgress",
                    "description": "Configure how Gateway Proxy traffic egresses. You can enable this setting for rules with Egress actions and filters, or omit it to indicate local egress via WARP IPs. Settable only for \u003cspan pulumi-lang-nodejs=\"`egress`\" pulumi-lang-dotnet=\"`Egress`\" pulumi-lang-go=\"`egress`\" pulumi-lang-python=\"`egress`\" pulumi-lang-yaml=\"`egress`\" pulumi-lang-java=\"`egress`\"\u003e`egress`\u003c/span\u003e rules.\n"
                },
                "forensicCopy": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsForensicCopy:getZeroTrustGatewayPoliciesResultRuleSettingsForensicCopy",
                    "description": "Configure whether a copy of the HTTP request will be sent to storage when the rule matches.\n"
                },
                "ignoreCnameCategoryMatches": {
                    "type": "boolean",
                    "description": "Ignore category matches at CNAME domains in a response. When off, evaluate categories in this rule against all CNAME domain categories in the response. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "insecureDisableDnssecValidation": {
                    "type": "boolean",
                    "description": "Specify whether to disable DNSSEC validation (for Allow actions) [INSECURE]. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "ipCategories": {
                    "type": "boolean",
                    "description": "Enable IPs in DNS resolver category blocks. The system blocks only domain name categories unless you enable this setting. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "ipIndicatorFeeds": {
                    "type": "boolean",
                    "description": "Indicates whether to include IPs in DNS resolver indicator feed blocks. Default, indicator feeds block only domain names. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "l4override": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsL4override:getZeroTrustGatewayPoliciesResultRuleSettingsL4override",
                    "description": "Send matching traffic to the supplied destination IP address and port. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`l4Override`\" pulumi-lang-dotnet=\"`L4Override`\" pulumi-lang-go=\"`l4Override`\" pulumi-lang-python=\"`l4_override`\" pulumi-lang-yaml=\"`l4Override`\" pulumi-lang-java=\"`l4Override`\"\u003e`l4Override`\u003c/span\u003e.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsNotificationSettings:getZeroTrustGatewayPoliciesResultRuleSettingsNotificationSettings",
                    "description": "Configure a notification to display on the user's device when this rule matched. Settable for all types of rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "overrideHost": {
                    "type": "string",
                    "description": "Defines a hostname for override, for the matching DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "overrideIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Defines a an IP or set of IPs for overriding matched DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "payloadLog": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsPayloadLog:getZeroTrustGatewayPoliciesResultRuleSettingsPayloadLog",
                    "description": "Configure DLP payload logging. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "quarantine": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsQuarantine:getZeroTrustGatewayPoliciesResultRuleSettingsQuarantine",
                    "description": "Configure settings that apply to quarantine rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsRedirect:getZeroTrustGatewayPoliciesResultRuleSettingsRedirect",
                    "description": "Apply settings to redirect rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e.\n"
                },
                "resolveDnsInternally": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsResolveDnsInternally:getZeroTrustGatewayPoliciesResultRuleSettingsResolveDnsInternally",
                    "description": "Configure to forward the query to the internal DNS service, passing the specified 'view*id' as input. Not used when 'dns*resolvers' is specified or 'resolve*dns*through*cloudflare' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "resolveDnsThroughCloudflare": {
                    "type": "boolean",
                    "description": "Enable to send queries that match the policy to Cloudflare's default 1.1.1.1 DNS resolver. Cannot set when 'dns*resolvers' specified or 'resolve*dns_internally' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "untrustedCert": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsUntrustedCert:getZeroTrustGatewayPoliciesResultRuleSettingsUntrustedCert",
                    "description": "Configure behavior when an upstream certificate is invalid or an SSL error occurs. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "addHeaders",
                "allowChildBypass",
                "auditSsh",
                "bisoAdminControls",
                "blockPage",
                "blockPageEnabled",
                "blockReason",
                "bypassParentRule",
                "checkSession",
                "dnsResolvers",
                "egress",
                "forensicCopy",
                "ignoreCnameCategoryMatches",
                "insecureDisableDnssecValidation",
                "ipCategories",
                "ipIndicatorFeeds",
                "l4override",
                "notificationSettings",
                "overrideHost",
                "overrideIps",
                "payloadLog",
                "quarantine",
                "redirect",
                "resolveDnsInternally",
                "resolveDnsThroughCloudflare",
                "untrustedCert"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsAuditSsh:getZeroTrustGatewayPoliciesResultRuleSettingsAuditSsh": {
            "properties": {
                "commandLogging": {
                    "type": "boolean",
                    "description": "Enable SSH command logging.\n"
                }
            },
            "type": "object",
            "required": [
                "commandLogging"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsBisoAdminControls:getZeroTrustGatewayPoliciesResultRuleSettingsBisoAdminControls": {
            "properties": {
                "copy": {
                    "type": "string",
                    "description": "Configure copy behavior. If set to remote*only, users cannot copy isolated content from the remote browser to the local clipboard. If this field is absent, copying remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dcp": {
                    "type": "boolean",
                    "description": "Set to false to enable copy-pasting. Only applies when `version == \"v1\"`.\n"
                },
                "dd": {
                    "type": "boolean",
                    "description": "Set to false to enable downloading. Only applies when `version == \"v1\"`.\n"
                },
                "dk": {
                    "type": "boolean",
                    "description": "Set to false to enable keyboard usage. Only applies when `version == \"v1\"`.\n"
                },
                "download": {
                    "type": "string",
                    "description": "Configure download behavior. When set to remote*only, users can view downloads but cannot save them. If this field is absent, downloading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dp": {
                    "type": "boolean",
                    "description": "Set to false to enable printing. Only applies when `version == \"v1\"`.\n"
                },
                "du": {
                    "type": "boolean",
                    "description": "Set to false to enable uploading. Only applies when `version == \"v1\"`.\n"
                },
                "keyboard": {
                    "type": "string",
                    "description": "Configure keyboard usage behavior. If this field is absent, keyboard usage remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "paste": {
                    "type": "string",
                    "description": "Configure paste behavior. If set to remote*only, users cannot paste content from the local clipboard into isolated pages. If this field is absent, pasting remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "printing": {
                    "type": "string",
                    "description": "Configure print behavior. Default, Printing is enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "upload": {
                    "type": "string",
                    "description": "Configure upload behavior. If this field is absent, uploading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "version": {
                    "type": "string",
                    "description": "Indicate which version of the browser isolation controls should apply.\nAvailable values: \"v1\", \"v2\".\n"
                },
                "wmId": {
                    "type": "string",
                    "description": "Specify the watermark ID (UUID) to apply to the isolated browser session. When present, enables watermark rendering in the isolated browser.\n"
                }
            },
            "type": "object",
            "required": [
                "copy",
                "dcp",
                "dd",
                "dk",
                "download",
                "dp",
                "du",
                "keyboard",
                "paste",
                "printing",
                "upload",
                "version",
                "wmId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsBlockPage:getZeroTrustGatewayPoliciesResultRuleSettingsBlockPage": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "includeContext",
                "targetUri"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsCheckSession:getZeroTrustGatewayPoliciesResultRuleSettingsCheckSession": {
            "properties": {
                "duration": {
                    "type": "string",
                    "description": "Sets the required session freshness threshold. The API returns a normalized version of this value.\n"
                },
                "enforce": {
                    "type": "boolean",
                    "description": "Enable session enforcement.\n"
                }
            },
            "type": "object",
            "required": [
                "duration",
                "enforce"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolvers:getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolvers": {
            "properties": {
                "ipv4s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv4:getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv4"
                    }
                },
                "ipv6s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv6:getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv6"
                    }
                }
            },
            "type": "object",
            "required": [
                "ipv4s",
                "ipv6s"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv4:getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv4": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv4 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip",
                "port",
                "routeThroughPrivateNetwork",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv6:getZeroTrustGatewayPoliciesResultRuleSettingsDnsResolversIpv6": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv6 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip",
                "port",
                "routeThroughPrivateNetwork",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsEgress:getZeroTrustGatewayPoliciesResultRuleSettingsEgress": {
            "properties": {
                "ipv4": {
                    "type": "string",
                    "description": "Specify the IPv4 address to use for egress.\n"
                },
                "ipv4Fallback": {
                    "type": "string",
                    "description": "Specify the fallback IPv4 address to use for egress when the primary IPv4 fails. Set '0.0.0.0' to indicate local egress via WARP IPs.\n"
                },
                "ipv6": {
                    "type": "string",
                    "description": "Specify the IPv6 range to use for egress.\n"
                }
            },
            "type": "object",
            "required": [
                "ipv4",
                "ipv4Fallback",
                "ipv6"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsForensicCopy:getZeroTrustGatewayPoliciesResultRuleSettingsForensicCopy": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable sending the copy to storage.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsL4override:getZeroTrustGatewayPoliciesResultRuleSettingsL4override": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Defines the IPv4 or IPv6 address.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Defines a port number to use for TCP/UDP overrides.\n"
                }
            },
            "type": "object",
            "required": [
                "ip",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsNotificationSettings:getZeroTrustGatewayPoliciesResultRuleSettingsNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable notification.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Indicates whether to pass the context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Customize the message shown in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Defines an optional URL to direct users to additional information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "includeContext",
                "msg",
                "supportUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsPayloadLog:getZeroTrustGatewayPoliciesResultRuleSettingsPayloadLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable DLP payload logging for this rule.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsQuarantine:getZeroTrustGatewayPoliciesResultRuleSettingsQuarantine": {
            "properties": {
                "fileTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the types of files to sandbox.\n"
                }
            },
            "type": "object",
            "required": [
                "fileTypes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsRedirect:getZeroTrustGatewayPoliciesResultRuleSettingsRedirect": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "preservePathAndQuery": {
                    "type": "boolean",
                    "description": "Specify whether to append the path and query parameters from the original request to target_uri.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "includeContext",
                "preservePathAndQuery",
                "targetUri"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsResolveDnsInternally:getZeroTrustGatewayPoliciesResultRuleSettingsResolveDnsInternally": {
            "properties": {
                "fallback": {
                    "type": "string",
                    "description": "Specify the fallback behavior to apply when the internal DNS response code differs from 'NOERROR' or when the response data contains only CNAME records for 'A' or 'AAAA' queries.\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"publicDns\"\" pulumi-lang-dotnet=\"\"PublicDns\"\" pulumi-lang-go=\"\"publicDns\"\" pulumi-lang-python=\"\"public_dns\"\" pulumi-lang-yaml=\"\"publicDns\"\" pulumi-lang-java=\"\"publicDns\"\"\u003e\"publicDns\"\u003c/span\u003e.\n"
                },
                "viewId": {
                    "type": "string",
                    "description": "Specify the internal DNS view identifier to pass to the internal DNS service.\n"
                }
            },
            "type": "object",
            "required": [
                "fallback",
                "viewId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultRuleSettingsUntrustedCert:getZeroTrustGatewayPoliciesResultRuleSettingsUntrustedCert": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Defines the action performed when an untrusted certificate seen. The default action an error with HTTP code 526.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"passThrough\"\" pulumi-lang-dotnet=\"\"PassThrough\"\" pulumi-lang-go=\"\"passThrough\"\" pulumi-lang-python=\"\"pass_through\"\" pulumi-lang-yaml=\"\"passThrough\"\" pulumi-lang-java=\"\"passThrough\"\"\u003e\"passThrough\"\u003c/span\u003e, \"block\", \"error\".\n"
                }
            },
            "type": "object",
            "required": [
                "action"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPoliciesResultSchedule:getZeroTrustGatewayPoliciesResultSchedule": {
            "properties": {
                "fri": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Fridays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Fridays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "mon": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Mondays, in the increasing order from 00:00-24:00(capped at maximum of 6 time splits). If this parameter omitted, the rule is deactivated on Mondays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sat": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Saturdays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Saturdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sun": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Sundays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Sundays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "thu": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Thursdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Thursdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "Specify the time zone for rule evaluation. When a [valid time zone city name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) is provided, Gateway always uses the current time for that time zone. When this parameter is omitted, Gateway uses the time zone determined from the user's IP address. Colo time zone is used when the user's IP address does not resolve to a location.\n"
                },
                "tue": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Tuesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Tuesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "wed": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Wednesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Wednesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                }
            },
            "type": "object",
            "required": [
                "fri",
                "mon",
                "sat",
                "sun",
                "thu",
                "timeZone",
                "tue",
                "wed"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyExpiration:getZeroTrustGatewayPolicyExpiration": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "Defines the default duration a policy active in minutes. Must set in order to use the \u003cspan pulumi-lang-nodejs=\"`resetExpiration`\" pulumi-lang-dotnet=\"`ResetExpiration`\" pulumi-lang-go=\"`resetExpiration`\" pulumi-lang-python=\"`reset_expiration`\" pulumi-lang-yaml=\"`resetExpiration`\" pulumi-lang-java=\"`resetExpiration`\"\u003e`resetExpiration`\u003c/span\u003e endpoint on this rule.\n"
                },
                "expired": {
                    "type": "boolean",
                    "description": "Indicates whether the policy is expired.\n"
                },
                "expiresAt": {
                    "type": "string",
                    "description": "Show the timestamp when the policy expires and stops applying.  The value must follow RFC 3339 and include a UTC offset.  The system accepts non-zero offsets but converts them to the equivalent UTC+00:00  value and returns timestamps with a trailing Z. Expiration policies ignore client  timezones and expire globally at the specified\u003cspan pulumi-lang-nodejs=\" expiresAt \" pulumi-lang-dotnet=\" ExpiresAt \" pulumi-lang-go=\" expiresAt \" pulumi-lang-python=\" expires_at \" pulumi-lang-yaml=\" expiresAt \" pulumi-lang-java=\" expiresAt \"\u003e expiresAt \u003c/span\u003etime.\n"
                }
            },
            "type": "object",
            "required": [
                "duration",
                "expired",
                "expiresAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettings:getZeroTrustGatewayPolicyRuleSettings": {
            "properties": {
                "addHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Add custom headers to allowed requests as key-value pairs. Use header names as keys that map to arrays of header values. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "allowChildBypass": {
                    "type": "boolean",
                    "description": "Set to enable MSP children to bypass this rule. Only parent MSP accounts can set this. this rule. Settable for all types of rules.\n"
                },
                "auditSsh": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsAuditSsh:getZeroTrustGatewayPolicyRuleSettingsAuditSsh",
                    "description": "Define the settings for the Audit SSH action. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with \u003cspan pulumi-lang-nodejs=\"`auditSsh`\" pulumi-lang-dotnet=\"`AuditSsh`\" pulumi-lang-go=\"`auditSsh`\" pulumi-lang-python=\"`audit_ssh`\" pulumi-lang-yaml=\"`auditSsh`\" pulumi-lang-java=\"`auditSsh`\"\u003e`auditSsh`\u003c/span\u003e action.\n"
                },
                "bisoAdminControls": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsBisoAdminControls:getZeroTrustGatewayPolicyRuleSettingsBisoAdminControls",
                    "description": "Configure browser isolation behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`isolate`\" pulumi-lang-dotnet=\"`Isolate`\" pulumi-lang-go=\"`isolate`\" pulumi-lang-python=\"`isolate`\" pulumi-lang-yaml=\"`isolate`\" pulumi-lang-java=\"`isolate`\"\u003e`isolate`\u003c/span\u003e.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsBlockPage:getZeroTrustGatewayPolicyRuleSettingsBlockPage",
                    "description": "Configure custom block page settings. If missing or null, use the account settings. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockPageEnabled": {
                    "type": "boolean",
                    "description": "Enable the custom block page. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with action \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "blockReason": {
                    "type": "string",
                    "description": "Explain why the rule blocks the request. The custom block page shows this text (if enabled). Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules when the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "bypassParentRule": {
                    "type": "boolean",
                    "description": "Set to enable MSP accounts to bypass their parent's rules. Only MSP child accounts can set this. Settable for all types of rules.\n"
                },
                "checkSession": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsCheckSession:getZeroTrustGatewayPolicyRuleSettingsCheckSession",
                    "description": "Configure session check behavior. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                },
                "dnsResolvers": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsDnsResolvers:getZeroTrustGatewayPolicyRuleSettingsDnsResolvers",
                    "description": "Configure custom resolvers to route queries that match the resolver policy. Unused with 'resolve*dns*through*cloudflare' or 'resolve*dns*internally' settings. DNS queries get routed to the address closest to their origin. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "egress": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsEgress:getZeroTrustGatewayPolicyRuleSettingsEgress",
                    "description": "Configure how Gateway Proxy traffic egresses. You can enable this setting for rules with Egress actions and filters, or omit it to indicate local egress via WARP IPs. Settable only for \u003cspan pulumi-lang-nodejs=\"`egress`\" pulumi-lang-dotnet=\"`Egress`\" pulumi-lang-go=\"`egress`\" pulumi-lang-python=\"`egress`\" pulumi-lang-yaml=\"`egress`\" pulumi-lang-java=\"`egress`\"\u003e`egress`\u003c/span\u003e rules.\n"
                },
                "forensicCopy": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsForensicCopy:getZeroTrustGatewayPolicyRuleSettingsForensicCopy",
                    "description": "Configure whether a copy of the HTTP request will be sent to storage when the rule matches.\n"
                },
                "ignoreCnameCategoryMatches": {
                    "type": "boolean",
                    "description": "Ignore category matches at CNAME domains in a response. When off, evaluate categories in this rule against all CNAME domain categories in the response. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "insecureDisableDnssecValidation": {
                    "type": "boolean",
                    "description": "Specify whether to disable DNSSEC validation (for Allow actions) [INSECURE]. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "ipCategories": {
                    "type": "boolean",
                    "description": "Enable IPs in DNS resolver category blocks. The system blocks only domain name categories unless you enable this setting. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "ipIndicatorFeeds": {
                    "type": "boolean",
                    "description": "Indicates whether to include IPs in DNS resolver indicator feed blocks. Default, indicator feeds block only domain names. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "l4override": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsL4override:getZeroTrustGatewayPolicyRuleSettingsL4override",
                    "description": "Send matching traffic to the supplied destination IP address and port. Settable only for \u003cspan pulumi-lang-nodejs=\"`l4`\" pulumi-lang-dotnet=\"`L4`\" pulumi-lang-go=\"`l4`\" pulumi-lang-python=\"`l4`\" pulumi-lang-yaml=\"`l4`\" pulumi-lang-java=\"`l4`\"\u003e`l4`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`l4Override`\" pulumi-lang-dotnet=\"`L4Override`\" pulumi-lang-go=\"`l4Override`\" pulumi-lang-python=\"`l4_override`\" pulumi-lang-yaml=\"`l4Override`\" pulumi-lang-java=\"`l4Override`\"\u003e`l4Override`\u003c/span\u003e.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsNotificationSettings:getZeroTrustGatewayPolicyRuleSettingsNotificationSettings",
                    "description": "Configure a notification to display on the user's device when this rule matched. Settable for all types of rules with the action set to \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e.\n"
                },
                "overrideHost": {
                    "type": "string",
                    "description": "Defines a hostname for override, for the matching DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "overrideIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Defines a an IP or set of IPs for overriding matched DNS queries. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`override`\" pulumi-lang-dotnet=\"`Override`\" pulumi-lang-go=\"`override`\" pulumi-lang-python=\"`override`\" pulumi-lang-yaml=\"`override`\" pulumi-lang-java=\"`override`\"\u003e`override`\u003c/span\u003e.\n"
                },
                "payloadLog": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsPayloadLog:getZeroTrustGatewayPolicyRuleSettingsPayloadLog",
                    "description": "Configure DLP payload logging. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "quarantine": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsQuarantine:getZeroTrustGatewayPolicyRuleSettingsQuarantine",
                    "description": "Configure settings that apply to quarantine rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsRedirect:getZeroTrustGatewayPolicyRuleSettingsRedirect",
                    "description": "Apply settings to redirect rules. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e.\n"
                },
                "resolveDnsInternally": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally:getZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally",
                    "description": "Configure to forward the query to the internal DNS service, passing the specified 'view*id' as input. Not used when 'dns*resolvers' is specified or 'resolve*dns*through*cloudflare' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "resolveDnsThroughCloudflare": {
                    "type": "boolean",
                    "description": "Enable to send queries that match the policy to Cloudflare's default 1.1.1.1 DNS resolver. Cannot set when 'dns*resolvers' specified or 'resolve*dns_internally' is set. Only valid when a rule's action set to 'resolve'. Settable only for \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "untrustedCert": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsUntrustedCert:getZeroTrustGatewayPolicyRuleSettingsUntrustedCert",
                    "description": "Configure behavior when an upstream certificate is invalid or an SSL error occurs. Settable only for \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e rules with the action set to \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "addHeaders",
                "allowChildBypass",
                "auditSsh",
                "bisoAdminControls",
                "blockPage",
                "blockPageEnabled",
                "blockReason",
                "bypassParentRule",
                "checkSession",
                "dnsResolvers",
                "egress",
                "forensicCopy",
                "ignoreCnameCategoryMatches",
                "insecureDisableDnssecValidation",
                "ipCategories",
                "ipIndicatorFeeds",
                "l4override",
                "notificationSettings",
                "overrideHost",
                "overrideIps",
                "payloadLog",
                "quarantine",
                "redirect",
                "resolveDnsInternally",
                "resolveDnsThroughCloudflare",
                "untrustedCert"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsAuditSsh:getZeroTrustGatewayPolicyRuleSettingsAuditSsh": {
            "properties": {
                "commandLogging": {
                    "type": "boolean",
                    "description": "Enable SSH command logging.\n"
                }
            },
            "type": "object",
            "required": [
                "commandLogging"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsBisoAdminControls:getZeroTrustGatewayPolicyRuleSettingsBisoAdminControls": {
            "properties": {
                "copy": {
                    "type": "string",
                    "description": "Configure copy behavior. If set to remote*only, users cannot copy isolated content from the remote browser to the local clipboard. If this field is absent, copying remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dcp": {
                    "type": "boolean",
                    "description": "Set to false to enable copy-pasting. Only applies when `version == \"v1\"`.\n"
                },
                "dd": {
                    "type": "boolean",
                    "description": "Set to false to enable downloading. Only applies when `version == \"v1\"`.\n"
                },
                "dk": {
                    "type": "boolean",
                    "description": "Set to false to enable keyboard usage. Only applies when `version == \"v1\"`.\n"
                },
                "download": {
                    "type": "string",
                    "description": "Configure download behavior. When set to remote*only, users can view downloads but cannot save them. If this field is absent, downloading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "dp": {
                    "type": "boolean",
                    "description": "Set to false to enable printing. Only applies when `version == \"v1\"`.\n"
                },
                "du": {
                    "type": "boolean",
                    "description": "Set to false to enable uploading. Only applies when `version == \"v1\"`.\n"
                },
                "keyboard": {
                    "type": "string",
                    "description": "Configure keyboard usage behavior. If this field is absent, keyboard usage remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "paste": {
                    "type": "string",
                    "description": "Configure paste behavior. If set to remote*only, users cannot paste content from the local clipboard into isolated pages. If this field is absent, pasting remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\", \"remote*only\".\n"
                },
                "printing": {
                    "type": "string",
                    "description": "Configure print behavior. Default, Printing is enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "upload": {
                    "type": "string",
                    "description": "Configure upload behavior. If this field is absent, uploading remains enabled. Applies only when version == \"v2\".\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "version": {
                    "type": "string",
                    "description": "Indicate which version of the browser isolation controls should apply.\nAvailable values: \"v1\", \"v2\".\n"
                },
                "wmId": {
                    "type": "string",
                    "description": "Specify the watermark ID (UUID) to apply to the isolated browser session. When present, enables watermark rendering in the isolated browser.\n"
                }
            },
            "type": "object",
            "required": [
                "copy",
                "dcp",
                "dd",
                "dk",
                "download",
                "dp",
                "du",
                "keyboard",
                "paste",
                "printing",
                "upload",
                "version",
                "wmId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsBlockPage:getZeroTrustGatewayPolicyRuleSettingsBlockPage": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "includeContext",
                "targetUri"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsCheckSession:getZeroTrustGatewayPolicyRuleSettingsCheckSession": {
            "properties": {
                "duration": {
                    "type": "string",
                    "description": "Sets the required session freshness threshold. The API returns a normalized version of this value.\n"
                },
                "enforce": {
                    "type": "boolean",
                    "description": "Enable session enforcement.\n"
                }
            },
            "type": "object",
            "required": [
                "duration",
                "enforce"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsDnsResolvers:getZeroTrustGatewayPolicyRuleSettingsDnsResolvers": {
            "properties": {
                "ipv4s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4:getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4"
                    }
                },
                "ipv6s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6:getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6"
                    }
                }
            },
            "type": "object",
            "required": [
                "ipv4s",
                "ipv6s"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4:getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv4 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip",
                "port",
                "routeThroughPrivateNetwork",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6:getZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Specify the IPv6 address of the upstream resolver.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.\n"
                },
                "routeThroughPrivateNetwork": {
                    "type": "boolean",
                    "description": "Indicate whether to connect to this resolver over a private network. Must set when\u003cspan pulumi-lang-nodejs=\" vnetId \" pulumi-lang-dotnet=\" VnetId \" pulumi-lang-go=\" vnetId \" pulumi-lang-python=\" vnet_id \" pulumi-lang-yaml=\" vnetId \" pulumi-lang-java=\" vnetId \"\u003e vnetId \u003c/span\u003eset.\n"
                },
                "vnetId": {
                    "type": "string",
                    "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.\n"
                }
            },
            "type": "object",
            "required": [
                "ip",
                "port",
                "routeThroughPrivateNetwork",
                "vnetId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsEgress:getZeroTrustGatewayPolicyRuleSettingsEgress": {
            "properties": {
                "ipv4": {
                    "type": "string",
                    "description": "Specify the IPv4 address to use for egress.\n"
                },
                "ipv4Fallback": {
                    "type": "string",
                    "description": "Specify the fallback IPv4 address to use for egress when the primary IPv4 fails. Set '0.0.0.0' to indicate local egress via WARP IPs.\n"
                },
                "ipv6": {
                    "type": "string",
                    "description": "Specify the IPv6 range to use for egress.\n"
                }
            },
            "type": "object",
            "required": [
                "ipv4",
                "ipv4Fallback",
                "ipv6"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsForensicCopy:getZeroTrustGatewayPolicyRuleSettingsForensicCopy": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable sending the copy to storage.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsL4override:getZeroTrustGatewayPolicyRuleSettingsL4override": {
            "properties": {
                "ip": {
                    "type": "string",
                    "description": "Defines the IPv4 or IPv6 address.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "Defines a port number to use for TCP/UDP overrides.\n"
                }
            },
            "type": "object",
            "required": [
                "ip",
                "port"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsNotificationSettings:getZeroTrustGatewayPolicyRuleSettingsNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable notification.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Indicates whether to pass the context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Customize the message shown in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Defines an optional URL to direct users to additional information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "includeContext",
                "msg",
                "supportUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsPayloadLog:getZeroTrustGatewayPolicyRuleSettingsPayloadLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Enable DLP payload logging for this rule.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsQuarantine:getZeroTrustGatewayPolicyRuleSettingsQuarantine": {
            "properties": {
                "fileTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the types of files to sandbox.\n"
                }
            },
            "type": "object",
            "required": [
                "fileTypes"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsRedirect:getZeroTrustGatewayPolicyRuleSettingsRedirect": {
            "properties": {
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to pass the context information as query parameters.\n"
                },
                "preservePathAndQuery": {
                    "type": "boolean",
                    "description": "Specify whether to append the path and query parameters from the original request to target_uri.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to which the user is redirected.\n"
                }
            },
            "type": "object",
            "required": [
                "includeContext",
                "preservePathAndQuery",
                "targetUri"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally:getZeroTrustGatewayPolicyRuleSettingsResolveDnsInternally": {
            "properties": {
                "fallback": {
                    "type": "string",
                    "description": "Specify the fallback behavior to apply when the internal DNS response code differs from 'NOERROR' or when the response data contains only CNAME records for 'A' or 'AAAA' queries.\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"publicDns\"\" pulumi-lang-dotnet=\"\"PublicDns\"\" pulumi-lang-go=\"\"publicDns\"\" pulumi-lang-python=\"\"public_dns\"\" pulumi-lang-yaml=\"\"publicDns\"\" pulumi-lang-java=\"\"publicDns\"\"\u003e\"publicDns\"\u003c/span\u003e.\n"
                },
                "viewId": {
                    "type": "string",
                    "description": "Specify the internal DNS view identifier to pass to the internal DNS service.\n"
                }
            },
            "type": "object",
            "required": [
                "fallback",
                "viewId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicyRuleSettingsUntrustedCert:getZeroTrustGatewayPolicyRuleSettingsUntrustedCert": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Defines the action performed when an untrusted certificate seen. The default action an error with HTTP code 526.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"passThrough\"\" pulumi-lang-dotnet=\"\"PassThrough\"\" pulumi-lang-go=\"\"passThrough\"\" pulumi-lang-python=\"\"pass_through\"\" pulumi-lang-yaml=\"\"passThrough\"\" pulumi-lang-java=\"\"passThrough\"\"\u003e\"passThrough\"\u003c/span\u003e, \"block\", \"error\".\n"
                }
            },
            "type": "object",
            "required": [
                "action"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicySchedule:getZeroTrustGatewayPolicySchedule": {
            "properties": {
                "fri": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Fridays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Fridays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "mon": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Mondays, in the increasing order from 00:00-24:00(capped at maximum of 6 time splits). If this parameter omitted, the rule is deactivated on Mondays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sat": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Saturdays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Saturdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "sun": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Sundays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Sundays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "thu": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Thursdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Thursdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "Specify the time zone for rule evaluation. When a [valid time zone city name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) is provided, Gateway always uses the current time for that time zone. When this parameter is omitted, Gateway uses the time zone determined from the user's IP address. Colo time zone is used when the user's IP address does not resolve to a location.\n"
                },
                "tue": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Tuesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Tuesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                },
                "wed": {
                    "type": "string",
                    "description": "Specify the time intervals when the rule is active on Wednesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Wednesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.\n"
                }
            },
            "type": "object",
            "required": [
                "fri",
                "mon",
                "sat",
                "sun",
                "thu",
                "timeZone",
                "tue",
                "wed"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewayProxyEndpointsResult:getZeroTrustGatewayProxyEndpointsResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the name of the proxy endpoint.\n"
                },
                "subdomain": {
                    "type": "string",
                    "description": "Specify the subdomain to use as the destination in the proxy client.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "id",
                "ips",
                "kind",
                "name",
                "subdomain",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettings:getZeroTrustGatewaySettingsSettings": {
            "properties": {
                "activityLog": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsActivityLog:getZeroTrustGatewaySettingsSettingsActivityLog",
                    "description": "Specify activity log settings.\n"
                },
                "antivirus": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsAntivirus:getZeroTrustGatewaySettingsSettingsAntivirus",
                    "description": "Specify anti-virus settings.\n"
                },
                "blockPage": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsBlockPage:getZeroTrustGatewaySettingsSettingsBlockPage",
                    "description": "Specify block page layout settings.\n"
                },
                "bodyScanning": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsBodyScanning:getZeroTrustGatewaySettingsSettingsBodyScanning",
                    "description": "Specify the DLP inspection mode.\n"
                },
                "browserIsolation": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsBrowserIsolation:getZeroTrustGatewaySettingsSettingsBrowserIsolation",
                    "description": "Specify Clientless Browser Isolation settings.\n"
                },
                "certificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsCertificate:getZeroTrustGatewaySettingsSettingsCertificate",
                    "description": "Specify certificate settings for Gateway TLS interception. If unset, the Cloudflare Root CA handles interception.\n"
                },
                "customCertificate": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsCustomCertificate:getZeroTrustGatewaySettingsSettingsCustomCertificate",
                    "description": "Specify custom certificate settings for BYO-PKI. This field is deprecated; use \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "extendedEmailMatching": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsExtendedEmailMatching:getZeroTrustGatewaySettingsSettingsExtendedEmailMatching",
                    "description": "Configures user email settings for firewall policies. When you enable this, the system standardizes email addresses in the identity portion of the rule to match extended email variants in firewall policies. When you disable this setting, the system matches email addresses exactly as you provide them. Enable this setting if your email uses `.` or `+` modifiers.\n"
                },
                "fips": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsFips:getZeroTrustGatewaySettingsSettingsFips",
                    "description": "Specify FIPS settings.\n"
                },
                "hostSelector": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsHostSelector:getZeroTrustGatewaySettingsSettingsHostSelector",
                    "description": "Enable host selection in egress policies.\n"
                },
                "inspection": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsInspection:getZeroTrustGatewaySettingsSettingsInspection",
                    "description": "Define the proxy inspection mode.\n"
                },
                "protocolDetection": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsProtocolDetection:getZeroTrustGatewaySettingsSettingsProtocolDetection",
                    "description": "Specify whether to detect protocols from the initial bytes of client traffic.\n"
                },
                "sandbox": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsSandbox:getZeroTrustGatewaySettingsSettingsSandbox",
                    "description": "Specify whether to enable the sandbox.\n"
                },
                "tlsDecrypt": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsTlsDecrypt:getZeroTrustGatewaySettingsSettingsTlsDecrypt",
                    "description": "Specify whether to inspect encrypted HTTP traffic.\n"
                }
            },
            "type": "object",
            "required": [
                "activityLog",
                "antivirus",
                "blockPage",
                "bodyScanning",
                "browserIsolation",
                "certificate",
                "customCertificate",
                "extendedEmailMatching",
                "fips",
                "hostSelector",
                "inspection",
                "protocolDetection",
                "sandbox",
                "tlsDecrypt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsActivityLog:getZeroTrustGatewaySettingsSettingsActivityLog": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to log activity.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsAntivirus:getZeroTrustGatewaySettingsSettingsAntivirus": {
            "properties": {
                "enabledDownloadPhase": {
                    "type": "boolean",
                    "description": "Specify whether to enable anti-virus scanning on downloads.\n"
                },
                "enabledUploadPhase": {
                    "type": "boolean",
                    "description": "Specify whether to enable anti-virus scanning on uploads.\n"
                },
                "failClosed": {
                    "type": "boolean",
                    "description": "Specify whether to block requests for unscannable files.\n"
                },
                "notificationSettings": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings:getZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings",
                    "description": "Configure the message the user's device shows during an antivirus scan.\n"
                }
            },
            "type": "object",
            "required": [
                "enabledDownloadPhase",
                "enabledUploadPhase",
                "failClosed",
                "notificationSettings"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings:getZeroTrustGatewaySettingsSettingsAntivirusNotificationSettings": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable notifications.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to include context information as query parameters.\n"
                },
                "msg": {
                    "type": "string",
                    "description": "Specify the message to show in the notification.\n"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "Specify a URL that directs users to more information. If unset, the notification opens a block page.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "includeContext",
                "msg",
                "supportUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsBlockPage:getZeroTrustGatewaySettingsSettingsBlockPage": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "Specify the block page background color in `#rrggbb` format when the mode is customized*block*page.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable the custom block page.\n"
                },
                "footerText": {
                    "type": "string",
                    "description": "Specify the block page footer text when the mode is customized*block*page.\n"
                },
                "headerText": {
                    "type": "string",
                    "description": "Specify the block page header text when the mode is customized*block*page.\n"
                },
                "includeContext": {
                    "type": "boolean",
                    "description": "Specify whether to append context to target*uri as query parameters. This applies only when the mode is redirect*uri.\n"
                },
                "logoPath": {
                    "type": "string",
                    "description": "Specify the full URL to the logo file when the mode is customized*block*page.\n"
                },
                "mailtoAddress": {
                    "type": "string",
                    "description": "Specify the admin email for users to contact when the mode is customized*block*page.\n"
                },
                "mailtoSubject": {
                    "type": "string",
                    "description": "Specify the subject line for emails created from the block page when the mode is customized*block*page.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Specify whether to redirect users to a Cloudflare-hosted block page or a customer-provided URI.\nAvailable values: \"\", \"customized*block*page\", \u003cspan pulumi-lang-nodejs=\"\"redirectUri\"\" pulumi-lang-dotnet=\"\"RedirectUri\"\" pulumi-lang-go=\"\"redirectUri\"\" pulumi-lang-python=\"\"redirect_uri\"\" pulumi-lang-yaml=\"\"redirectUri\"\" pulumi-lang-java=\"\"redirectUri\"\"\u003e\"redirectUri\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the block page title when the mode is customized*block*page.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Indicate the account tag of the account that shared this setting.\n"
                },
                "suppressFooter": {
                    "type": "boolean",
                    "description": "Specify whether to suppress detailed information at the bottom of the block page when the mode is customized*block*page.\n"
                },
                "targetUri": {
                    "type": "string",
                    "description": "Specify the URI to redirect users to when the mode is redirect_uri.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the setting.\n"
                }
            },
            "type": "object",
            "required": [
                "backgroundColor",
                "enabled",
                "footerText",
                "headerText",
                "includeContext",
                "logoPath",
                "mailtoAddress",
                "mailtoSubject",
                "mode",
                "name",
                "readOnly",
                "sourceAccount",
                "suppressFooter",
                "targetUri",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsBodyScanning:getZeroTrustGatewaySettingsSettingsBodyScanning": {
            "properties": {
                "inspectionMode": {
                    "type": "string",
                    "description": "Specify the inspection mode as either \u003cspan pulumi-lang-nodejs=\"`deep`\" pulumi-lang-dotnet=\"`Deep`\" pulumi-lang-go=\"`deep`\" pulumi-lang-python=\"`deep`\" pulumi-lang-yaml=\"`deep`\" pulumi-lang-java=\"`deep`\"\u003e`deep`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`shallow`\" pulumi-lang-dotnet=\"`Shallow`\" pulumi-lang-go=\"`shallow`\" pulumi-lang-python=\"`shallow`\" pulumi-lang-yaml=\"`shallow`\" pulumi-lang-java=\"`shallow`\"\u003e`shallow`\u003c/span\u003e.\nAvailable values: \"deep\", \"shallow\".\n"
                }
            },
            "type": "object",
            "required": [
                "inspectionMode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsBrowserIsolation:getZeroTrustGatewaySettingsSettingsBrowserIsolation": {
            "properties": {
                "nonIdentityEnabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable non-identity onramp support for Browser Isolation.\n"
                },
                "urlBrowserIsolationEnabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable Clientless Browser Isolation.\n"
                }
            },
            "type": "object",
            "required": [
                "nonIdentityEnabled",
                "urlBrowserIsolationEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsCertificate:getZeroTrustGatewaySettingsSettingsCertificate": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Specify the UUID of the certificate used for interception. Ensure the certificate is available at the edge(previously called 'active'). A nil UUID directs Cloudflare to use the Root CA.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsCustomCertificate:getZeroTrustGatewaySettingsSettingsCustomCertificate": {
            "properties": {
                "bindingStatus": {
                    "type": "string",
                    "description": "Indicate the internal certificate status.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable a custom certificate authority for signing Gateway traffic.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Specify the UUID of the certificate (ID from MTLS certificate store).\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "bindingStatus",
                "enabled",
                "id",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsExtendedEmailMatching:getZeroTrustGatewaySettingsSettingsExtendedEmailMatching": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to match all variants of user emails (with + or . modifiers) used as criteria in Firewall policies.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Indicate the account tag of the account that shared this setting.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the setting.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "readOnly",
                "sourceAccount",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsFips:getZeroTrustGatewaySettingsSettingsFips": {
            "properties": {
                "tls": {
                    "type": "boolean",
                    "description": "Enforce cipher suites and TLS versions compliant with FIPS 140-2.\n"
                }
            },
            "type": "object",
            "required": [
                "tls"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsHostSelector:getZeroTrustGatewaySettingsSettingsHostSelector": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable filtering via hosts for egress policies.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsInspection:getZeroTrustGatewaySettingsSettingsInspection": {
            "properties": {
                "mode": {
                    "type": "string",
                    "description": "Define the proxy inspection mode.   1. static: Gateway applies static inspection to HTTP on TCP(80). With TLS decryption on, Gateway inspects HTTPS traffic on TCP(443) and UDP(443).   2. dynamic: Gateway applies protocol detection to inspect HTTP and HTTPS traffic on any port. TLS decryption must remain on to inspect HTTPS traffic.\nAvailable values: \"static\", \"dynamic\".\n"
                }
            },
            "type": "object",
            "required": [
                "mode"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsProtocolDetection:getZeroTrustGatewaySettingsSettingsProtocolDetection": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to detect protocols from the initial bytes of client traffic.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsSandbox:getZeroTrustGatewaySettingsSettingsSandbox": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to enable the sandbox.\n"
                },
                "fallbackAction": {
                    "type": "string",
                    "description": "Specify the action to take when the system cannot scan the file.\nAvailable values: \"allow\", \"block\".\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "fallbackAction"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettingsSettingsTlsDecrypt:getZeroTrustGatewaySettingsSettingsTlsDecrypt": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether to inspect encrypted HTTP traffic.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustListFilter:getZeroTrustListFilter": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustListItem:getZeroTrustListItem": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list item description (optional).\n"
                },
                "value": {
                    "type": "string",
                    "description": "Specify the item value.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "description",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustListsResult:getZeroTrustListsResult": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list description.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identify the API resource with a UUID.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustListsResultItem:getZeroTrustListsResultItem"
                    },
                    "description": "Provide the list items.\n"
                },
                "listCount": {
                    "type": "number",
                    "description": "Indicate the number of items in the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the list name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "description",
                "id",
                "items",
                "listCount",
                "name",
                "type",
                "updatedAt"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustListsResultItem:getZeroTrustListsResultItem": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list item description (optional).\n"
                },
                "value": {
                    "type": "string",
                    "description": "Specify the item value.\n"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "description",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustNetworkHostnameRouteFilter:getZeroTrustNetworkHostnameRouteFilter": {
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "If set, only list hostname routes with the given comment.\n"
                },
                "existedAt": {
                    "type": "string",
                    "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "If set, only list hostname routes that contain a substring of the given value, the filter is case-insensitive.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The hostname route ID.\n"
                },
                "isDeleted": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only return deleted hostname routes. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted hostname routes.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "If set, only list hostname routes that point to a specific tunnel.\n"
                }
            },
            "type": "object",
            "required": [
                "isDeleted"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustNetworkHostnameRoutesResult:getZeroTrustNetworkHostnameRoutesResult": {
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "An optional description of the hostname route.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the route.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The hostname route ID.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "tunnelName": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                }
            },
            "type": "object",
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "hostname",
                "id",
                "tunnelId",
                "tunnelName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustOrganizationCustomPages:getZeroTrustOrganizationCustomPages": {
            "properties": {
                "forbidden": {
                    "type": "string",
                    "description": "The uid of the custom page to use when a user is denied access after failing a non-identity rule.\n"
                },
                "identityDenied": {
                    "type": "string",
                    "description": "The uid of the custom page to use when a user is denied access.\n"
                }
            },
            "type": "object",
            "required": [
                "forbidden",
                "identityDenied"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustOrganizationLoginDesign:getZeroTrustOrganizationLoginDesign": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color on your login page.\n"
                },
                "footerText": {
                    "type": "string",
                    "description": "The text at the bottom of your login page.\n"
                },
                "headerText": {
                    "type": "string",
                    "description": "The text at the top of your login page.\n"
                },
                "logoPath": {
                    "type": "string",
                    "description": "The URL of the logo on your login page.\n"
                },
                "textColor": {
                    "type": "string",
                    "description": "The text color on your login page.\n"
                }
            },
            "type": "object",
            "required": [
                "backgroundColor",
                "footerText",
                "headerText",
                "logoPath",
                "textColor"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustOrganizationMfaConfig:getZeroTrustOrganizationMfaConfig": {
            "properties": {
                "allowedAuthenticators": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the MFA methods that users can authenticate with.\n"
                },
                "amrMatchingSessionDuration": {
                    "type": "string",
                    "description": "Allows a user to skip MFA via Authentication Method Reference (AMR) matching when the AMR claim provided by the IdP the user used to authenticate contains \"mfa\". Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days).\n"
                },
                "requiredAaguids": {
                    "type": "string",
                    "description": "Specifies a Cloudflare List of required FIDO2 authenticator device AAGUIDs.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:\u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`24h`\" pulumi-lang-dotnet=\"`24h`\" pulumi-lang-go=\"`24h`\" pulumi-lang-python=\"`24h`\" pulumi-lang-yaml=\"`24h`\" pulumi-lang-java=\"`24h`\"\u003e`24h`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "allowedAuthenticators",
                "amrMatchingSessionDuration",
                "requiredAaguids",
                "sessionDuration"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustOrganizationMfaSshPivKeyRequirements:getZeroTrustOrganizationMfaSshPivKeyRequirements": {
            "properties": {
                "pinPolicy": {
                    "type": "string",
                    "description": "Defines when a PIN is required to use the SSH key. Valid values: \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e (no PIN required), \u003cspan pulumi-lang-nodejs=\"`once`\" pulumi-lang-dotnet=\"`Once`\" pulumi-lang-go=\"`once`\" pulumi-lang-python=\"`once`\" pulumi-lang-yaml=\"`once`\" pulumi-lang-java=\"`once`\"\u003e`once`\u003c/span\u003e (PIN required once per session), \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e (PIN required for each use).\nAvailable values: \"never\", \"once\", \"always\".\n"
                },
                "requireFipsDevice": {
                    "type": "boolean",
                    "description": "Requires the SSH PIV key to be stored on a FIPS 140-2 Level 1 or higher validated device.\n"
                },
                "sshKeySizes": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "Specifies the allowed SSH key sizes in bits. Valid sizes depend on key type. Ed25519 has a fixed key size and does not accept this parameter.\n"
                },
                "sshKeyTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies the allowed SSH key types. Valid values are \u003cspan pulumi-lang-nodejs=\"`ecdsa`\" pulumi-lang-dotnet=\"`Ecdsa`\" pulumi-lang-go=\"`ecdsa`\" pulumi-lang-python=\"`ecdsa`\" pulumi-lang-yaml=\"`ecdsa`\" pulumi-lang-java=\"`ecdsa`\"\u003e`ecdsa`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ed25519`\" pulumi-lang-dotnet=\"`Ed25519`\" pulumi-lang-go=\"`ed25519`\" pulumi-lang-python=\"`ed25519`\" pulumi-lang-yaml=\"`ed25519`\" pulumi-lang-java=\"`ed25519`\"\u003e`ed25519`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`rsa`\" pulumi-lang-dotnet=\"`Rsa`\" pulumi-lang-go=\"`rsa`\" pulumi-lang-python=\"`rsa`\" pulumi-lang-yaml=\"`rsa`\" pulumi-lang-java=\"`rsa`\"\u003e`rsa`\u003c/span\u003e.\n"
                },
                "touchPolicy": {
                    "type": "string",
                    "description": "Defines when physical touch is required to use the SSH key. Valid values: \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e (no touch required), \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e (touch required for each use), \u003cspan pulumi-lang-nodejs=\"`cached`\" pulumi-lang-dotnet=\"`Cached`\" pulumi-lang-go=\"`cached`\" pulumi-lang-python=\"`cached`\" pulumi-lang-yaml=\"`cached`\" pulumi-lang-java=\"`cached`\"\u003e`cached`\u003c/span\u003e (touch cached for 15 seconds).\nAvailable values: \"never\", \"always\", \"cached\".\n"
                }
            },
            "type": "object",
            "required": [
                "pinPolicy",
                "requireFipsDevice",
                "sshKeySizes",
                "sshKeyTypes",
                "touchPolicy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustRiskBehaviorBehaviors:getZeroTrustRiskBehaviorBehaviors": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "riskLevel": {
                    "type": "string",
                    "description": "Available values: \"low\", \"medium\", \"high\".\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "name",
                "riskLevel"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustRiskScoringIntegrationsResult:getZeroTrustRiskScoringIntegrationsResult": {
            "properties": {
                "accountTag": {
                    "type": "string",
                    "description": "The Cloudflare account tag.\n"
                },
                "active": {
                    "type": "boolean",
                    "description": "Whether this integration is enabled and should export changes in risk score.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "When the integration was created in RFC3339 format.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The id of the integration, a UUIDv4.\n"
                },
                "integrationType": {
                    "type": "string",
                    "description": "Available values: \"Okta\".\n"
                },
                "referenceId": {
                    "type": "string",
                    "description": "A reference ID defined by the client.\nShould be set to the Access-Okta IDP integration ID.\nUseful when the risk-score integration needs to be associated with a secondary asset and recalled using that ID.\n"
                },
                "tenantUrl": {
                    "type": "string",
                    "description": "The base URL for the tenant. E.g. \"https://tenant.okta.com\".\n"
                },
                "wellKnownUrl": {
                    "type": "string",
                    "description": "The URL for the Shared Signals Framework configuration, e.g. \"/.well-known/sse-configuration/{integration*uuid}/\". https://openid.net/specs/openid-sse-framework-1*0.html#rfc.section.6.2.1.\n"
                }
            },
            "type": "object",
            "required": [
                "accountTag",
                "active",
                "createdAt",
                "id",
                "integrationType",
                "referenceId",
                "tenantUrl",
                "wellKnownUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfig:getZeroTrustTunnelCloudflaredConfigConfig": {
            "properties": {
                "ingresses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigIngress:getZeroTrustTunnelCloudflaredConfigConfigIngress"
                    },
                    "description": "List of public hostname definitions. At least one ingress rule needs to be defined for the tunnel.\n"
                },
                "originRequest": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigOriginRequest:getZeroTrustTunnelCloudflaredConfigConfigOriginRequest",
                    "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server.\n"
                }
            },
            "type": "object",
            "required": [
                "ingresses",
                "originRequest"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigIngress:getZeroTrustTunnelCloudflaredConfigConfigIngress": {
            "properties": {
                "hostname": {
                    "type": "string",
                    "description": "Public hostname for this service.\n"
                },
                "originRequest": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest:getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest",
                    "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Requests with this path route to this public hostname.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Protocol and address of destination server. Supported protocols: http://, https://, unix://, tcp://, ssh://, rdp://, unix+tls://, smb://. Alternatively can return a HTTP status code http*status:[code] e.g. 'http*status:404'.\n"
                }
            },
            "type": "object",
            "required": [
                "hostname",
                "originRequest",
                "path",
                "service"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest:getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequest": {
            "properties": {
                "access": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess:getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess",
                    "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header.\n"
                },
                "caPool": {
                    "type": "string",
                    "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare.\n"
                },
                "connectTimeout": {
                    "type": "integer",
                    "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout.\n"
                },
                "disableChunkedEncoding": {
                    "type": "boolean",
                    "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server.\n"
                },
                "http2Origin": {
                    "type": "boolean",
                    "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https.\n"
                },
                "httpHostHeader": {
                    "type": "string",
                    "description": "Sets the HTTP Host header on requests sent to the local service.\n"
                },
                "keepAliveConnections": {
                    "type": "integer",
                    "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections.\n"
                },
                "keepAliveTimeout": {
                    "type": "integer",
                    "description": "Timeout after which an idle keepalive connection can be discarded.\n"
                },
                "matchSnItoHost": {
                    "type": "boolean",
                    "description": "Auto configure the Hostname on the origin server certificate.\n"
                },
                "noHappyEyeballs": {
                    "type": "boolean",
                    "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols.\n"
                },
                "noTlsVerify": {
                    "type": "boolean",
                    "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted.\n"
                },
                "originServerName": {
                    "type": "string",
                    "description": "Hostname that cloudflared should expect from your origin server certificate.\n"
                },
                "proxyType": {
                    "type": "string",
                    "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
                },
                "tcpKeepAlive": {
                    "type": "integer",
                    "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server.\n"
                },
                "tlsTimeout": {
                    "type": "integer",
                    "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "caPool",
                "connectTimeout",
                "disableChunkedEncoding",
                "http2Origin",
                "httpHostHeader",
                "keepAliveConnections",
                "keepAliveTimeout",
                "matchSnItoHost",
                "noHappyEyeballs",
                "noTlsVerify",
                "originServerName",
                "proxyType",
                "tcpKeepAlive",
                "tlsTimeout"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess:getZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccess": {
            "properties": {
                "audTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "Deny traffic that has not fulfilled Access authorization.\n"
                },
                "teamName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "audTags",
                "required",
                "teamName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigOriginRequest:getZeroTrustTunnelCloudflaredConfigConfigOriginRequest": {
            "properties": {
                "access": {
                    "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess:getZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess",
                    "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header.\n"
                },
                "caPool": {
                    "type": "string",
                    "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare.\n"
                },
                "connectTimeout": {
                    "type": "integer",
                    "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout.\n"
                },
                "disableChunkedEncoding": {
                    "type": "boolean",
                    "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server.\n"
                },
                "http2Origin": {
                    "type": "boolean",
                    "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https.\n"
                },
                "httpHostHeader": {
                    "type": "string",
                    "description": "Sets the HTTP Host header on requests sent to the local service.\n"
                },
                "keepAliveConnections": {
                    "type": "integer",
                    "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections.\n"
                },
                "keepAliveTimeout": {
                    "type": "integer",
                    "description": "Timeout after which an idle keepalive connection can be discarded.\n"
                },
                "matchSnItoHost": {
                    "type": "boolean",
                    "description": "Auto configure the Hostname on the origin server certificate.\n"
                },
                "noHappyEyeballs": {
                    "type": "boolean",
                    "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols.\n"
                },
                "noTlsVerify": {
                    "type": "boolean",
                    "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted.\n"
                },
                "originServerName": {
                    "type": "string",
                    "description": "Hostname that cloudflared should expect from your origin server certificate.\n"
                },
                "proxyType": {
                    "type": "string",
                    "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
                },
                "tcpKeepAlive": {
                    "type": "integer",
                    "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server.\n"
                },
                "tlsTimeout": {
                    "type": "integer",
                    "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server.\n"
                }
            },
            "type": "object",
            "required": [
                "access",
                "caPool",
                "connectTimeout",
                "disableChunkedEncoding",
                "http2Origin",
                "httpHostHeader",
                "keepAliveConnections",
                "keepAliveTimeout",
                "matchSnItoHost",
                "noHappyEyeballs",
                "noTlsVerify",
                "originServerName",
                "proxyType",
                "tcpKeepAlive",
                "tlsTimeout"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess:getZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccess": {
            "properties": {
                "audTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API.\n"
                },
                "required": {
                    "type": "boolean",
                    "description": "Deny traffic that has not fulfilled Access authorization.\n"
                },
                "teamName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "audTags",
                "required",
                "teamName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConnection:getZeroTrustTunnelCloudflaredConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "clientVersion",
                "coloName",
                "id",
                "isPendingReconnect",
                "openedAt",
                "originIp",
                "uuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredFilter:getZeroTrustTunnelCloudflaredFilter": {
            "properties": {
                "excludePrefix": {
                    "type": "string"
                },
                "existedAt": {
                    "type": "string",
                    "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                },
                "includePrefix": {
                    "type": "string"
                },
                "isDeleted": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted tunnels. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted tunnels. If empty, all tunnels will be included.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "wasActiveAt": {
                    "type": "string"
                },
                "wasInactiveAt": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredRouteFilter:getZeroTrustTunnelCloudflaredRouteFilter": {
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the route.\n"
                },
                "existedAt": {
                    "type": "string",
                    "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                },
                "isDeleted": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted routes. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted routes. If empty, all routes will be included.\n"
                },
                "networkSubset": {
                    "type": "string",
                    "description": "If set, only list routes that are contained within this IP range.\n"
                },
                "networkSuperset": {
                    "type": "string",
                    "description": "If set, only list routes that contain this IP range.\n"
                },
                "tunTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The types of tunnels to filter by, separated by commas.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                }
            },
            "type": "object",
            "required": [
                "comment"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredRoutesResult:getZeroTrustTunnelCloudflaredRoutesResult": {
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the route.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the route.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                },
                "tunType": {
                    "type": "string",
                    "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "tunnelName": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                },
                "virtualNetworkName": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "type": "object",
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "id",
                "network",
                "tunType",
                "tunnelId",
                "tunnelName",
                "virtualNetworkId",
                "virtualNetworkName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetworkFilter:getZeroTrustTunnelCloudflaredVirtualNetworkFilter": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include the default virtual network. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude the default virtual network. If empty, all virtual networks will be included.\n"
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include the default virtual network. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude the default virtual network. If empty, all virtual networks will be included.\n"
                },
                "isDeleted": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted virtual networks. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted virtual networks. If empty, all virtual networks will be included.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetworksResult:getZeroTrustTunnelCloudflaredVirtualNetworksResult": {
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the virtual network.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "type": "object",
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "id",
                "isDefaultNetwork",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredsResult:getZeroTrustTunnelCloudflaredsResult": {
            "properties": {
                "accountTag": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "configSrc": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "connections": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredsResultConnection:getZeroTrustTunnelCloudflaredsResultConnection"
                    },
                    "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                    "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                },
                "connsActiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                },
                "connsInactiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Metadata associated with the tunnel.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "remoteConfig": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can be configured remotely from the Zero Trust dashboard. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tunnel must be configured locally on the origin machine.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" configSrc \" pulumi-lang-dotnet=\" ConfigSrc \" pulumi-lang-go=\" configSrc \" pulumi-lang-python=\" config_src \" pulumi-lang-yaml=\" configSrc \" pulumi-lang-java=\" configSrc \"\u003e configSrc \u003c/span\u003efield instead."
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "tunType": {
                    "type": "string",
                    "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                }
            },
            "type": "object",
            "required": [
                "accountTag",
                "configSrc",
                "connections",
                "connsActiveAt",
                "connsInactiveAt",
                "createdAt",
                "deletedAt",
                "id",
                "metadata",
                "name",
                "remoteConfig",
                "status",
                "tunType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredsResultConnection:getZeroTrustTunnelCloudflaredsResultConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "clientVersion",
                "coloName",
                "id",
                "isPendingReconnect",
                "openedAt",
                "originIp",
                "uuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnectorConnection:getZeroTrustTunnelWarpConnectorConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "clientVersion",
                "coloName",
                "id",
                "isPendingReconnect",
                "openedAt",
                "originIp",
                "uuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnectorFilter:getZeroTrustTunnelWarpConnectorFilter": {
            "properties": {
                "excludePrefix": {
                    "type": "string"
                },
                "existedAt": {
                    "type": "string",
                    "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                },
                "includePrefix": {
                    "type": "string"
                },
                "isDeleted": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted tunnels. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted tunnels. If empty, all tunnels will be included.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the tunnel.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "wasActiveAt": {
                    "type": "string"
                },
                "wasInactiveAt": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnectorsResult:getZeroTrustTunnelWarpConnectorsResult": {
            "properties": {
                "accountTag": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "connections": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelWarpConnectorsResultConnection:getZeroTrustTunnelWarpConnectorsResultConnection"
                    },
                    "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                    "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                },
                "connsActiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                },
                "connsInactiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Metadata associated with the tunnel.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "tunType": {
                    "type": "string",
                    "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                }
            },
            "type": "object",
            "required": [
                "accountTag",
                "connections",
                "connsActiveAt",
                "connsInactiveAt",
                "createdAt",
                "deletedAt",
                "id",
                "metadata",
                "name",
                "status",
                "tunType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnectorsResultConnection:getZeroTrustTunnelWarpConnectorsResultConnection": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connector.\n"
                },
                "clientVersion": {
                    "type": "string",
                    "description": "The cloudflared version used to establish this connection.\n"
                },
                "coloName": {
                    "type": "string",
                    "description": "The Cloudflare data center used for this connection.\n"
                },
                "id": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                },
                "isPendingReconnect": {
                    "type": "boolean",
                    "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the connection has disconnected but is still being tracked. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the connection is actively serving traffic.\n"
                },
                "openedAt": {
                    "type": "string",
                    "description": "Timestamp of when the connection was established.\n"
                },
                "originIp": {
                    "type": "string",
                    "description": "The public IP address of the host running cloudflared.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "UUID of the Cloudflare Tunnel connection.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "clientVersion",
                "coloName",
                "id",
                "isPendingReconnect",
                "openedAt",
                "originIp",
                "uuid"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneAccount:getZoneAccount": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the account.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneCacheVariantsValue:getZoneCacheVariantsValue": {
            "properties": {
                "avifs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for avif.\n"
                },
                "bmps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for bmp.\n"
                },
                "gifs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for gif.\n"
                },
                "jp2s": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jp2.\n"
                },
                "jpegs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jpeg.\n"
                },
                "jpg2s": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jpg2.\n"
                },
                "jpgs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for jpg.\n"
                },
                "pngs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for png.\n"
                },
                "tiffs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for tiff.\n"
                },
                "tifs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for tif.\n"
                },
                "webps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of strings with the MIME types of all the variants that should be served for webp.\n"
                }
            },
            "type": "object",
            "required": [
                "avifs",
                "bmps",
                "gifs",
                "jp2s",
                "jpegs",
                "jpgs",
                "jpg2s",
                "pngs",
                "tifs",
                "tiffs",
                "webps"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneDnsSettingsInternalDns:getZoneDnsSettingsInternalDns": {
            "properties": {
                "referenceZoneId": {
                    "type": "string",
                    "description": "The ID of the zone to fallback to.\n"
                }
            },
            "type": "object",
            "required": [
                "referenceZoneId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneDnsSettingsNameservers:getZoneDnsSettingsNameservers": {
            "properties": {
                "nsSet": {
                    "type": "integer",
                    "description": "Configured nameserver set to be used for this zone\n"
                },
                "type": {
                    "type": "string",
                    "description": "Nameserver type\nAvailable values: \"cloudflare.standard\", \"custom.account\", \"custom.tenant\", \"custom.zone\".\n"
                }
            },
            "type": "object",
            "required": [
                "nsSet",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneDnsSettingsSoa:getZoneDnsSettingsSoa": {
            "properties": {
                "expire": {
                    "type": "number",
                    "description": "Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.\n"
                },
                "minTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) for negative caching of records within the zone.\n"
                },
                "mname": {
                    "type": "string",
                    "description": "The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.\n"
                },
                "refresh": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.\n"
                },
                "retry": {
                    "type": "number",
                    "description": "Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.\n"
                },
                "rname": {
                    "type": "string",
                    "description": "The email address of the zone administrator, with the first label representing the local part of the email address.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the SOA record itself.\n"
                }
            },
            "type": "object",
            "required": [
                "expire",
                "minTtl",
                "mname",
                "refresh",
                "retry",
                "rname",
                "ttl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneFilter:getZoneFilter": {
            "properties": {
                "account": {
                    "$ref": "#/types/cloudflare:index/getZoneFilterAccount:getZoneFilterAccount"
                },
                "direction": {
                    "type": "string",
                    "description": "Direction to order zones.\nAvailable values: \"asc\", \"desc\".\n"
                },
                "match": {
                    "type": "string",
                    "description": "Whether to match all search requirements or at least one (any).\nAvailable values: \"any\", \"all\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "A domain name. Optional filter operators can be provided to extend refine the search:\n  * \u003cspan pulumi-lang-nodejs=\"`equal`\" pulumi-lang-dotnet=\"`Equal`\" pulumi-lang-go=\"`equal`\" pulumi-lang-python=\"`equal`\" pulumi-lang-yaml=\"`equal`\" pulumi-lang-java=\"`equal`\"\u003e`equal`\u003c/span\u003e (default)\n  * \u003cspan pulumi-lang-nodejs=\"`notEqual`\" pulumi-lang-dotnet=\"`NotEqual`\" pulumi-lang-go=\"`notEqual`\" pulumi-lang-python=\"`not_equal`\" pulumi-lang-yaml=\"`notEqual`\" pulumi-lang-java=\"`notEqual`\"\u003e`notEqual`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`startsWith`\" pulumi-lang-dotnet=\"`StartsWith`\" pulumi-lang-go=\"`startsWith`\" pulumi-lang-python=\"`starts_with`\" pulumi-lang-yaml=\"`startsWith`\" pulumi-lang-java=\"`startsWith`\"\u003e`startsWith`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`endsWith`\" pulumi-lang-dotnet=\"`EndsWith`\" pulumi-lang-go=\"`endsWith`\" pulumi-lang-python=\"`ends_with`\" pulumi-lang-yaml=\"`endsWith`\" pulumi-lang-java=\"`endsWith`\"\u003e`endsWith`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`startsWithCaseSensitive`\" pulumi-lang-dotnet=\"`StartsWithCaseSensitive`\" pulumi-lang-go=\"`startsWithCaseSensitive`\" pulumi-lang-python=\"`starts_with_case_sensitive`\" pulumi-lang-yaml=\"`startsWithCaseSensitive`\" pulumi-lang-java=\"`startsWithCaseSensitive`\"\u003e`startsWithCaseSensitive`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`endsWithCaseSensitive`\" pulumi-lang-dotnet=\"`EndsWithCaseSensitive`\" pulumi-lang-go=\"`endsWithCaseSensitive`\" pulumi-lang-python=\"`ends_with_case_sensitive`\" pulumi-lang-yaml=\"`endsWithCaseSensitive`\" pulumi-lang-java=\"`endsWithCaseSensitive`\"\u003e`endsWithCaseSensitive`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`containsCaseSensitive`\" pulumi-lang-dotnet=\"`ContainsCaseSensitive`\" pulumi-lang-go=\"`containsCaseSensitive`\" pulumi-lang-python=\"`contains_case_sensitive`\" pulumi-lang-yaml=\"`containsCaseSensitive`\" pulumi-lang-java=\"`containsCaseSensitive`\"\u003e`containsCaseSensitive`\u003c/span\u003e\n"
                },
                "order": {
                    "type": "string",
                    "description": "Field to order zones by.\nAvailable values: \"name\", \"status\", \"account.id\", \"account.name\", \"plan.id\".\n"
                },
                "status": {
                    "type": "string",
                    "description": "Specify a zone status to filter by.\nAvailable values: \"initializing\", \"pending\", \"active\", \"moved\".\n"
                }
            },
            "type": "object",
            "required": [
                "match"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneFilterAccount:getZoneFilterAccount": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Filter by an account ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "An account Name. Optional filter operators can be provided to extend refine the search:\n  * \u003cspan pulumi-lang-nodejs=\"`equal`\" pulumi-lang-dotnet=\"`Equal`\" pulumi-lang-go=\"`equal`\" pulumi-lang-python=\"`equal`\" pulumi-lang-yaml=\"`equal`\" pulumi-lang-java=\"`equal`\"\u003e`equal`\u003c/span\u003e (default)\n  * \u003cspan pulumi-lang-nodejs=\"`notEqual`\" pulumi-lang-dotnet=\"`NotEqual`\" pulumi-lang-go=\"`notEqual`\" pulumi-lang-python=\"`not_equal`\" pulumi-lang-yaml=\"`notEqual`\" pulumi-lang-java=\"`notEqual`\"\u003e`notEqual`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`startsWith`\" pulumi-lang-dotnet=\"`StartsWith`\" pulumi-lang-go=\"`startsWith`\" pulumi-lang-python=\"`starts_with`\" pulumi-lang-yaml=\"`startsWith`\" pulumi-lang-java=\"`startsWith`\"\u003e`startsWith`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`endsWith`\" pulumi-lang-dotnet=\"`EndsWith`\" pulumi-lang-go=\"`endsWith`\" pulumi-lang-python=\"`ends_with`\" pulumi-lang-yaml=\"`endsWith`\" pulumi-lang-java=\"`endsWith`\"\u003e`endsWith`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`startsWithCaseSensitive`\" pulumi-lang-dotnet=\"`StartsWithCaseSensitive`\" pulumi-lang-go=\"`startsWithCaseSensitive`\" pulumi-lang-python=\"`starts_with_case_sensitive`\" pulumi-lang-yaml=\"`startsWithCaseSensitive`\" pulumi-lang-java=\"`startsWithCaseSensitive`\"\u003e`startsWithCaseSensitive`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`endsWithCaseSensitive`\" pulumi-lang-dotnet=\"`EndsWithCaseSensitive`\" pulumi-lang-go=\"`endsWithCaseSensitive`\" pulumi-lang-python=\"`ends_with_case_sensitive`\" pulumi-lang-yaml=\"`endsWithCaseSensitive`\" pulumi-lang-java=\"`endsWithCaseSensitive`\"\u003e`endsWithCaseSensitive`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`containsCaseSensitive`\" pulumi-lang-dotnet=\"`ContainsCaseSensitive`\" pulumi-lang-go=\"`containsCaseSensitive`\" pulumi-lang-python=\"`contains_case_sensitive`\" pulumi-lang-yaml=\"`containsCaseSensitive`\" pulumi-lang-java=\"`containsCaseSensitive`\"\u003e`containsCaseSensitive`\u003c/span\u003e\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZoneLockdownConfiguration:getZoneLockdownConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e when specifying an IP address in the Zone Lockdown rule.\nAvailable values: \"ip\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The IP address to match. This address will be compared to the IP address of incoming requests.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneLockdownFilter:getZoneLockdownFilter": {
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A string to search for in the description of existing rules.\n"
                },
                "descriptionSearch": {
                    "type": "string",
                    "description": "A string to search for in the description of existing rules.\n"
                },
                "ip": {
                    "type": "string",
                    "description": "A single IP address to search for in existing rules.\n"
                },
                "ipRangeSearch": {
                    "type": "string",
                    "description": "A single IP address range to search for in existing rules.\n"
                },
                "ipSearch": {
                    "type": "string",
                    "description": "A single IP address to search for in existing rules.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was last modified.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.\n"
                },
                "uriSearch": {
                    "type": "string",
                    "description": "A single URI to search for in the list of URLs of existing rules.\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZoneLockdownsResult:getZoneLockdownsResult": {
            "properties": {
                "configurations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/getZoneLockdownsResultConfiguration:getZoneLockdownsResultConfiguration"
                    },
                    "description": "A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ipRange`\" pulumi-lang-dotnet=\"`IpRange`\" pulumi-lang-go=\"`ipRange`\" pulumi-lang-python=\"`ip_range`\" pulumi-lang-yaml=\"`ipRange`\" pulumi-lang-java=\"`ipRange`\"\u003e`ipRange`\u003c/span\u003e configurations.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier of the Zone Lockdown rule.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was last modified.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                },
                "urls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The URLs to include in the rule definition. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.\n"
                }
            },
            "type": "object",
            "required": [
                "configurations",
                "createdOn",
                "description",
                "id",
                "modifiedOn",
                "paused",
                "urls"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneLockdownsResultConfiguration:getZoneLockdownsResultConfiguration": {
            "properties": {
                "target": {
                    "type": "string",
                    "description": "The configuration target. You must set the target to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e when specifying an IP address in the Zone Lockdown rule.\nAvailable values: \"ip\", \u003cspan pulumi-lang-nodejs=\"\"ipRange\"\" pulumi-lang-dotnet=\"\"IpRange\"\" pulumi-lang-go=\"\"ipRange\"\" pulumi-lang-python=\"\"ip_range\"\" pulumi-lang-yaml=\"\"ipRange\"\" pulumi-lang-java=\"\"ipRange\"\"\u003e\"ipRange\"\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The IP address to match. This address will be compared to the IP address of incoming requests.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneMeta:getZoneMeta": {
            "properties": {
                "cdnOnly": {
                    "type": "boolean",
                    "description": "The zone is only configured for CDN.\n"
                },
                "customCertificateQuota": {
                    "type": "integer",
                    "description": "Number of Custom Certificates the zone can have.\n"
                },
                "dnsOnly": {
                    "type": "boolean",
                    "description": "The zone is only configured for DNS.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "The zone is setup with Foundation DNS.\n"
                },
                "pageRuleQuota": {
                    "type": "integer",
                    "description": "Number of Page Rules a zone can have.\n"
                },
                "phishingDetected": {
                    "type": "boolean",
                    "description": "The zone has been flagged for phishing.\n"
                },
                "step": {
                    "type": "integer"
                }
            },
            "type": "object",
            "required": [
                "cdnOnly",
                "customCertificateQuota",
                "dnsOnly",
                "foundationDns",
                "pageRuleQuota",
                "phishingDetected",
                "step"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneOwner:getZoneOwner": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the owner.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of owner.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonePlan:getZonePlan": {
            "properties": {
                "canSubscribe": {
                    "type": "boolean",
                    "description": "States if the subscription can be activated.\n"
                },
                "currency": {
                    "type": "string",
                    "description": "The denomination of the customer.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "If this Zone is managed by another company.\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "How often the customer is billed.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "isSubscribed": {
                    "type": "boolean",
                    "description": "States if the subscription active.\n"
                },
                "legacyDiscount": {
                    "type": "boolean",
                    "description": "If the legacy discount applies to this Zone.\n"
                },
                "legacyId": {
                    "type": "string",
                    "description": "The legacy name of the plan.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the owner.\n"
                },
                "price": {
                    "type": "number",
                    "description": "How much the customer is paying.\n"
                }
            },
            "type": "object",
            "required": [
                "canSubscribe",
                "currency",
                "externallyManaged",
                "frequency",
                "id",
                "isSubscribed",
                "legacyDiscount",
                "legacyId",
                "name",
                "price"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneSubscriptionRatePlan:getZoneSubscriptionRatePlan": {
            "properties": {
                "currency": {
                    "type": "string",
                    "description": "The currency applied to the rate plan subscription.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "Whether this rate plan is managed externally from Cloudflare.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the rate plan.\nAvailable values: \"free\", \"lite\", \"pro\", \"pro*plus\", \"business\", \"enterprise\", \"partners*free\", \"partners*pro\", \"partners*business\", \"partners*enterprise\", \"partners*ent\".\n"
                },
                "isContract": {
                    "type": "boolean",
                    "description": "Whether a rate plan is enterprise-based (or newly adopted term contract).\n"
                },
                "publicName": {
                    "type": "string",
                    "description": "The full name of the rate plan.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope that this rate plan applies to.\n"
                },
                "sets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of sets this rate plan applies to. Returns array of strings.\n"
                }
            },
            "type": "object",
            "required": [
                "currency",
                "externallyManaged",
                "id",
                "isContract",
                "publicName",
                "scope",
                "sets"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneTenant:getZoneTenant": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Tenant account.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZoneTenantUnit:getZoneTenantUnit": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesAccount:getZonesAccount": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Filter by an account ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "An account Name. Optional filter operators can be provided to extend refine the search:\n  * \u003cspan pulumi-lang-nodejs=\"`equal`\" pulumi-lang-dotnet=\"`Equal`\" pulumi-lang-go=\"`equal`\" pulumi-lang-python=\"`equal`\" pulumi-lang-yaml=\"`equal`\" pulumi-lang-java=\"`equal`\"\u003e`equal`\u003c/span\u003e (default)\n  * \u003cspan pulumi-lang-nodejs=\"`notEqual`\" pulumi-lang-dotnet=\"`NotEqual`\" pulumi-lang-go=\"`notEqual`\" pulumi-lang-python=\"`not_equal`\" pulumi-lang-yaml=\"`notEqual`\" pulumi-lang-java=\"`notEqual`\"\u003e`notEqual`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`startsWith`\" pulumi-lang-dotnet=\"`StartsWith`\" pulumi-lang-go=\"`startsWith`\" pulumi-lang-python=\"`starts_with`\" pulumi-lang-yaml=\"`startsWith`\" pulumi-lang-java=\"`startsWith`\"\u003e`startsWith`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`endsWith`\" pulumi-lang-dotnet=\"`EndsWith`\" pulumi-lang-go=\"`endsWith`\" pulumi-lang-python=\"`ends_with`\" pulumi-lang-yaml=\"`endsWith`\" pulumi-lang-java=\"`endsWith`\"\u003e`endsWith`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`startsWithCaseSensitive`\" pulumi-lang-dotnet=\"`StartsWithCaseSensitive`\" pulumi-lang-go=\"`startsWithCaseSensitive`\" pulumi-lang-python=\"`starts_with_case_sensitive`\" pulumi-lang-yaml=\"`startsWithCaseSensitive`\" pulumi-lang-java=\"`startsWithCaseSensitive`\"\u003e`startsWithCaseSensitive`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`endsWithCaseSensitive`\" pulumi-lang-dotnet=\"`EndsWithCaseSensitive`\" pulumi-lang-go=\"`endsWithCaseSensitive`\" pulumi-lang-python=\"`ends_with_case_sensitive`\" pulumi-lang-yaml=\"`endsWithCaseSensitive`\" pulumi-lang-java=\"`endsWithCaseSensitive`\"\u003e`endsWithCaseSensitive`\u003c/span\u003e\n  * \u003cspan pulumi-lang-nodejs=\"`containsCaseSensitive`\" pulumi-lang-dotnet=\"`ContainsCaseSensitive`\" pulumi-lang-go=\"`containsCaseSensitive`\" pulumi-lang-python=\"`contains_case_sensitive`\" pulumi-lang-yaml=\"`containsCaseSensitive`\" pulumi-lang-java=\"`containsCaseSensitive`\"\u003e`containsCaseSensitive`\u003c/span\u003e\n"
                }
            },
            "type": "object"
        },
        "cloudflare:index/getZonesResult:getZonesResult": {
            "properties": {
                "account": {
                    "$ref": "#/types/cloudflare:index/getZonesResultAccount:getZonesResultAccount",
                    "description": "The account the zone belongs to.\n"
                },
                "activatedOn": {
                    "type": "string",
                    "description": "The last time proof of ownership was detected and the zone was made\nactive.\n"
                },
                "cnameSuffix": {
                    "type": "string",
                    "description": "Allows the customer to use a custom apex.\n*Tenants Only Configuration*.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the zone was created.\n"
                },
                "developmentMode": {
                    "type": "number",
                    "description": "The interval (in seconds) from when development mode expires\n(positive integer) or last expired (negative integer) for the\ndomain. If development mode has never been enabled, this value is 0.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/getZonesResultMeta:getZonesResultMeta",
                    "description": "Metadata about the zone.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the zone was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The domain name. Per [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4) the overall zone name can be up to 253 characters, with each segment (\"label\") not exceeding 63 characters.\n"
                },
                "nameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The name servers Cloudflare assigns to a zone.\n"
                },
                "originalDnshost": {
                    "type": "string",
                    "description": "DNS host at the time of switching to Cloudflare.\n"
                },
                "originalNameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Original name servers before moving to Cloudflare.\n"
                },
                "originalRegistrar": {
                    "type": "string",
                    "description": "Registrar for the domain at the time of switching to Cloudflare.\n"
                },
                "owner": {
                    "$ref": "#/types/cloudflare:index/getZonesResultOwner:getZonesResultOwner",
                    "description": "The owner of the zone.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "Indicates whether the zone is only using Cloudflare DNS services. A\ntrue value means the zone will not receive security or performance\nbenefits.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Legacy permissions based on legacy user membership information.\n",
                    "deprecationMessage": "This has been replaced by Account memberships."
                },
                "plan": {
                    "$ref": "#/types/cloudflare:index/getZonesResultPlan:getZonesResultPlan",
                    "description": "A Zones subscription information.\n",
                    "deprecationMessage": "Please use the `/zones/{zone_id}/subscription` API\nto update a zone's plan. Changing this value will create/cancel\nassociated subscriptions. To view available plans for this zone,\nsee [Zone Plans](https://developers.cloudflare.com/api/resources/zones/subresources/plans/)."
                },
                "status": {
                    "type": "string",
                    "description": "The zone status on Cloudflare.\nAvailable values: \"initializing\", \"pending\", \"active\", \"moved\".\n"
                },
                "tenant": {
                    "$ref": "#/types/cloudflare:index/getZonesResultTenant:getZonesResultTenant",
                    "description": "The root organizational unit that this zone belongs to (such as a tenant or organization).\n"
                },
                "tenantUnit": {
                    "$ref": "#/types/cloudflare:index/getZonesResultTenantUnit:getZonesResultTenantUnit",
                    "description": "The immediate parent organizational unit that this zone belongs to (such as under a tenant or sub-organization).\n"
                },
                "type": {
                    "type": "string",
                    "description": "A full zone implies that DNS is hosted with Cloudflare. A partial zone is\ntypically a partner-hosted zone or a CNAME setup.\nAvailable values: \"full\", \"partial\", \"secondary\", \"internal\".\n"
                },
                "vanityNameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of domains used for custom name servers. This is only available for Business and Enterprise plans.\n"
                },
                "verificationKey": {
                    "type": "string",
                    "description": "Verification key for partial zone setup.\n"
                }
            },
            "type": "object",
            "required": [
                "account",
                "activatedOn",
                "cnameSuffix",
                "createdOn",
                "developmentMode",
                "id",
                "meta",
                "modifiedOn",
                "name",
                "nameServers",
                "originalDnshost",
                "originalNameServers",
                "originalRegistrar",
                "owner",
                "paused",
                "permissions",
                "plan",
                "status",
                "tenant",
                "tenantUnit",
                "type",
                "vanityNameServers",
                "verificationKey"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesResultAccount:getZonesResultAccount": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the account.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesResultMeta:getZonesResultMeta": {
            "properties": {
                "cdnOnly": {
                    "type": "boolean",
                    "description": "The zone is only configured for CDN.\n"
                },
                "customCertificateQuota": {
                    "type": "integer",
                    "description": "Number of Custom Certificates the zone can have.\n"
                },
                "dnsOnly": {
                    "type": "boolean",
                    "description": "The zone is only configured for DNS.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "The zone is setup with Foundation DNS.\n"
                },
                "pageRuleQuota": {
                    "type": "integer",
                    "description": "Number of Page Rules a zone can have.\n"
                },
                "phishingDetected": {
                    "type": "boolean",
                    "description": "The zone has been flagged for phishing.\n"
                },
                "step": {
                    "type": "integer"
                }
            },
            "type": "object",
            "required": [
                "cdnOnly",
                "customCertificateQuota",
                "dnsOnly",
                "foundationDns",
                "pageRuleQuota",
                "phishingDetected",
                "step"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesResultOwner:getZonesResultOwner": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the owner.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of owner.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesResultPlan:getZonesResultPlan": {
            "properties": {
                "canSubscribe": {
                    "type": "boolean",
                    "description": "States if the subscription can be activated.\n"
                },
                "currency": {
                    "type": "string",
                    "description": "The denomination of the customer.\n"
                },
                "externallyManaged": {
                    "type": "boolean",
                    "description": "If this Zone is managed by another company.\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "How often the customer is billed.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "isSubscribed": {
                    "type": "boolean",
                    "description": "States if the subscription active.\n"
                },
                "legacyDiscount": {
                    "type": "boolean",
                    "description": "If the legacy discount applies to this Zone.\n"
                },
                "legacyId": {
                    "type": "string",
                    "description": "The legacy name of the plan.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the owner.\n"
                },
                "price": {
                    "type": "number",
                    "description": "How much the customer is paying.\n"
                }
            },
            "type": "object",
            "required": [
                "canSubscribe",
                "currency",
                "externallyManaged",
                "frequency",
                "id",
                "isSubscribed",
                "legacyDiscount",
                "legacyId",
                "name",
                "price"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesResultTenant:getZonesResultTenant": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Tenant account.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "cloudflare:index/getZonesResultTenantUnit:getZonesResultTenantUnit": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        }
    },
    "provider": {
        "description": "The provider type for the cloudflare package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
        "properties": {
            "apiKey": {
                "type": "string",
                "description": "The API key for operations. Alternatively, can be configured using the `CLOUDFLARE_API_KEY` environment variable. API keys are [now considered legacy by Cloudflare](https://developers.cloudflare.com/fundamentals/api/get-started/keys/#limitations), API tokens should be used instead. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "apiToken": {
                "type": "string",
                "description": "The API Token for operations. Alternatively, can be configured using the `CLOUDFLARE_API_TOKEN` environment variable. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "apiUserServiceKey": {
                "type": "string",
                "description": "A special Cloudflare API key good for a restricted set of endpoints. Alternatively, can be configured using the `CLOUDFLARE_API_USER_SERVICE_KEY` environment variable. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "baseUrl": {
                "type": "string",
                "description": "Value to override the default HTTP client base URL. Alternatively, can be configured using the \u003cspan pulumi-lang-nodejs=\"`baseUrl`\" pulumi-lang-dotnet=\"`BaseUrl`\" pulumi-lang-go=\"`baseUrl`\" pulumi-lang-python=\"`base_url`\" pulumi-lang-yaml=\"`baseUrl`\" pulumi-lang-java=\"`baseUrl`\"\u003e`baseUrl`\u003c/span\u003e environment variable."
            },
            "email": {
                "type": "string",
                "description": "A registered Cloudflare email address. Alternatively, can be configured using the `CLOUDFLARE_EMAIL` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e. Conflicts with \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e."
            },
            "userAgentOperatorSuffix": {
                "type": "string",
                "description": "A value to append to the HTTP User Agent for all API calls. This value is not something most users need to modify however, if you are using a non-standard provider or operator configuration, this is recommended to assist in uniquely identifying your traffic. **Setting this value will remove the Terraform version from the HTTP User Agent string and may have unintended consequences**. Alternatively, can be configured using the `CLOUDFLARE_USER_AGENT_OPERATOR_SUFFIX` environment variable."
            }
        },
        "inputProperties": {
            "apiKey": {
                "type": "string",
                "description": "The API key for operations. Alternatively, can be configured using the `CLOUDFLARE_API_KEY` environment variable. API keys are [now considered legacy by Cloudflare](https://developers.cloudflare.com/fundamentals/api/get-started/keys/#limitations), API tokens should be used instead. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "apiToken": {
                "type": "string",
                "description": "The API Token for operations. Alternatively, can be configured using the `CLOUDFLARE_API_TOKEN` environment variable. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "apiUserServiceKey": {
                "type": "string",
                "description": "A special Cloudflare API key good for a restricted set of endpoints. Alternatively, can be configured using the `CLOUDFLARE_API_USER_SERVICE_KEY` environment variable. Must provide only one of \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apiUserServiceKey`\" pulumi-lang-dotnet=\"`ApiUserServiceKey`\" pulumi-lang-go=\"`apiUserServiceKey`\" pulumi-lang-python=\"`api_user_service_key`\" pulumi-lang-yaml=\"`apiUserServiceKey`\" pulumi-lang-java=\"`apiUserServiceKey`\"\u003e`apiUserServiceKey`\u003c/span\u003e.",
                "secret": true
            },
            "baseUrl": {
                "type": "string",
                "description": "Value to override the default HTTP client base URL. Alternatively, can be configured using the \u003cspan pulumi-lang-nodejs=\"`baseUrl`\" pulumi-lang-dotnet=\"`BaseUrl`\" pulumi-lang-go=\"`baseUrl`\" pulumi-lang-python=\"`base_url`\" pulumi-lang-yaml=\"`baseUrl`\" pulumi-lang-java=\"`baseUrl`\"\u003e`baseUrl`\u003c/span\u003e environment variable."
            },
            "email": {
                "type": "string",
                "description": "A registered Cloudflare email address. Alternatively, can be configured using the `CLOUDFLARE_EMAIL` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`apiKey`\" pulumi-lang-dotnet=\"`ApiKey`\" pulumi-lang-go=\"`apiKey`\" pulumi-lang-python=\"`api_key`\" pulumi-lang-yaml=\"`apiKey`\" pulumi-lang-java=\"`apiKey`\"\u003e`apiKey`\u003c/span\u003e. Conflicts with \u003cspan pulumi-lang-nodejs=\"`apiToken`\" pulumi-lang-dotnet=\"`ApiToken`\" pulumi-lang-go=\"`apiToken`\" pulumi-lang-python=\"`api_token`\" pulumi-lang-yaml=\"`apiToken`\" pulumi-lang-java=\"`apiToken`\"\u003e`apiToken`\u003c/span\u003e."
            },
            "userAgentOperatorSuffix": {
                "type": "string",
                "description": "A value to append to the HTTP User Agent for all API calls. This value is not something most users need to modify however, if you are using a non-standard provider or operator configuration, this is recommended to assist in uniquely identifying your traffic. **Setting this value will remove the Terraform version from the HTTP User Agent string and may have unintended consequences**. Alternatively, can be configured using the `CLOUDFLARE_USER_AGENT_OPERATOR_SUFFIX` environment variable."
            }
        },
        "methods": {
            "terraformConfig": "pulumi:providers:cloudflare/terraformConfig"
        }
    },
    "resources": {
        "cloudflare:index/accessApplication:AccessApplication": {
            "description": "## Example Usage\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessApplication:AccessApplication example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003capp_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                },
                "allowIframe": {
                    "type": "boolean",
                    "description": "Enables loading application content in an iFrame.\n"
                },
                "allowedIdps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                },
                "appLauncherLogoUrl": {
                    "type": "string",
                    "description": "The image URL of the logo shown in the App Launcher header.\n"
                },
                "appLauncherVisible": {
                    "type": "boolean",
                    "description": "Displays the application in the App Launcher.\n"
                },
                "aud": {
                    "type": "string",
                    "description": "Audience tag.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                },
                "bgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher page.\n"
                },
                "corsHeaders": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationCorsHeaders:AccessApplicationCorsHeaders"
                },
                "customDenyMessage": {
                    "type": "string",
                    "description": "The custom error message shown to a user when they are denied access to the application.\n"
                },
                "customDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                },
                "customNonIdentityDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                },
                "customPages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The custom pages that will be displayed when applicable for this application\n"
                },
                "destinations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationDestination:AccessApplicationDestination"
                    },
                    "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                },
                "enableBindingCookie": {
                    "type": "boolean",
                    "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                },
                "footerLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationFooterLink:AccessApplicationFooterLink"
                    },
                    "description": "The links in the App Launcher footer.\n"
                },
                "headerBgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher header.\n"
                },
                "httpOnlyCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                },
                "landingPageDesign": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationLandingPageDesign:AccessApplicationLandingPageDesign",
                    "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                },
                "logoUrl": {
                    "type": "string",
                    "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationMfaConfig:AccessApplicationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the application.\n"
                },
                "oauthConfiguration": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationOauthConfiguration:AccessApplicationOauthConfiguration",
                    "description": "Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. This feature is currently in beta.\n"
                },
                "optionsPreflightBypass": {
                    "type": "boolean",
                    "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                },
                "pathCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationPolicy:AccessApplicationPolicy"
                    },
                    "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application.\n"
                },
                "readServiceTokensFromHeader": {
                    "type": "string",
                    "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                },
                "saasApp": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationSaasApp:AccessApplicationSaasApp"
                },
                "sameSiteCookieAttribute": {
                    "type": "string",
                    "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationScimConfig:AccessApplicationScimConfig",
                    "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                },
                "selfHostedDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "serviceAuth401Redirect": {
                    "type": "boolean",
                    "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                },
                "skipAppLauncherLoginPage": {
                    "type": "boolean",
                    "description": "Determines when to skip the App Launcher landing page.\n"
                },
                "skipInterstitial": {
                    "type": "boolean",
                    "description": "Enables automatic authentication through cloudflared.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                },
                "targetCriterias": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationTargetCriteria:AccessApplicationTargetCriteria"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\", \u003cspan pulumi-lang-nodejs=\"\"proxyEndpoint\"\" pulumi-lang-dotnet=\"\"ProxyEndpoint\"\" pulumi-lang-go=\"\"proxyEndpoint\"\" pulumi-lang-python=\"\"proxy_endpoint\"\" pulumi-lang-yaml=\"\"proxyEndpoint\"\" pulumi-lang-java=\"\"proxyEndpoint\"\"\u003e\"proxyEndpoint\"\u003c/span\u003e.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "appLauncherVisible",
                "aud",
                "destinations",
                "domain",
                "httpOnlyCookieAttribute",
                "name",
                "selfHostedDomains",
                "sessionDuration",
                "skipAppLauncherLoginPage",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                },
                "allowIframe": {
                    "type": "boolean",
                    "description": "Enables loading application content in an iFrame.\n"
                },
                "allowedIdps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                },
                "appLauncherLogoUrl": {
                    "type": "string",
                    "description": "The image URL of the logo shown in the App Launcher header.\n"
                },
                "appLauncherVisible": {
                    "type": "boolean",
                    "description": "Displays the application in the App Launcher.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                },
                "bgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher page.\n"
                },
                "corsHeaders": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationCorsHeaders:AccessApplicationCorsHeaders"
                },
                "customDenyMessage": {
                    "type": "string",
                    "description": "The custom error message shown to a user when they are denied access to the application.\n"
                },
                "customDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                },
                "customNonIdentityDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                },
                "customPages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The custom pages that will be displayed when applicable for this application\n"
                },
                "destinations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationDestination:AccessApplicationDestination"
                    },
                    "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                },
                "enableBindingCookie": {
                    "type": "boolean",
                    "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                },
                "footerLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationFooterLink:AccessApplicationFooterLink"
                    },
                    "description": "The links in the App Launcher footer.\n"
                },
                "headerBgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher header.\n"
                },
                "httpOnlyCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                },
                "landingPageDesign": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationLandingPageDesign:AccessApplicationLandingPageDesign",
                    "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                },
                "logoUrl": {
                    "type": "string",
                    "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationMfaConfig:AccessApplicationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the application.\n"
                },
                "oauthConfiguration": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationOauthConfiguration:AccessApplicationOauthConfiguration",
                    "description": "Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. This feature is currently in beta.\n"
                },
                "optionsPreflightBypass": {
                    "type": "boolean",
                    "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                },
                "pathCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationPolicy:AccessApplicationPolicy"
                    },
                    "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application.\n"
                },
                "readServiceTokensFromHeader": {
                    "type": "string",
                    "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                },
                "saasApp": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationSaasApp:AccessApplicationSaasApp"
                },
                "sameSiteCookieAttribute": {
                    "type": "string",
                    "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/AccessApplicationScimConfig:AccessApplicationScimConfig",
                    "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                },
                "selfHostedDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "serviceAuth401Redirect": {
                    "type": "boolean",
                    "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                },
                "skipAppLauncherLoginPage": {
                    "type": "boolean",
                    "description": "Determines when to skip the App Launcher landing page.\n"
                },
                "skipInterstitial": {
                    "type": "boolean",
                    "description": "Enables automatic authentication through cloudflared.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                },
                "targetCriterias": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationTargetCriteria:AccessApplicationTargetCriteria"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\", \u003cspan pulumi-lang-nodejs=\"\"proxyEndpoint\"\" pulumi-lang-dotnet=\"\"ProxyEndpoint\"\" pulumi-lang-go=\"\"proxyEndpoint\"\" pulumi-lang-python=\"\"proxy_endpoint\"\" pulumi-lang-yaml=\"\"proxyEndpoint\"\" pulumi-lang-java=\"\"proxyEndpoint\"\"\u003e\"proxyEndpoint\"\u003c/span\u003e.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessApplication resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "allowAuthenticateViaWarp": {
                        "type": "boolean",
                        "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                    },
                    "allowIframe": {
                        "type": "boolean",
                        "description": "Enables loading application content in an iFrame.\n"
                    },
                    "allowedIdps": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                    },
                    "appLauncherLogoUrl": {
                        "type": "string",
                        "description": "The image URL of the logo shown in the App Launcher header.\n"
                    },
                    "appLauncherVisible": {
                        "type": "boolean",
                        "description": "Displays the application in the App Launcher.\n"
                    },
                    "aud": {
                        "type": "string",
                        "description": "Audience tag.\n"
                    },
                    "autoRedirectToIdentity": {
                        "type": "boolean",
                        "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                    },
                    "bgColor": {
                        "type": "string",
                        "description": "The background color of the App Launcher page.\n"
                    },
                    "corsHeaders": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationCorsHeaders:AccessApplicationCorsHeaders"
                    },
                    "customDenyMessage": {
                        "type": "string",
                        "description": "The custom error message shown to a user when they are denied access to the application.\n"
                    },
                    "customDenyUrl": {
                        "type": "string",
                        "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                    },
                    "customNonIdentityDenyUrl": {
                        "type": "string",
                        "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                    },
                    "customPages": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The custom pages that will be displayed when applicable for this application\n"
                    },
                    "destinations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessApplicationDestination:AccessApplicationDestination"
                        },
                        "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                    },
                    "enableBindingCookie": {
                        "type": "boolean",
                        "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                    },
                    "footerLinks": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessApplicationFooterLink:AccessApplicationFooterLink"
                        },
                        "description": "The links in the App Launcher footer.\n"
                    },
                    "headerBgColor": {
                        "type": "string",
                        "description": "The background color of the App Launcher header.\n"
                    },
                    "httpOnlyCookieAttribute": {
                        "type": "boolean",
                        "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                    },
                    "landingPageDesign": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationLandingPageDesign:AccessApplicationLandingPageDesign",
                        "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                    },
                    "logoUrl": {
                        "type": "string",
                        "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationMfaConfig:AccessApplicationMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the application.\n"
                    },
                    "oauthConfiguration": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationOauthConfiguration:AccessApplicationOauthConfiguration",
                        "description": "Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. This feature is currently in beta.\n"
                    },
                    "optionsPreflightBypass": {
                        "type": "boolean",
                        "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                    },
                    "pathCookieAttribute": {
                        "type": "boolean",
                        "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                    },
                    "policies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessApplicationPolicy:AccessApplicationPolicy"
                        },
                        "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application.\n"
                    },
                    "readServiceTokensFromHeader": {
                        "type": "string",
                        "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                    },
                    "saasApp": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationSaasApp:AccessApplicationSaasApp"
                    },
                    "sameSiteCookieAttribute": {
                        "type": "string",
                        "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                    },
                    "scimConfig": {
                        "$ref": "#/types/cloudflare:index/AccessApplicationScimConfig:AccessApplicationScimConfig",
                        "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                    },
                    "selfHostedDomains": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "serviceAuth401Redirect": {
                        "type": "boolean",
                        "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                    },
                    "sessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                    },
                    "skipAppLauncherLoginPage": {
                        "type": "boolean",
                        "description": "Determines when to skip the App Launcher landing page.\n"
                    },
                    "skipInterstitial": {
                        "type": "boolean",
                        "description": "Enables automatic authentication through cloudflared.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                    },
                    "targetCriterias": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessApplicationTargetCriteria:AccessApplicationTargetCriteria"
                        }
                    },
                    "type": {
                        "type": "string",
                        "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\", \u003cspan pulumi-lang-nodejs=\"\"proxyEndpoint\"\" pulumi-lang-dotnet=\"\"ProxyEndpoint\"\" pulumi-lang-go=\"\"proxyEndpoint\"\" pulumi-lang-python=\"\"proxy_endpoint\"\" pulumi-lang-yaml=\"\"proxyEndpoint\"\" pulumi-lang-java=\"\"proxyEndpoint\"\"\u003e\"proxyEndpoint\"\u003c/span\u003e.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessApplication:AccessApplication"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessapplication.AccessApplication has been deprecated in favor of cloudflare.index/zerotrustaccessapplication.ZeroTrustAccessApplication"
        },
        "cloudflare:index/accessCaCertificate:AccessCaCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessShortLivedCertificate = new cloudflare.ZeroTrustAccessShortLivedCertificate(\"example_zero_trust_access_short_lived_certificate\", {\n    appId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_short_lived_certificate = cloudflare.ZeroTrustAccessShortLivedCertificate(\"example_zero_trust_access_short_lived_certificate\",\n    app_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessShortLivedCertificate = new Cloudflare.Index.ZeroTrustAccessShortLivedCertificate(\"example_zero_trust_access_short_lived_certificate\", new()\n    {\n        AppId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessShortLivedCertificate(ctx, \"example_zero_trust_access_short_lived_certificate\", \u0026cloudflare.ZeroTrustAccessShortLivedCertificateArgs{\n\t\t\tAppId:  pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessShortLivedCertificate;\nimport com.pulumi.cloudflare.ZeroTrustAccessShortLivedCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessShortLivedCertificate = new ZeroTrustAccessShortLivedCertificate(\"exampleZeroTrustAccessShortLivedCertificate\", ZeroTrustAccessShortLivedCertificateArgs.builder()\n            .appId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessShortLivedCertificate:\n    type: cloudflare:ZeroTrustAccessShortLivedCertificate\n    name: example_zero_trust_access_short_lived_certificate\n    properties:\n      appId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessCaCertificate:AccessCaCertificate example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003capp_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "aud": {
                    "type": "string",
                    "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The public key to add to your SSH server configuration.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "appId",
                "aud",
                "publicKey"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "appId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessCaCertificate resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "appId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "aud": {
                        "type": "string",
                        "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.\n"
                    },
                    "publicKey": {
                        "type": "string",
                        "description": "The public key to add to your SSH server configuration.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessCaCertificate:AccessCaCertificate"
                }
            ],
            "deprecationMessage": "cloudflare.index/accesscacertificate.AccessCaCertificate has been deprecated in favor of cloudflare.index/zerotrustaccessshortlivedcertificate.ZeroTrustAccessShortLivedCertificate"
        },
        "cloudflare:index/accessCustomPage:AccessCustomPage": {
            "description": "Accepted Permissions\n\n- `Access: Custom Pages Read`\n- `Access: Custom Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessCustomPage = new cloudflare.ZeroTrustAccessCustomPage(\"example_zero_trust_access_custom_page\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    customHtml: \"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\",\n    name: \"name\",\n    type: \"identity_denied\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_custom_page = cloudflare.ZeroTrustAccessCustomPage(\"example_zero_trust_access_custom_page\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    custom_html=\"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\",\n    name=\"name\",\n    type=\"identity_denied\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessCustomPage = new Cloudflare.Index.ZeroTrustAccessCustomPage(\"example_zero_trust_access_custom_page\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CustomHtml = \"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\",\n        Name = \"name\",\n        Type = \"identity_denied\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessCustomPage(ctx, \"example_zero_trust_access_custom_page\", \u0026cloudflare.ZeroTrustAccessCustomPageArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCustomHtml: pulumi.String(\"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\"),\n\t\t\tName:       pulumi.String(\"name\"),\n\t\t\tType:       pulumi.String(\"identity_denied\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessCustomPage;\nimport com.pulumi.cloudflare.ZeroTrustAccessCustomPageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessCustomPage = new ZeroTrustAccessCustomPage(\"exampleZeroTrustAccessCustomPage\", ZeroTrustAccessCustomPageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .customHtml(\"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\")\n            .name(\"name\")\n            .type(\"identity_denied\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessCustomPage:\n    type: cloudflare:ZeroTrustAccessCustomPage\n    name: example_zero_trust_access_custom_page\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      customHtml: \u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\n      name: name\n      type: identity_denied\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessCustomPage:AccessCustomPage example '\u003caccount_id\u003e/\u003ccustom_page_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "customHtml": {
                    "type": "string",
                    "description": "Custom page HTML.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Custom page name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "UUID.\n"
                }
            },
            "required": [
                "customHtml",
                "name",
                "type",
                "uid"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "customHtml": {
                    "type": "string",
                    "description": "Custom page HTML.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Custom page name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                }
            },
            "requiredInputs": [
                "customHtml",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessCustomPage resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "customHtml": {
                        "type": "string",
                        "description": "Custom page HTML.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Custom page name.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "UUID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessCustomPage:AccessCustomPage"
                }
            ],
            "deprecationMessage": "cloudflare.index/accesscustompage.AccessCustomPage has been deprecated in favor of cloudflare.index/zerotrustaccesscustompage.ZeroTrustAccessCustomPage"
        },
        "cloudflare:index/accessGroup:AccessGroup": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessGroup = new cloudflare.ZeroTrustAccessGroup(\"example_zero_trust_access_group\", {\n    includes: [{\n        certificate: {},\n    }],\n    name: \"Allow devs\",\n    zoneId: \"zone_id\",\n    excludes: [{\n        certificate: {},\n    }],\n    isDefault: true,\n    requires: [{\n        certificate: {},\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_group = cloudflare.ZeroTrustAccessGroup(\"example_zero_trust_access_group\",\n    includes=[{\n        \"certificate\": {},\n    }],\n    name=\"Allow devs\",\n    zone_id=\"zone_id\",\n    excludes=[{\n        \"certificate\": {},\n    }],\n    is_default=True,\n    requires=[{\n        \"certificate\": {},\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessGroup = new Cloudflare.Index.ZeroTrustAccessGroup(\"example_zero_trust_access_group\", new()\n    {\n        Includes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessGroupIncludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        Name = \"Allow devs\",\n        ZoneId = \"zone_id\",\n        Excludes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessGroupExcludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        IsDefault = true,\n        Requires = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessGroupRequireArgs\n            {\n                Certificate = null,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessGroup(ctx, \"example_zero_trust_access_group\", \u0026cloudflare.ZeroTrustAccessGroupArgs{\n\t\t\tIncludes: cloudflare.ZeroTrustAccessGroupIncludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessGroupIncludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessGroupIncludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:   pulumi.String(\"Allow devs\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t\tExcludes: cloudflare.ZeroTrustAccessGroupExcludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessGroupExcludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessGroupExcludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t\tRequires: cloudflare.ZeroTrustAccessGroupRequireArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessGroupRequireArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessGroupRequireCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessGroup;\nimport com.pulumi.cloudflare.ZeroTrustAccessGroupArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupIncludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupIncludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupExcludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupExcludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupRequireArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupRequireCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessGroup = new ZeroTrustAccessGroup(\"exampleZeroTrustAccessGroup\", ZeroTrustAccessGroupArgs.builder()\n            .includes(ZeroTrustAccessGroupIncludeArgs.builder()\n                .certificate(ZeroTrustAccessGroupIncludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .name(\"Allow devs\")\n            .zoneId(\"zone_id\")\n            .excludes(ZeroTrustAccessGroupExcludeArgs.builder()\n                .certificate(ZeroTrustAccessGroupExcludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .isDefault(true)\n            .requires(ZeroTrustAccessGroupRequireArgs.builder()\n                .certificate(ZeroTrustAccessGroupRequireCertificateArgs.builder()\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessGroup:\n    type: cloudflare:ZeroTrustAccessGroup\n    name: example_zero_trust_access_group\n    properties:\n      includes:\n        - certificate: {}\n      name: Allow devs\n      zoneId: zone_id\n      excludes:\n        - certificate: {}\n      isDefault: true\n      requires:\n        - certificate: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessGroup:AccessGroup example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cgroup_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessGroupExclude:AccessGroupExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessGroupInclude:AccessGroupInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "Whether this is the default group\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access group.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessGroupRequire:AccessGroupRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "includes",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessGroupExclude:AccessGroupExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessGroupInclude:AccessGroupInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "Whether this is the default group\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access group.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessGroupRequire:AccessGroupRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "includes",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessGroup resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "excludes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessGroupExclude:AccessGroupExclude"
                        },
                        "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                    },
                    "includes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessGroupInclude:AccessGroupInclude"
                        },
                        "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                    },
                    "isDefault": {
                        "type": "boolean",
                        "description": "Whether this is the default group\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Access group.\n"
                    },
                    "requires": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessGroupRequire:AccessGroupRequire"
                        },
                        "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessGroup:AccessGroup"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessgroup.AccessGroup has been deprecated in favor of cloudflare.index/zerotrustaccessgroup.ZeroTrustAccessGroup"
        },
        "cloudflare:index/accessIdentityProvider:AccessIdentityProvider": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessIdentityProvider = new cloudflare.ZeroTrustAccessIdentityProvider(\"example_zero_trust_access_identity_provider\", {\n    config: {\n        claims: [\n            \"email_verified\",\n            \"preferred_username\",\n            \"custom_claim_name\",\n        ],\n        clientId: \"\u003cyour client id\u003e\",\n        clientSecret: \"\u003cyour client secret\u003e\",\n        conditionalAccessEnabled: true,\n        directoryId: \"\u003cyour azure directory uuid\u003e\",\n        emailClaimName: \"custom_claim_name\",\n        prompt: \"login\",\n        supportGroups: true,\n    },\n    name: \"Widget Corps IDP\",\n    type: \"onetimepin\",\n    zoneId: \"zone_id\",\n    scimConfig: {\n        enabled: true,\n        identityUpdateBehavior: \"automatic\",\n        seatDeprovision: true,\n        userDeprovision: true,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_identity_provider = cloudflare.ZeroTrustAccessIdentityProvider(\"example_zero_trust_access_identity_provider\",\n    config={\n        \"claims\": [\n            \"email_verified\",\n            \"preferred_username\",\n            \"custom_claim_name\",\n        ],\n        \"client_id\": \"\u003cyour client id\u003e\",\n        \"client_secret\": \"\u003cyour client secret\u003e\",\n        \"conditional_access_enabled\": True,\n        \"directory_id\": \"\u003cyour azure directory uuid\u003e\",\n        \"email_claim_name\": \"custom_claim_name\",\n        \"prompt\": \"login\",\n        \"support_groups\": True,\n    },\n    name=\"Widget Corps IDP\",\n    type=\"onetimepin\",\n    zone_id=\"zone_id\",\n    scim_config={\n        \"enabled\": True,\n        \"identity_update_behavior\": \"automatic\",\n        \"seat_deprovision\": True,\n        \"user_deprovision\": True,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessIdentityProvider = new Cloudflare.Index.ZeroTrustAccessIdentityProvider(\"example_zero_trust_access_identity_provider\", new()\n    {\n        Config = new Cloudflare.Inputs.ZeroTrustAccessIdentityProviderConfigArgs\n        {\n            Claims = new[]\n            {\n                \"email_verified\",\n                \"preferred_username\",\n                \"custom_claim_name\",\n            },\n            ClientId = \"\u003cyour client id\u003e\",\n            ClientSecret = \"\u003cyour client secret\u003e\",\n            ConditionalAccessEnabled = true,\n            DirectoryId = \"\u003cyour azure directory uuid\u003e\",\n            EmailClaimName = \"custom_claim_name\",\n            Prompt = \"login\",\n            SupportGroups = true,\n        },\n        Name = \"Widget Corps IDP\",\n        Type = \"onetimepin\",\n        ZoneId = \"zone_id\",\n        ScimConfig = new Cloudflare.Inputs.ZeroTrustAccessIdentityProviderScimConfigArgs\n        {\n            Enabled = true,\n            IdentityUpdateBehavior = \"automatic\",\n            SeatDeprovision = true,\n            UserDeprovision = true,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessIdentityProvider(ctx, \"example_zero_trust_access_identity_provider\", \u0026cloudflare.ZeroTrustAccessIdentityProviderArgs{\n\t\t\tConfig: \u0026cloudflare.ZeroTrustAccessIdentityProviderConfigArgs{\n\t\t\t\tClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"email_verified\"),\n\t\t\t\t\tpulumi.String(\"preferred_username\"),\n\t\t\t\t\tpulumi.String(\"custom_claim_name\"),\n\t\t\t\t},\n\t\t\t\tClientId:                 pulumi.String(\"\u003cyour client id\u003e\"),\n\t\t\t\tClientSecret:             pulumi.String(\"\u003cyour client secret\u003e\"),\n\t\t\t\tConditionalAccessEnabled: pulumi.Bool(true),\n\t\t\t\tDirectoryId:              pulumi.String(\"\u003cyour azure directory uuid\u003e\"),\n\t\t\t\tEmailClaimName:           pulumi.String(\"custom_claim_name\"),\n\t\t\t\tPrompt:                   pulumi.String(\"login\"),\n\t\t\t\tSupportGroups:            pulumi.Bool(true),\n\t\t\t},\n\t\t\tName:   pulumi.String(\"Widget Corps IDP\"),\n\t\t\tType:   pulumi.String(\"onetimepin\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t\tScimConfig: \u0026cloudflare.ZeroTrustAccessIdentityProviderScimConfigArgs{\n\t\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\t\tIdentityUpdateBehavior: pulumi.String(\"automatic\"),\n\t\t\t\tSeatDeprovision:        pulumi.Bool(true),\n\t\t\t\tUserDeprovision:        pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessIdentityProvider;\nimport com.pulumi.cloudflare.ZeroTrustAccessIdentityProviderArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessIdentityProviderConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessIdentityProviderScimConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessIdentityProvider = new ZeroTrustAccessIdentityProvider(\"exampleZeroTrustAccessIdentityProvider\", ZeroTrustAccessIdentityProviderArgs.builder()\n            .config(ZeroTrustAccessIdentityProviderConfigArgs.builder()\n                .claims(                \n                    \"email_verified\",\n                    \"preferred_username\",\n                    \"custom_claim_name\")\n                .clientId(\"\u003cyour client id\u003e\")\n                .clientSecret(\"\u003cyour client secret\u003e\")\n                .conditionalAccessEnabled(true)\n                .directoryId(\"\u003cyour azure directory uuid\u003e\")\n                .emailClaimName(\"custom_claim_name\")\n                .prompt(\"login\")\n                .supportGroups(true)\n                .build())\n            .name(\"Widget Corps IDP\")\n            .type(\"onetimepin\")\n            .zoneId(\"zone_id\")\n            .scimConfig(ZeroTrustAccessIdentityProviderScimConfigArgs.builder()\n                .enabled(true)\n                .identityUpdateBehavior(\"automatic\")\n                .seatDeprovision(true)\n                .userDeprovision(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessIdentityProvider:\n    type: cloudflare:ZeroTrustAccessIdentityProvider\n    name: example_zero_trust_access_identity_provider\n    properties:\n      config:\n        claims:\n          - email_verified\n          - preferred_username\n          - custom_claim_name\n        clientId: \u003cyour client id\u003e\n        clientSecret: \u003cyour client secret\u003e\n        conditionalAccessEnabled: true\n        directoryId: \u003cyour azure directory uuid\u003e\n        emailClaimName: custom_claim_name\n        prompt: login\n        supportGroups: true\n      name: Widget Corps IDP\n      type: onetimepin\n      zoneId: zone_id\n      scimConfig:\n        enabled: true\n        identityUpdateBehavior: automatic\n        seatDeprovision: true\n        userDeprovision: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessIdentityProvider:AccessIdentityProvider example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cidentity_provider_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/AccessIdentityProviderConfig:AccessIdentityProviderConfig",
                    "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the identity provider, shown to users on the login page.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/AccessIdentityProviderScimConfig:AccessIdentityProviderScimConfig",
                    "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "config",
                "name",
                "scimConfig",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/AccessIdentityProviderConfig:AccessIdentityProviderConfig",
                    "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the identity provider, shown to users on the login page.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/AccessIdentityProviderScimConfig:AccessIdentityProviderScimConfig",
                    "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "config",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessIdentityProvider resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/AccessIdentityProviderConfig:AccessIdentityProviderConfig",
                        "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the identity provider, shown to users on the login page.\n"
                    },
                    "scimConfig": {
                        "$ref": "#/types/cloudflare:index/AccessIdentityProviderScimConfig:AccessIdentityProviderScimConfig",
                        "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessIdentityProvider:AccessIdentityProvider"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessidentityprovider.AccessIdentityProvider has been deprecated in favor of cloudflare.index/zerotrustaccessidentityprovider.ZeroTrustAccessIdentityProvider"
        },
        "cloudflare:index/accessKeysConfiguration:AccessKeysConfiguration": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessKeyConfiguration = new cloudflare.ZeroTrustAccessKeyConfiguration(\"example_zero_trust_access_key_configuration\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    keyRotationIntervalDays: 30,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_key_configuration = cloudflare.ZeroTrustAccessKeyConfiguration(\"example_zero_trust_access_key_configuration\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    key_rotation_interval_days=30)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessKeyConfiguration = new Cloudflare.Index.ZeroTrustAccessKeyConfiguration(\"example_zero_trust_access_key_configuration\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        KeyRotationIntervalDays = 30,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessKeyConfiguration(ctx, \"example_zero_trust_access_key_configuration\", \u0026cloudflare.ZeroTrustAccessKeyConfigurationArgs{\n\t\t\tAccountId:               pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tKeyRotationIntervalDays: pulumi.Float64(30),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessKeyConfiguration;\nimport com.pulumi.cloudflare.ZeroTrustAccessKeyConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessKeyConfiguration = new ZeroTrustAccessKeyConfiguration(\"exampleZeroTrustAccessKeyConfiguration\", ZeroTrustAccessKeyConfigurationArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .keyRotationIntervalDays(30.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessKeyConfiguration:\n    type: cloudflare:ZeroTrustAccessKeyConfiguration\n    name: example_zero_trust_access_key_configuration\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      keyRotationIntervalDays: 30\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessKeysConfiguration:AccessKeysConfiguration example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "daysUntilNextRotation": {
                    "type": "number",
                    "description": "The number of days until the next key rotation.\n"
                },
                "keyRotationIntervalDays": {
                    "type": "number",
                    "description": "The number of days between key rotations.\n"
                },
                "lastKeyRotationAt": {
                    "type": "string",
                    "description": "The timestamp of the previous key rotation.\n"
                }
            },
            "required": [
                "accountId",
                "daysUntilNextRotation",
                "keyRotationIntervalDays",
                "lastKeyRotationAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "keyRotationIntervalDays": {
                    "type": "number",
                    "description": "The number of days between key rotations.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "keyRotationIntervalDays"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessKeysConfiguration resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "daysUntilNextRotation": {
                        "type": "number",
                        "description": "The number of days until the next key rotation.\n"
                    },
                    "keyRotationIntervalDays": {
                        "type": "number",
                        "description": "The number of days between key rotations.\n"
                    },
                    "lastKeyRotationAt": {
                        "type": "string",
                        "description": "The timestamp of the previous key rotation.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessKeysConfiguration:AccessKeysConfiguration"
                }
            ],
            "deprecationMessage": "cloudflare.index/accesskeysconfiguration.AccessKeysConfiguration has been deprecated in favor of cloudflare.index/zerotrustaccesskeyconfiguration.ZeroTrustAccessKeyConfiguration"
        },
        "cloudflare:index/accessMutualTlsCertificate:AccessMutualTlsCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsCertificate = new cloudflare.ZeroTrustAccessMtlsCertificate(\"example_zero_trust_access_mtls_certificate\", {\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n`,\n    name: \"Allow devs\",\n    zoneId: \"zone_id\",\n    associatedHostnames: [\"admin.example.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_certificate = cloudflare.ZeroTrustAccessMtlsCertificate(\"example_zero_trust_access_mtls_certificate\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n\"\"\",\n    name=\"Allow devs\",\n    zone_id=\"zone_id\",\n    associated_hostnames=[\"admin.example.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsCertificate = new Cloudflare.Index.ZeroTrustAccessMtlsCertificate(\"example_zero_trust_access_mtls_certificate\", new()\n    {\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n\",\n        Name = \"Allow devs\",\n        ZoneId = \"zone_id\",\n        AssociatedHostnames = new[]\n        {\n            \"admin.example.com\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessMtlsCertificate(ctx, \"example_zero_trust_access_mtls_certificate\", \u0026cloudflare.ZeroTrustAccessMtlsCertificateArgs{\n\t\t\tCertificate: pulumi.String(\"  -----BEGIN CERTIFICATE-----\\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\\n  DrUtmu/B\\n  -----END CERTIFICATE-----\\n\"),\n\t\t\tName:        pulumi.String(\"Allow devs\"),\n\t\t\tZoneId:      pulumi.String(\"zone_id\"),\n\t\t\tAssociatedHostnames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"admin.example.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsCertificate;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessMtlsCertificate = new ZeroTrustAccessMtlsCertificate(\"exampleZeroTrustAccessMtlsCertificate\", ZeroTrustAccessMtlsCertificateArgs.builder()\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n            \"\"\")\n            .name(\"Allow devs\")\n            .zoneId(\"zone_id\")\n            .associatedHostnames(\"admin.example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessMtlsCertificate:\n    type: cloudflare:ZeroTrustAccessMtlsCertificate\n    name: example_zero_trust_access_mtls_certificate\n    properties:\n      certificate: |2\n          -----BEGIN CERTIFICATE-----\n          MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n          DrUtmu/B\n          -----END CERTIFICATE-----\n      name: Allow devs\n      zoneId: zone_id\n      associatedHostnames:\n        - admin.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nNote: The \"certificate\" field cannot be imported by this module and must be manually added to state.\n\n\n```sh\n$ pulumi import cloudflare:index/accessMutualTlsCertificate:AccessMutualTlsCertificate example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003ccertificate_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "associatedHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The hostnames of the applications that will use this certificate.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The certificate content.\n"
                },
                "expiresOn": {
                    "type": "string"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "The MD5 fingerprint of the certificate.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the certificate.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "associatedHostnames",
                "certificate",
                "expiresOn",
                "fingerprint",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "associatedHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The hostnames of the applications that will use this certificate.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The certificate content.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the certificate.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "certificate",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessMutualTlsCertificate resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "associatedHostnames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The hostnames of the applications that will use this certificate.\n"
                    },
                    "certificate": {
                        "type": "string",
                        "description": "The certificate content.\n"
                    },
                    "expiresOn": {
                        "type": "string"
                    },
                    "fingerprint": {
                        "type": "string",
                        "description": "The MD5 fingerprint of the certificate.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the certificate.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/cloudflareAccessMutualTlsCertificate:AccessMutualTlsCertificate"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessmutualtlscertificate.AccessMutualTlsCertificate has been deprecated in favor of cloudflare.index/zerotrustaccessmtlscertificate.ZeroTrustAccessMtlsCertificate"
        },
        "cloudflare:index/accessMutualTlsHostnameSettings:AccessMutualTlsHostnameSettings": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsHostnameSettings = new cloudflare.ZeroTrustAccessMtlsHostnameSettings(\"example_zero_trust_access_mtls_hostname_settings\", {\n    settings: [{\n        chinaNetwork: false,\n        clientCertificateForwarding: true,\n        hostname: \"admin.example.com\",\n    }],\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_hostname_settings = cloudflare.ZeroTrustAccessMtlsHostnameSettings(\"example_zero_trust_access_mtls_hostname_settings\",\n    settings=[{\n        \"china_network\": False,\n        \"client_certificate_forwarding\": True,\n        \"hostname\": \"admin.example.com\",\n    }],\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsHostnameSettings = new Cloudflare.Index.ZeroTrustAccessMtlsHostnameSettings(\"example_zero_trust_access_mtls_hostname_settings\", new()\n    {\n        Settings = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessMtlsHostnameSettingsSettingArgs\n            {\n                ChinaNetwork = false,\n                ClientCertificateForwarding = true,\n                Hostname = \"admin.example.com\",\n            },\n        },\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessMtlsHostnameSettings(ctx, \"example_zero_trust_access_mtls_hostname_settings\", \u0026cloudflare.ZeroTrustAccessMtlsHostnameSettingsArgs{\n\t\t\tSettings: cloudflare.ZeroTrustAccessMtlsHostnameSettingsSettingArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessMtlsHostnameSettingsSettingArgs{\n\t\t\t\t\tChinaNetwork:                pulumi.Bool(false),\n\t\t\t\t\tClientCertificateForwarding: pulumi.Bool(true),\n\t\t\t\t\tHostname:                    pulumi.String(\"admin.example.com\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsHostnameSettings;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsHostnameSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessMtlsHostnameSettingsSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessMtlsHostnameSettings = new ZeroTrustAccessMtlsHostnameSettings(\"exampleZeroTrustAccessMtlsHostnameSettings\", ZeroTrustAccessMtlsHostnameSettingsArgs.builder()\n            .settings(ZeroTrustAccessMtlsHostnameSettingsSettingArgs.builder()\n                .chinaNetwork(false)\n                .clientCertificateForwarding(true)\n                .hostname(\"admin.example.com\")\n                .build())\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessMtlsHostnameSettings:\n    type: cloudflare:ZeroTrustAccessMtlsHostnameSettings\n    name: example_zero_trust_access_mtls_hostname_settings\n    properties:\n      settings:\n        - chinaNetwork: false\n          clientCertificateForwarding: true\n          hostname: admin.example.com\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "chinaNetwork": {
                    "type": "boolean",
                    "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n"
                },
                "clientCertificateForwarding": {
                    "type": "boolean",
                    "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname that these settings apply to.\n"
                },
                "settings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessMutualTlsHostnameSettingsSetting:AccessMutualTlsHostnameSettingsSetting"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "chinaNetwork",
                "clientCertificateForwarding",
                "hostname",
                "settings"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "settings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessMutualTlsHostnameSettingsSetting:AccessMutualTlsHostnameSettingsSetting"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "settings"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessMutualTlsHostnameSettings resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "chinaNetwork": {
                        "type": "boolean",
                        "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n"
                    },
                    "clientCertificateForwarding": {
                        "type": "boolean",
                        "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "The hostname that these settings apply to.\n"
                    },
                    "settings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessMutualTlsHostnameSettingsSetting:AccessMutualTlsHostnameSettingsSetting"
                        }
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessMutualTlsHostnameSettings:AccessMutualTlsHostnameSettings"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessmutualtlshostnamesettings.AccessMutualTlsHostnameSettings has been deprecated in favor of cloudflare.index/zerotrustaccessmtlshostnamesettings.ZeroTrustAccessMtlsHostnameSettings"
        },
        "cloudflare:index/accessOrganization:AccessOrganization": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Revoke`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustOrganization = new cloudflare.ZeroTrustOrganization(\"example_zero_trust_organization\", {\n    zoneId: \"zone_id\",\n    allowAuthenticateViaWarp: true,\n    authDomain: \"test.cloudflareaccess.com\",\n    autoRedirectToIdentity: true,\n    customPages: {\n        forbidden: \"699d98642c564d2e855e9661899b7252\",\n        identityDenied: \"699d98642c564d2e855e9661899b7252\",\n    },\n    denyUnmatchedRequests: true,\n    denyUnmatchedRequestsExemptedZoneNames: [\"example.com\"],\n    isUiReadOnly: true,\n    loginDesign: {\n        backgroundColor: \"#c5ed1b\",\n        footerText: \"This is an example description.\",\n        headerText: \"This is an example description.\",\n        logoPath: \"https://example.com/logo.png\",\n        textColor: \"#c5ed1b\",\n    },\n    mfaConfig: {\n        allowedAuthenticators: [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        amrMatchingSessionDuration: \"12h\",\n        requiredAaguids: \"2fc0579f-8113-47ea-b116-bb5a8db9202a\",\n        sessionDuration: \"24h\",\n    },\n    mfaRequiredForAllApps: false,\n    mfaSshPivKeyRequirements: {\n        pinPolicy: \"always\",\n        requireFipsDevice: true,\n        sshKeySizes: [\n            256,\n            2048,\n        ],\n        sshKeyTypes: [\n            \"ecdsa\",\n            \"rsa\",\n        ],\n        touchPolicy: \"always\",\n    },\n    name: \"Widget Corps Internal Applications\",\n    sessionDuration: \"24h\",\n    uiReadOnlyToggleReason: \"Temporarily turn off the UI read only lock to make a change via the UI\",\n    userSeatExpirationInactiveTime: \"730h\",\n    warpAuthSessionDuration: \"24h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_organization = cloudflare.ZeroTrustOrganization(\"example_zero_trust_organization\",\n    zone_id=\"zone_id\",\n    allow_authenticate_via_warp=True,\n    auth_domain=\"test.cloudflareaccess.com\",\n    auto_redirect_to_identity=True,\n    custom_pages={\n        \"forbidden\": \"699d98642c564d2e855e9661899b7252\",\n        \"identity_denied\": \"699d98642c564d2e855e9661899b7252\",\n    },\n    deny_unmatched_requests=True,\n    deny_unmatched_requests_exempted_zone_names=[\"example.com\"],\n    is_ui_read_only=True,\n    login_design={\n        \"background_color\": \"#c5ed1b\",\n        \"footer_text\": \"This is an example description.\",\n        \"header_text\": \"This is an example description.\",\n        \"logo_path\": \"https://example.com/logo.png\",\n        \"text_color\": \"#c5ed1b\",\n    },\n    mfa_config={\n        \"allowed_authenticators\": [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        \"amr_matching_session_duration\": \"12h\",\n        \"required_aaguids\": \"2fc0579f-8113-47ea-b116-bb5a8db9202a\",\n        \"session_duration\": \"24h\",\n    },\n    mfa_required_for_all_apps=False,\n    mfa_ssh_piv_key_requirements={\n        \"pin_policy\": \"always\",\n        \"require_fips_device\": True,\n        \"ssh_key_sizes\": [\n            256,\n            2048,\n        ],\n        \"ssh_key_types\": [\n            \"ecdsa\",\n            \"rsa\",\n        ],\n        \"touch_policy\": \"always\",\n    },\n    name=\"Widget Corps Internal Applications\",\n    session_duration=\"24h\",\n    ui_read_only_toggle_reason=\"Temporarily turn off the UI read only lock to make a change via the UI\",\n    user_seat_expiration_inactive_time=\"730h\",\n    warp_auth_session_duration=\"24h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustOrganization = new Cloudflare.Index.ZeroTrustOrganization(\"example_zero_trust_organization\", new()\n    {\n        ZoneId = \"zone_id\",\n        AllowAuthenticateViaWarp = true,\n        AuthDomain = \"test.cloudflareaccess.com\",\n        AutoRedirectToIdentity = true,\n        CustomPages = new Cloudflare.Inputs.ZeroTrustOrganizationCustomPagesArgs\n        {\n            Forbidden = \"699d98642c564d2e855e9661899b7252\",\n            IdentityDenied = \"699d98642c564d2e855e9661899b7252\",\n        },\n        DenyUnmatchedRequests = true,\n        DenyUnmatchedRequestsExemptedZoneNames = new[]\n        {\n            \"example.com\",\n        },\n        IsUiReadOnly = true,\n        LoginDesign = new Cloudflare.Inputs.ZeroTrustOrganizationLoginDesignArgs\n        {\n            BackgroundColor = \"#c5ed1b\",\n            FooterText = \"This is an example description.\",\n            HeaderText = \"This is an example description.\",\n            LogoPath = \"https://example.com/logo.png\",\n            TextColor = \"#c5ed1b\",\n        },\n        MfaConfig = new Cloudflare.Inputs.ZeroTrustOrganizationMfaConfigArgs\n        {\n            AllowedAuthenticators = new[]\n            {\n                \"totp\",\n                \"biometrics\",\n                \"security_key\",\n            },\n            AmrMatchingSessionDuration = \"12h\",\n            RequiredAaguids = \"2fc0579f-8113-47ea-b116-bb5a8db9202a\",\n            SessionDuration = \"24h\",\n        },\n        MfaRequiredForAllApps = false,\n        MfaSshPivKeyRequirements = new Cloudflare.Inputs.ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs\n        {\n            PinPolicy = \"always\",\n            RequireFipsDevice = true,\n            SshKeySizes = new[]\n            {\n                256,\n                2048,\n            },\n            SshKeyTypes = new[]\n            {\n                \"ecdsa\",\n                \"rsa\",\n            },\n            TouchPolicy = \"always\",\n        },\n        Name = \"Widget Corps Internal Applications\",\n        SessionDuration = \"24h\",\n        UiReadOnlyToggleReason = \"Temporarily turn off the UI read only lock to make a change via the UI\",\n        UserSeatExpirationInactiveTime = \"730h\",\n        WarpAuthSessionDuration = \"24h\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustOrganization(ctx, \"example_zero_trust_organization\", \u0026cloudflare.ZeroTrustOrganizationArgs{\n\t\t\tZoneId:                   pulumi.String(\"zone_id\"),\n\t\t\tAllowAuthenticateViaWarp: pulumi.Bool(true),\n\t\t\tAuthDomain:               pulumi.String(\"test.cloudflareaccess.com\"),\n\t\t\tAutoRedirectToIdentity:   pulumi.Bool(true),\n\t\t\tCustomPages: \u0026cloudflare.ZeroTrustOrganizationCustomPagesArgs{\n\t\t\t\tForbidden:      pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\t\tIdentityDenied: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\t},\n\t\t\tDenyUnmatchedRequests: pulumi.Bool(true),\n\t\t\tDenyUnmatchedRequestsExemptedZoneNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t},\n\t\t\tIsUiReadOnly: pulumi.Bool(true),\n\t\t\tLoginDesign: \u0026cloudflare.ZeroTrustOrganizationLoginDesignArgs{\n\t\t\t\tBackgroundColor: pulumi.String(\"#c5ed1b\"),\n\t\t\t\tFooterText:      pulumi.String(\"This is an example description.\"),\n\t\t\t\tHeaderText:      pulumi.String(\"This is an example description.\"),\n\t\t\t\tLogoPath:        pulumi.String(\"https://example.com/logo.png\"),\n\t\t\t\tTextColor:       pulumi.String(\"#c5ed1b\"),\n\t\t\t},\n\t\t\tMfaConfig: \u0026cloudflare.ZeroTrustOrganizationMfaConfigArgs{\n\t\t\t\tAllowedAuthenticators: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"totp\"),\n\t\t\t\t\tpulumi.String(\"biometrics\"),\n\t\t\t\t\tpulumi.String(\"security_key\"),\n\t\t\t\t},\n\t\t\t\tAmrMatchingSessionDuration: pulumi.String(\"12h\"),\n\t\t\t\tRequiredAaguids:            pulumi.String(\"2fc0579f-8113-47ea-b116-bb5a8db9202a\"),\n\t\t\t\tSessionDuration:            pulumi.String(\"24h\"),\n\t\t\t},\n\t\t\tMfaRequiredForAllApps: pulumi.Bool(false),\n\t\t\tMfaSshPivKeyRequirements: \u0026cloudflare.ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs{\n\t\t\t\tPinPolicy:         pulumi.String(\"always\"),\n\t\t\t\tRequireFipsDevice: pulumi.Bool(true),\n\t\t\t\tSshKeySizes: pulumi.IntArray{\n\t\t\t\t\tpulumi.Int(256),\n\t\t\t\t\tpulumi.Int(2048),\n\t\t\t\t},\n\t\t\t\tSshKeyTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"ecdsa\"),\n\t\t\t\t\tpulumi.String(\"rsa\"),\n\t\t\t\t},\n\t\t\t\tTouchPolicy: pulumi.String(\"always\"),\n\t\t\t},\n\t\t\tName:                           pulumi.String(\"Widget Corps Internal Applications\"),\n\t\t\tSessionDuration:                pulumi.String(\"24h\"),\n\t\t\tUiReadOnlyToggleReason:         pulumi.String(\"Temporarily turn off the UI read only lock to make a change via the UI\"),\n\t\t\tUserSeatExpirationInactiveTime: pulumi.String(\"730h\"),\n\t\t\tWarpAuthSessionDuration:        pulumi.String(\"24h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustOrganization;\nimport com.pulumi.cloudflare.ZeroTrustOrganizationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationCustomPagesArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationLoginDesignArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationMfaConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustOrganization = new ZeroTrustOrganization(\"exampleZeroTrustOrganization\", ZeroTrustOrganizationArgs.builder()\n            .zoneId(\"zone_id\")\n            .allowAuthenticateViaWarp(true)\n            .authDomain(\"test.cloudflareaccess.com\")\n            .autoRedirectToIdentity(true)\n            .customPages(ZeroTrustOrganizationCustomPagesArgs.builder()\n                .forbidden(\"699d98642c564d2e855e9661899b7252\")\n                .identityDenied(\"699d98642c564d2e855e9661899b7252\")\n                .build())\n            .denyUnmatchedRequests(true)\n            .denyUnmatchedRequestsExemptedZoneNames(\"example.com\")\n            .isUiReadOnly(true)\n            .loginDesign(ZeroTrustOrganizationLoginDesignArgs.builder()\n                .backgroundColor(\"#c5ed1b\")\n                .footerText(\"This is an example description.\")\n                .headerText(\"This is an example description.\")\n                .logoPath(\"https://example.com/logo.png\")\n                .textColor(\"#c5ed1b\")\n                .build())\n            .mfaConfig(ZeroTrustOrganizationMfaConfigArgs.builder()\n                .allowedAuthenticators(                \n                    \"totp\",\n                    \"biometrics\",\n                    \"security_key\")\n                .amrMatchingSessionDuration(\"12h\")\n                .requiredAaguids(\"2fc0579f-8113-47ea-b116-bb5a8db9202a\")\n                .sessionDuration(\"24h\")\n                .build())\n            .mfaRequiredForAllApps(false)\n            .mfaSshPivKeyRequirements(ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs.builder()\n                .pinPolicy(\"always\")\n                .requireFipsDevice(true)\n                .sshKeySizes(                \n                    256,\n                    2048)\n                .sshKeyTypes(                \n                    \"ecdsa\",\n                    \"rsa\")\n                .touchPolicy(\"always\")\n                .build())\n            .name(\"Widget Corps Internal Applications\")\n            .sessionDuration(\"24h\")\n            .uiReadOnlyToggleReason(\"Temporarily turn off the UI read only lock to make a change via the UI\")\n            .userSeatExpirationInactiveTime(\"730h\")\n            .warpAuthSessionDuration(\"24h\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustOrganization:\n    type: cloudflare:ZeroTrustOrganization\n    name: example_zero_trust_organization\n    properties:\n      zoneId: zone_id\n      allowAuthenticateViaWarp: true\n      authDomain: test.cloudflareaccess.com\n      autoRedirectToIdentity: true\n      customPages:\n        forbidden: 699d98642c564d2e855e9661899b7252\n        identityDenied: 699d98642c564d2e855e9661899b7252\n      denyUnmatchedRequests: true\n      denyUnmatchedRequestsExemptedZoneNames:\n        - example.com\n      isUiReadOnly: true\n      loginDesign:\n        backgroundColor: '#c5ed1b'\n        footerText: This is an example description.\n        headerText: This is an example description.\n        logoPath: https://example.com/logo.png\n        textColor: '#c5ed1b'\n      mfaConfig:\n        allowedAuthenticators:\n          - totp\n          - biometrics\n          - security_key\n        amrMatchingSessionDuration: 12h\n        requiredAaguids: 2fc0579f-8113-47ea-b116-bb5a8db9202a\n        sessionDuration: 24h\n      mfaRequiredForAllApps: false\n      mfaSshPivKeyRequirements:\n        pinPolicy: always\n        requireFipsDevice: true\n        sshKeySizes:\n          - 256\n          - 2048\n        sshKeyTypes:\n          - ecdsa\n          - rsa\n        touchPolicy: always\n      name: Widget Corps Internal Applications\n      sessionDuration: 24h\n      uiReadOnlyToggleReason: Temporarily turn off the UI read only lock to make a change via the UI\n      userSeatExpirationInactiveTime: 730h\n      warpAuthSessionDuration: 24h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n"
                },
                "authDomain": {
                    "type": "string",
                    "description": "The unique subdomain assigned to your Zero Trust organization.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n"
                },
                "customPages": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationCustomPages:AccessOrganizationCustomPages"
                },
                "denyUnmatchedRequests": {
                    "type": "boolean",
                    "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n"
                },
                "denyUnmatchedRequestsExemptedZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n"
                },
                "isUiReadOnly": {
                    "type": "boolean",
                    "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n"
                },
                "loginDesign": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationLoginDesign:AccessOrganizationLoginDesign"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationMfaConfig:AccessOrganizationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                },
                "mfaConfigurationAllowed": {
                    "type": "boolean",
                    "description": "Indicates if this organization can enforce multi-factor authentication (MFA) requirements at the application and policy level.\n"
                },
                "mfaRequiredForAllApps": {
                    "type": "boolean",
                    "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n"
                },
                "mfaSshPivKeyRequirements": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationMfaSshPivKeyRequirements:AccessOrganizationMfaSshPivKeyRequirements",
                    "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of your Zero Trust organization.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "uiReadOnlyToggleReason": {
                    "type": "string",
                    "description": "A description of the reason why the UI read only field is being toggled.\n"
                },
                "userSeatExpirationInactiveTime": {
                    "type": "string",
                    "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n"
                },
                "warpAuthSessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "allowAuthenticateViaWarp",
                "autoRedirectToIdentity",
                "isUiReadOnly",
                "mfaConfigurationAllowed",
                "mfaRequiredForAllApps",
                "uiReadOnlyToggleReason"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n"
                },
                "authDomain": {
                    "type": "string",
                    "description": "The unique subdomain assigned to your Zero Trust organization.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n"
                },
                "customPages": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationCustomPages:AccessOrganizationCustomPages"
                },
                "denyUnmatchedRequests": {
                    "type": "boolean",
                    "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n"
                },
                "denyUnmatchedRequestsExemptedZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n"
                },
                "isUiReadOnly": {
                    "type": "boolean",
                    "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n"
                },
                "loginDesign": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationLoginDesign:AccessOrganizationLoginDesign"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationMfaConfig:AccessOrganizationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                },
                "mfaConfigurationAllowed": {
                    "type": "boolean",
                    "description": "Indicates if this organization can enforce multi-factor authentication (MFA) requirements at the application and policy level.\n"
                },
                "mfaRequiredForAllApps": {
                    "type": "boolean",
                    "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n"
                },
                "mfaSshPivKeyRequirements": {
                    "$ref": "#/types/cloudflare:index/AccessOrganizationMfaSshPivKeyRequirements:AccessOrganizationMfaSshPivKeyRequirements",
                    "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of your Zero Trust organization.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "uiReadOnlyToggleReason": {
                    "type": "string",
                    "description": "A description of the reason why the UI read only field is being toggled.\n"
                },
                "userSeatExpirationInactiveTime": {
                    "type": "string",
                    "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n"
                },
                "warpAuthSessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessOrganization resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "allowAuthenticateViaWarp": {
                        "type": "boolean",
                        "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n"
                    },
                    "authDomain": {
                        "type": "string",
                        "description": "The unique subdomain assigned to your Zero Trust organization.\n"
                    },
                    "autoRedirectToIdentity": {
                        "type": "boolean",
                        "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n"
                    },
                    "customPages": {
                        "$ref": "#/types/cloudflare:index/AccessOrganizationCustomPages:AccessOrganizationCustomPages"
                    },
                    "denyUnmatchedRequests": {
                        "type": "boolean",
                        "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n"
                    },
                    "denyUnmatchedRequestsExemptedZoneNames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n"
                    },
                    "isUiReadOnly": {
                        "type": "boolean",
                        "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n"
                    },
                    "loginDesign": {
                        "$ref": "#/types/cloudflare:index/AccessOrganizationLoginDesign:AccessOrganizationLoginDesign"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/AccessOrganizationMfaConfig:AccessOrganizationMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                    },
                    "mfaConfigurationAllowed": {
                        "type": "boolean",
                        "description": "Indicates if this organization can enforce multi-factor authentication (MFA) requirements at the application and policy level.\n"
                    },
                    "mfaRequiredForAllApps": {
                        "type": "boolean",
                        "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n"
                    },
                    "mfaSshPivKeyRequirements": {
                        "$ref": "#/types/cloudflare:index/AccessOrganizationMfaSshPivKeyRequirements:AccessOrganizationMfaSshPivKeyRequirements",
                        "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of your Zero Trust organization.\n"
                    },
                    "sessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                    },
                    "uiReadOnlyToggleReason": {
                        "type": "string",
                        "description": "A description of the reason why the UI read only field is being toggled.\n"
                    },
                    "userSeatExpirationInactiveTime": {
                        "type": "string",
                        "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n"
                    },
                    "warpAuthSessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessOrganization:AccessOrganization"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessorganization.AccessOrganization has been deprecated in favor of cloudflare.index/zerotrustorganization.ZeroTrustOrganization"
        },
        "cloudflare:index/accessPolicy:AccessPolicy": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessPolicy = new cloudflare.ZeroTrustAccessPolicy(\"example_zero_trust_access_policy\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    decision: \"allow\",\n    includes: [{\n        certificate: {},\n    }],\n    name: \"Allow devs\",\n    approvalGroups: [\n        {\n            approvalsNeeded: 1,\n            emailAddresses: [\n                \"test1@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            emailListUuid: \"email_list_uuid\",\n        },\n        {\n            approvalsNeeded: 3,\n            emailAddresses: [\n                \"test@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            emailListUuid: \"597147a1-976b-4ef2-9af0-81d5d007fc34\",\n        },\n    ],\n    approvalRequired: true,\n    connectionRules: {\n        rdp: {\n            allowedClipboardLocalToRemoteFormats: [\"text\"],\n            allowedClipboardRemoteToLocalFormats: [\"text\"],\n        },\n    },\n    excludes: [{\n        certificate: {},\n    }],\n    isolationRequired: false,\n    mfaConfig: {\n        allowedAuthenticators: [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        mfaDisabled: false,\n        sessionDuration: \"24h\",\n    },\n    purposeJustificationPrompt: \"Please enter a justification for entering this protected domain.\",\n    purposeJustificationRequired: true,\n    requires: [{\n        certificate: {},\n    }],\n    sessionDuration: \"24h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_policy = cloudflare.ZeroTrustAccessPolicy(\"example_zero_trust_access_policy\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    decision=\"allow\",\n    includes=[{\n        \"certificate\": {},\n    }],\n    name=\"Allow devs\",\n    approval_groups=[\n        {\n            \"approvals_needed\": 1,\n            \"email_addresses\": [\n                \"test1@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            \"email_list_uuid\": \"email_list_uuid\",\n        },\n        {\n            \"approvals_needed\": 3,\n            \"email_addresses\": [\n                \"test@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            \"email_list_uuid\": \"597147a1-976b-4ef2-9af0-81d5d007fc34\",\n        },\n    ],\n    approval_required=True,\n    connection_rules={\n        \"rdp\": {\n            \"allowed_clipboard_local_to_remote_formats\": [\"text\"],\n            \"allowed_clipboard_remote_to_local_formats\": [\"text\"],\n        },\n    },\n    excludes=[{\n        \"certificate\": {},\n    }],\n    isolation_required=False,\n    mfa_config={\n        \"allowed_authenticators\": [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        \"mfa_disabled\": False,\n        \"session_duration\": \"24h\",\n    },\n    purpose_justification_prompt=\"Please enter a justification for entering this protected domain.\",\n    purpose_justification_required=True,\n    requires=[{\n        \"certificate\": {},\n    }],\n    session_duration=\"24h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessPolicy = new Cloudflare.Index.ZeroTrustAccessPolicy(\"example_zero_trust_access_policy\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Decision = \"allow\",\n        Includes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyIncludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        Name = \"Allow devs\",\n        ApprovalGroups = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyApprovalGroupArgs\n            {\n                ApprovalsNeeded = 1,\n                EmailAddresses = new[]\n                {\n                    \"test1@cloudflare.com\",\n                    \"test2@cloudflare.com\",\n                },\n                EmailListUuid = \"email_list_uuid\",\n            },\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyApprovalGroupArgs\n            {\n                ApprovalsNeeded = 3,\n                EmailAddresses = new[]\n                {\n                    \"test@cloudflare.com\",\n                    \"test2@cloudflare.com\",\n                },\n                EmailListUuid = \"597147a1-976b-4ef2-9af0-81d5d007fc34\",\n            },\n        },\n        ApprovalRequired = true,\n        ConnectionRules = new Cloudflare.Inputs.ZeroTrustAccessPolicyConnectionRulesArgs\n        {\n            Rdp = new Cloudflare.Inputs.ZeroTrustAccessPolicyConnectionRulesRdpArgs\n            {\n                AllowedClipboardLocalToRemoteFormats = new[]\n                {\n                    \"text\",\n                },\n                AllowedClipboardRemoteToLocalFormats = new[]\n                {\n                    \"text\",\n                },\n            },\n        },\n        Excludes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyExcludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        IsolationRequired = false,\n        MfaConfig = new Cloudflare.Inputs.ZeroTrustAccessPolicyMfaConfigArgs\n        {\n            AllowedAuthenticators = new[]\n            {\n                \"totp\",\n                \"biometrics\",\n                \"security_key\",\n            },\n            MfaDisabled = false,\n            SessionDuration = \"24h\",\n        },\n        PurposeJustificationPrompt = \"Please enter a justification for entering this protected domain.\",\n        PurposeJustificationRequired = true,\n        Requires = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyRequireArgs\n            {\n                Certificate = null,\n            },\n        },\n        SessionDuration = \"24h\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessPolicy(ctx, \"example_zero_trust_access_policy\", \u0026cloudflare.ZeroTrustAccessPolicyArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDecision:  pulumi.String(\"allow\"),\n\t\t\tIncludes: cloudflare.ZeroTrustAccessPolicyIncludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyIncludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessPolicyIncludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"Allow devs\"),\n\t\t\tApprovalGroups: cloudflare.ZeroTrustAccessPolicyApprovalGroupArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyApprovalGroupArgs{\n\t\t\t\t\tApprovalsNeeded: pulumi.Float64(1),\n\t\t\t\t\tEmailAddresses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"test1@cloudflare.com\"),\n\t\t\t\t\t\tpulumi.String(\"test2@cloudflare.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tEmailListUuid: pulumi.String(\"email_list_uuid\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyApprovalGroupArgs{\n\t\t\t\t\tApprovalsNeeded: pulumi.Float64(3),\n\t\t\t\t\tEmailAddresses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"test@cloudflare.com\"),\n\t\t\t\t\t\tpulumi.String(\"test2@cloudflare.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tEmailListUuid: pulumi.String(\"597147a1-976b-4ef2-9af0-81d5d007fc34\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tApprovalRequired: pulumi.Bool(true),\n\t\t\tConnectionRules: \u0026cloudflare.ZeroTrustAccessPolicyConnectionRulesArgs{\n\t\t\t\tRdp: \u0026cloudflare.ZeroTrustAccessPolicyConnectionRulesRdpArgs{\n\t\t\t\t\tAllowedClipboardLocalToRemoteFormats: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"text\"),\n\t\t\t\t\t},\n\t\t\t\t\tAllowedClipboardRemoteToLocalFormats: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"text\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tExcludes: cloudflare.ZeroTrustAccessPolicyExcludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyExcludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessPolicyExcludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsolationRequired: pulumi.Bool(false),\n\t\t\tMfaConfig: \u0026cloudflare.ZeroTrustAccessPolicyMfaConfigArgs{\n\t\t\t\tAllowedAuthenticators: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"totp\"),\n\t\t\t\t\tpulumi.String(\"biometrics\"),\n\t\t\t\t\tpulumi.String(\"security_key\"),\n\t\t\t\t},\n\t\t\t\tMfaDisabled:     pulumi.Bool(false),\n\t\t\t\tSessionDuration: pulumi.String(\"24h\"),\n\t\t\t},\n\t\t\tPurposeJustificationPrompt:   pulumi.String(\"Please enter a justification for entering this protected domain.\"),\n\t\t\tPurposeJustificationRequired: pulumi.Bool(true),\n\t\t\tRequires: cloudflare.ZeroTrustAccessPolicyRequireArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyRequireArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessPolicyRequireCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSessionDuration: pulumi.String(\"24h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessPolicy;\nimport com.pulumi.cloudflare.ZeroTrustAccessPolicyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyIncludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyIncludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyApprovalGroupArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyConnectionRulesArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyConnectionRulesRdpArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyExcludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyExcludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyMfaConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyRequireArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyRequireCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessPolicy = new ZeroTrustAccessPolicy(\"exampleZeroTrustAccessPolicy\", ZeroTrustAccessPolicyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .decision(\"allow\")\n            .includes(ZeroTrustAccessPolicyIncludeArgs.builder()\n                .certificate(ZeroTrustAccessPolicyIncludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .name(\"Allow devs\")\n            .approvalGroups(            \n                ZeroTrustAccessPolicyApprovalGroupArgs.builder()\n                    .approvalsNeeded(1.0)\n                    .emailAddresses(                    \n                        \"test1@cloudflare.com\",\n                        \"test2@cloudflare.com\")\n                    .emailListUuid(\"email_list_uuid\")\n                    .build(),\n                ZeroTrustAccessPolicyApprovalGroupArgs.builder()\n                    .approvalsNeeded(3.0)\n                    .emailAddresses(                    \n                        \"test@cloudflare.com\",\n                        \"test2@cloudflare.com\")\n                    .emailListUuid(\"597147a1-976b-4ef2-9af0-81d5d007fc34\")\n                    .build())\n            .approvalRequired(true)\n            .connectionRules(ZeroTrustAccessPolicyConnectionRulesArgs.builder()\n                .rdp(ZeroTrustAccessPolicyConnectionRulesRdpArgs.builder()\n                    .allowedClipboardLocalToRemoteFormats(\"text\")\n                    .allowedClipboardRemoteToLocalFormats(\"text\")\n                    .build())\n                .build())\n            .excludes(ZeroTrustAccessPolicyExcludeArgs.builder()\n                .certificate(ZeroTrustAccessPolicyExcludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .isolationRequired(false)\n            .mfaConfig(ZeroTrustAccessPolicyMfaConfigArgs.builder()\n                .allowedAuthenticators(                \n                    \"totp\",\n                    \"biometrics\",\n                    \"security_key\")\n                .mfaDisabled(false)\n                .sessionDuration(\"24h\")\n                .build())\n            .purposeJustificationPrompt(\"Please enter a justification for entering this protected domain.\")\n            .purposeJustificationRequired(true)\n            .requires(ZeroTrustAccessPolicyRequireArgs.builder()\n                .certificate(ZeroTrustAccessPolicyRequireCertificateArgs.builder()\n                    .build())\n                .build())\n            .sessionDuration(\"24h\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessPolicy:\n    type: cloudflare:ZeroTrustAccessPolicy\n    name: example_zero_trust_access_policy\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      decision: allow\n      includes:\n        - certificate: {}\n      name: Allow devs\n      approvalGroups:\n        - approvalsNeeded: 1\n          emailAddresses:\n            - test1@cloudflare.com\n            - test2@cloudflare.com\n          emailListUuid: email_list_uuid\n        - approvalsNeeded: 3\n          emailAddresses:\n            - test@cloudflare.com\n            - test2@cloudflare.com\n          emailListUuid: 597147a1-976b-4ef2-9af0-81d5d007fc34\n      approvalRequired: true\n      connectionRules:\n        rdp:\n          allowedClipboardLocalToRemoteFormats:\n            - text\n          allowedClipboardRemoteToLocalFormats:\n            - text\n      excludes:\n        - certificate: {}\n      isolationRequired: false\n      mfaConfig:\n        allowedAuthenticators:\n          - totp\n          - biometrics\n          - security_key\n        mfaDisabled: false\n        sessionDuration: 24h\n      purposeJustificationPrompt: Please enter a justification for entering this protected domain.\n      purposeJustificationRequired: true\n      requires:\n        - certificate: {}\n      sessionDuration: 24h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessPolicy:AccessPolicy example '\u003caccount_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyApprovalGroup:AccessPolicyApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyConnectionRules:AccessPolicyConnectionRules",
                    "description": "The rules that define how users may connect to targets secured by your application.\n"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyExclude:AccessPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyInclude:AccessPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyMfaConfig:AccessPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyRequire:AccessPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                }
            },
            "required": [
                "decision",
                "includes",
                "name",
                "sessionDuration"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyApprovalGroup:AccessPolicyApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyConnectionRules:AccessPolicyConnectionRules",
                    "description": "The rules that define how users may connect to targets secured by your application.\n"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyExclude:AccessPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyInclude:AccessPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/AccessPolicyMfaConfig:AccessPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyRequire:AccessPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                }
            },
            "requiredInputs": [
                "decision",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessPolicy resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "approvalGroups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessPolicyApprovalGroup:AccessPolicyApprovalGroup"
                        },
                        "description": "Administrators who can approve a temporary authentication request.\n"
                    },
                    "approvalRequired": {
                        "type": "boolean",
                        "description": "Requires the user to request access from an administrator at the start of each session.\n"
                    },
                    "connectionRules": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyConnectionRules:AccessPolicyConnectionRules",
                        "description": "The rules that define how users may connect to targets secured by your application.\n"
                    },
                    "decision": {
                        "type": "string",
                        "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                    },
                    "excludes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessPolicyExclude:AccessPolicyExclude"
                        },
                        "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                    },
                    "includes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessPolicyInclude:AccessPolicyInclude"
                        },
                        "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                    },
                    "isolationRequired": {
                        "type": "boolean",
                        "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/AccessPolicyMfaConfig:AccessPolicyMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Access policy.\n"
                    },
                    "purposeJustificationPrompt": {
                        "type": "string",
                        "description": "A custom message that will appear on the purpose justification screen.\n"
                    },
                    "purposeJustificationRequired": {
                        "type": "boolean",
                        "description": "Require users to enter a justification when they log in to the application.\n"
                    },
                    "requires": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccessPolicyRequire:AccessPolicyRequire"
                        },
                        "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                    },
                    "sessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessPolicy:AccessPolicy"
                }
            ],
            "deprecationMessage": "cloudflare.index/accesspolicy.AccessPolicy has been deprecated in favor of cloudflare.index/zerotrustaccesspolicy.ZeroTrustAccessPolicy"
        },
        "cloudflare:index/accessRule:AccessRule": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccessRule = new cloudflare.AccessRule(\"example_access_rule\", {\n    configuration: {\n        target: \"ip\",\n        value: \"198.51.100.4\",\n    },\n    mode: \"challenge\",\n    zoneId: \"zone_id\",\n    notes: \"This rule is enabled because of an event that occurred on date X.\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_access_rule = cloudflare.AccessRule(\"example_access_rule\",\n    configuration={\n        \"target\": \"ip\",\n        \"value\": \"198.51.100.4\",\n    },\n    mode=\"challenge\",\n    zone_id=\"zone_id\",\n    notes=\"This rule is enabled because of an event that occurred on date X.\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccessRule = new Cloudflare.Index.AccessRule(\"example_access_rule\", new()\n    {\n        Configuration = new Cloudflare.Inputs.AccessRuleConfigurationArgs\n        {\n            Target = \"ip\",\n            Value = \"198.51.100.4\",\n        },\n        Mode = \"challenge\",\n        ZoneId = \"zone_id\",\n        Notes = \"This rule is enabled because of an event that occurred on date X.\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAccessRule(ctx, \"example_access_rule\", \u0026cloudflare.AccessRuleArgs{\n\t\t\tConfiguration: \u0026cloudflare.AccessRuleConfigurationArgs{\n\t\t\t\tTarget: pulumi.String(\"ip\"),\n\t\t\t\tValue:  pulumi.String(\"198.51.100.4\"),\n\t\t\t},\n\t\t\tMode:   pulumi.String(\"challenge\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t\tNotes:  pulumi.String(\"This rule is enabled because of an event that occurred on date X.\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AccessRule;\nimport com.pulumi.cloudflare.AccessRuleArgs;\nimport com.pulumi.cloudflare.inputs.AccessRuleConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccessRule = new AccessRule(\"exampleAccessRule\", AccessRuleArgs.builder()\n            .configuration(AccessRuleConfigurationArgs.builder()\n                .target(\"ip\")\n                .value(\"198.51.100.4\")\n                .build())\n            .mode(\"challenge\")\n            .zoneId(\"zone_id\")\n            .notes(\"This rule is enabled because of an event that occurred on date X.\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccessRule:\n    type: cloudflare:AccessRule\n    name: example_access_rule\n    properties:\n      configuration:\n        target: ip\n        value: 198.51.100.4\n      mode: challenge\n      zoneId: zone_id\n      notes: This rule is enabled because of an event that occurred on date X.\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessRule:AccessRule example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowedModes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The available actions that a rule can apply to a matched request.\n"
                },
                "configuration": {
                    "$ref": "#/types/cloudflare:index/AccessRuleConfiguration:AccessRuleConfiguration",
                    "description": "The rule configuration.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was created.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was last modified.\n"
                },
                "notes": {
                    "type": "string",
                    "description": "An informative summary of the rule, typically used as a reminder or explanation.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/AccessRuleScope:AccessRuleScope",
                    "description": "All zones owned by the user will have the rule applied.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "allowedModes",
                "configuration",
                "createdOn",
                "mode",
                "modifiedOn",
                "notes",
                "scope"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "configuration": {
                    "$ref": "#/types/cloudflare:index/AccessRuleConfiguration:AccessRuleConfiguration",
                    "description": "The rule configuration.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "notes": {
                    "type": "string",
                    "description": "An informative summary of the rule, typically used as a reminder or explanation.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "configuration",
                "mode"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "allowedModes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The available actions that a rule can apply to a matched request.\n"
                    },
                    "configuration": {
                        "$ref": "#/types/cloudflare:index/AccessRuleConfiguration:AccessRuleConfiguration",
                        "description": "The rule configuration.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The timestamp of when the rule was created.\n"
                    },
                    "mode": {
                        "type": "string",
                        "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The timestamp of when the rule was last modified.\n"
                    },
                    "notes": {
                        "type": "string",
                        "description": "An informative summary of the rule, typically used as a reminder or explanation.\n"
                    },
                    "scope": {
                        "$ref": "#/types/cloudflare:index/AccessRuleScope:AccessRuleScope",
                        "description": "All zones owned by the user will have the rule applied.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/accessServiceToken:AccessServiceToken": {
            "description": "Accepted Permissions\n\n- `Access: Service Tokens Read`\n- `Access: Service Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessServiceToken = new cloudflare.ZeroTrustAccessServiceToken(\"example_zero_trust_access_service_token\", {\n    name: \"CI/CD token\",\n    zoneId: \"zone_id\",\n    clientSecretVersion: 0,\n    duration: \"60m\",\n    previousClientSecretExpiresAt: \"2014-01-01T05:20:00.12345Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_service_token = cloudflare.ZeroTrustAccessServiceToken(\"example_zero_trust_access_service_token\",\n    name=\"CI/CD token\",\n    zone_id=\"zone_id\",\n    client_secret_version=0,\n    duration=\"60m\",\n    previous_client_secret_expires_at=\"2014-01-01T05:20:00.12345Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessServiceToken = new Cloudflare.Index.ZeroTrustAccessServiceToken(\"example_zero_trust_access_service_token\", new()\n    {\n        Name = \"CI/CD token\",\n        ZoneId = \"zone_id\",\n        ClientSecretVersion = 0,\n        Duration = \"60m\",\n        PreviousClientSecretExpiresAt = \"2014-01-01T05:20:00.12345Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessServiceToken(ctx, \"example_zero_trust_access_service_token\", \u0026cloudflare.ZeroTrustAccessServiceTokenArgs{\n\t\t\tName:                          pulumi.String(\"CI/CD token\"),\n\t\t\tZoneId:                        pulumi.String(\"zone_id\"),\n\t\t\tClientSecretVersion:           pulumi.Float64(0),\n\t\t\tDuration:                      pulumi.String(\"60m\"),\n\t\t\tPreviousClientSecretExpiresAt: pulumi.String(\"2014-01-01T05:20:00.12345Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessServiceToken;\nimport com.pulumi.cloudflare.ZeroTrustAccessServiceTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessServiceToken = new ZeroTrustAccessServiceToken(\"exampleZeroTrustAccessServiceToken\", ZeroTrustAccessServiceTokenArgs.builder()\n            .name(\"CI/CD token\")\n            .zoneId(\"zone_id\")\n            .clientSecretVersion(0.0)\n            .duration(\"60m\")\n            .previousClientSecretExpiresAt(\"2014-01-01T05:20:00.12345Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessServiceToken:\n    type: cloudflare:ZeroTrustAccessServiceToken\n    name: example_zero_trust_access_service_token\n    properties:\n      name: CI/CD token\n      zoneId: zone_id\n      clientSecretVersion: 0\n      duration: 60m\n      previousClientSecretExpiresAt: 2014-01-01T05:20:00.12345Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessServiceToken:AccessServiceToken example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cservice_token_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The Client Secret for the service token. Access will check for this value in the `CF-Access-Client-Secret` request header.\n",
                    "secret": true
                },
                "clientSecretVersion": {
                    "type": "number",
                    "description": "A version number identifying the current \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by \u003cspan pulumi-lang-nodejs=\"`previousClientSecretExpiresAt`\" pulumi-lang-dotnet=\"`PreviousClientSecretExpiresAt`\" pulumi-lang-go=\"`previousClientSecretExpiresAt`\" pulumi-lang-python=\"`previous_client_secret_expires_at`\" pulumi-lang-yaml=\"`previousClientSecretExpiresAt`\" pulumi-lang-java=\"`previousClientSecretExpiresAt`\"\u003e`previousClientSecretExpiresAt`\u003c/span\u003e.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                },
                "expiresAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the service token.\n"
                },
                "previousClientSecretExpiresAt": {
                    "type": "string",
                    "description": "The expiration of the previous \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "clientId",
                "clientSecret",
                "clientSecretVersion",
                "duration",
                "expiresAt",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "clientSecretVersion": {
                    "type": "number",
                    "description": "A version number identifying the current \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by \u003cspan pulumi-lang-nodejs=\"`previousClientSecretExpiresAt`\" pulumi-lang-dotnet=\"`PreviousClientSecretExpiresAt`\" pulumi-lang-go=\"`previousClientSecretExpiresAt`\" pulumi-lang-python=\"`previous_client_secret_expires_at`\" pulumi-lang-yaml=\"`previousClientSecretExpiresAt`\" pulumi-lang-java=\"`previousClientSecretExpiresAt`\"\u003e`previousClientSecretExpiresAt`\u003c/span\u003e.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the service token.\n"
                },
                "previousClientSecretExpiresAt": {
                    "type": "string",
                    "description": "The expiration of the previous \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessServiceToken resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "clientId": {
                        "type": "string",
                        "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header.\n"
                    },
                    "clientSecret": {
                        "type": "string",
                        "description": "The Client Secret for the service token. Access will check for this value in the `CF-Access-Client-Secret` request header.\n",
                        "secret": true
                    },
                    "clientSecretVersion": {
                        "type": "number",
                        "description": "A version number identifying the current \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by \u003cspan pulumi-lang-nodejs=\"`previousClientSecretExpiresAt`\" pulumi-lang-dotnet=\"`PreviousClientSecretExpiresAt`\" pulumi-lang-go=\"`previousClientSecretExpiresAt`\" pulumi-lang-python=\"`previous_client_secret_expires_at`\" pulumi-lang-yaml=\"`previousClientSecretExpiresAt`\" pulumi-lang-java=\"`previousClientSecretExpiresAt`\"\u003e`previousClientSecretExpiresAt`\u003c/span\u003e.\n"
                    },
                    "duration": {
                        "type": "string",
                        "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                    },
                    "expiresAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the service token.\n"
                    },
                    "previousClientSecretExpiresAt": {
                        "type": "string",
                        "description": "The expiration of the previous \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessServiceToken:AccessServiceToken"
                }
            ],
            "deprecationMessage": "cloudflare.index/accessservicetoken.AccessServiceToken has been deprecated in favor of cloudflare.index/zerotrustaccessservicetoken.ZeroTrustAccessServiceToken"
        },
        "cloudflare:index/accessTag:AccessTag": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessTag = new cloudflare.ZeroTrustAccessTag(\"example_zero_trust_access_tag\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"engineers\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_tag = cloudflare.ZeroTrustAccessTag(\"example_zero_trust_access_tag\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"engineers\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessTag = new Cloudflare.Index.ZeroTrustAccessTag(\"example_zero_trust_access_tag\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"engineers\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessTag(ctx, \"example_zero_trust_access_tag\", \u0026cloudflare.ZeroTrustAccessTagArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"engineers\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessTag;\nimport com.pulumi.cloudflare.ZeroTrustAccessTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessTag = new ZeroTrustAccessTag(\"exampleZeroTrustAccessTag\", ZeroTrustAccessTagArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"engineers\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessTag:\n    type: cloudflare:ZeroTrustAccessTag\n    name: example_zero_trust_access_tag\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: engineers\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accessTag:AccessTag example '\u003caccount_id\u003e/\u003ctag_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tag\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tag\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccessTag resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the tag\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessTag:AccessTag"
                }
            ],
            "deprecationMessage": "cloudflare.index/accesstag.AccessTag has been deprecated in favor of cloudflare.index/zerotrustaccesstag.ZeroTrustAccessTag"
        },
        "cloudflare:index/account:Account": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Billing Read`\n- `Billing Write`\n- `DDoS Botnet Feed Read`\n- `DDoS Botnet Feed Write`\n- `DDoS Protection Read`\n- `DDoS Protection Write`\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n- `DNS View Read`\n- `DNS View Write`\n- `Load Balancers Account Read`\n- `Load Balancers Account Write`\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n- `SCIM Provisioning`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccount = new cloudflare.Account(\"example_account\", {\n    name: \"name\",\n    type: \"standard\",\n    unit: {\n        id: \"f267e341f3dd4697bd3b9f71dd96247f\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account = cloudflare.Account(\"example_account\",\n    name=\"name\",\n    type=\"standard\",\n    unit={\n        \"id\": \"f267e341f3dd4697bd3b9f71dd96247f\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccount = new Cloudflare.Index.Account(\"example_account\", new()\n    {\n        Name = \"name\",\n        Type = \"standard\",\n        Unit = new Cloudflare.Inputs.AccountUnitArgs\n        {\n            Id = \"f267e341f3dd4697bd3b9f71dd96247f\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAccount(ctx, \"example_account\", \u0026cloudflare.AccountArgs{\n\t\t\tName: pulumi.String(\"name\"),\n\t\t\tType: pulumi.String(\"standard\"),\n\t\t\tUnit: \u0026cloudflare.AccountUnitArgs{\n\t\t\t\tId: pulumi.String(\"f267e341f3dd4697bd3b9f71dd96247f\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Account;\nimport com.pulumi.cloudflare.AccountArgs;\nimport com.pulumi.cloudflare.inputs.AccountUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder()\n            .name(\"name\")\n            .type(\"standard\")\n            .unit(AccountUnitArgs.builder()\n                .id(\"f267e341f3dd4697bd3b9f71dd96247f\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccount:\n    type: cloudflare:Account\n    name: example_account\n    properties:\n      name: name\n      type: standard\n      unit:\n        id: f267e341f3dd4697bd3b9f71dd96247f\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/account:Account example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "Timestamp for the creation of the account\n"
                },
                "managedBy": {
                    "$ref": "#/types/cloudflare:index/AccountManagedBy:AccountManagedBy",
                    "description": "Parent container details\n"
                },
                "name": {
                    "type": "string",
                    "description": "Account name\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/AccountSettings:AccountSettings",
                    "description": "Account settings\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"standard\", \"enterprise\".\n",
                    "deprecationMessage": "The 'type' field should no longer be set through the API."
                },
                "unit": {
                    "$ref": "#/types/cloudflare:index/AccountUnit:AccountUnit",
                    "description": "information related to the tenant unit, and optionally, an id of the unit to create the account on. see https://developers.cloudflare.com/tenant/how-to/manage-accounts/\n"
                }
            },
            "required": [
                "createdOn",
                "managedBy",
                "name",
                "settings",
                "type",
                "unit"
            ],
            "inputProperties": {
                "managedBy": {
                    "$ref": "#/types/cloudflare:index/AccountManagedBy:AccountManagedBy",
                    "description": "Parent container details\n"
                },
                "name": {
                    "type": "string",
                    "description": "Account name\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/AccountSettings:AccountSettings",
                    "description": "Account settings\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"standard\", \"enterprise\".\n",
                    "deprecationMessage": "The 'type' field should no longer be set through the API."
                },
                "unit": {
                    "$ref": "#/types/cloudflare:index/AccountUnit:AccountUnit",
                    "description": "information related to the tenant unit, and optionally, an id of the unit to create the account on. see https://developers.cloudflare.com/tenant/how-to/manage-accounts/\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Account resources.\n",
                "properties": {
                    "createdOn": {
                        "type": "string",
                        "description": "Timestamp for the creation of the account\n"
                    },
                    "managedBy": {
                        "$ref": "#/types/cloudflare:index/AccountManagedBy:AccountManagedBy",
                        "description": "Parent container details\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Account name\n"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/AccountSettings:AccountSettings",
                        "description": "Account settings\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"standard\", \"enterprise\".\n",
                        "deprecationMessage": "The 'type' field should no longer be set through the API."
                    },
                    "unit": {
                        "$ref": "#/types/cloudflare:index/AccountUnit:AccountUnit",
                        "description": "information related to the tenant unit, and optionally, an id of the unit to create the account on. see https://developers.cloudflare.com/tenant/how-to/manage-accounts/\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/accountDnsSettings:AccountDnsSettings": {
            "description": "Accepted Permissions\n\n- `Account DNS Settings Read`\n- `Account DNS Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountDnsSettings = new cloudflare.AccountDnsSettings(\"example_account_dns_settings\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    enforceDnsOnly: false,\n    zoneDefaults: {\n        flattenAllCnames: false,\n        foundationDns: false,\n        internalDns: {\n            referenceZoneId: \"reference_zone_id\",\n        },\n        multiProvider: false,\n        nameservers: {\n            type: \"cloudflare.standard\",\n        },\n        nsTtl: 86400,\n        secondaryOverrides: false,\n        soa: {\n            expire: 604800,\n            minTtl: 1800,\n            mname: \"kristina.ns.cloudflare.com\",\n            refresh: 10000,\n            retry: 2400,\n            rname: \"admin.example.com\",\n            ttl: 3600,\n        },\n        zoneMode: \"dns_only\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_dns_settings = cloudflare.AccountDnsSettings(\"example_account_dns_settings\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    enforce_dns_only=False,\n    zone_defaults={\n        \"flatten_all_cnames\": False,\n        \"foundation_dns\": False,\n        \"internal_dns\": {\n            \"reference_zone_id\": \"reference_zone_id\",\n        },\n        \"multi_provider\": False,\n        \"nameservers\": {\n            \"type\": \"cloudflare.standard\",\n        },\n        \"ns_ttl\": 86400,\n        \"secondary_overrides\": False,\n        \"soa\": {\n            \"expire\": 604800,\n            \"min_ttl\": 1800,\n            \"mname\": \"kristina.ns.cloudflare.com\",\n            \"refresh\": 10000,\n            \"retry\": 2400,\n            \"rname\": \"admin.example.com\",\n            \"ttl\": 3600,\n        },\n        \"zone_mode\": \"dns_only\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountDnsSettings = new Cloudflare.Index.AccountDnsSettings(\"example_account_dns_settings\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        EnforceDnsOnly = false,\n        ZoneDefaults = new Cloudflare.Inputs.AccountDnsSettingsZoneDefaultsArgs\n        {\n            FlattenAllCnames = false,\n            FoundationDns = false,\n            InternalDns = new Cloudflare.Inputs.AccountDnsSettingsZoneDefaultsInternalDnsArgs\n            {\n                ReferenceZoneId = \"reference_zone_id\",\n            },\n            MultiProvider = false,\n            Nameservers = new Cloudflare.Inputs.AccountDnsSettingsZoneDefaultsNameserversArgs\n            {\n                Type = \"cloudflare.standard\",\n            },\n            NsTtl = 86400,\n            SecondaryOverrides = false,\n            Soa = new Cloudflare.Inputs.AccountDnsSettingsZoneDefaultsSoaArgs\n            {\n                Expire = 604800,\n                MinTtl = 1800,\n                Mname = \"kristina.ns.cloudflare.com\",\n                Refresh = 10000,\n                Retry = 2400,\n                Rname = \"admin.example.com\",\n                Ttl = 3600,\n            },\n            ZoneMode = \"dns_only\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAccountDnsSettings(ctx, \"example_account_dns_settings\", \u0026cloudflare.AccountDnsSettingsArgs{\n\t\t\tAccountId:      pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnforceDnsOnly: pulumi.Bool(false),\n\t\t\tZoneDefaults: \u0026cloudflare.AccountDnsSettingsZoneDefaultsArgs{\n\t\t\t\tFlattenAllCnames: pulumi.Bool(false),\n\t\t\t\tFoundationDns:    pulumi.Bool(false),\n\t\t\t\tInternalDns: \u0026cloudflare.AccountDnsSettingsZoneDefaultsInternalDnsArgs{\n\t\t\t\t\tReferenceZoneId: pulumi.String(\"reference_zone_id\"),\n\t\t\t\t},\n\t\t\t\tMultiProvider: pulumi.Bool(false),\n\t\t\t\tNameservers: \u0026cloudflare.AccountDnsSettingsZoneDefaultsNameserversArgs{\n\t\t\t\t\tType: pulumi.String(\"cloudflare.standard\"),\n\t\t\t\t},\n\t\t\t\tNsTtl:              pulumi.Float64(86400),\n\t\t\t\tSecondaryOverrides: pulumi.Bool(false),\n\t\t\t\tSoa: \u0026cloudflare.AccountDnsSettingsZoneDefaultsSoaArgs{\n\t\t\t\t\tExpire:  pulumi.Float64(604800),\n\t\t\t\t\tMinTtl:  pulumi.Float64(1800),\n\t\t\t\t\tMname:   pulumi.String(\"kristina.ns.cloudflare.com\"),\n\t\t\t\t\tRefresh: pulumi.Float64(10000),\n\t\t\t\t\tRetry:   pulumi.Float64(2400),\n\t\t\t\t\tRname:   pulumi.String(\"admin.example.com\"),\n\t\t\t\t\tTtl:     pulumi.Float64(3600),\n\t\t\t\t},\n\t\t\t\tZoneMode: pulumi.String(\"dns_only\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AccountDnsSettings;\nimport com.pulumi.cloudflare.AccountDnsSettingsArgs;\nimport com.pulumi.cloudflare.inputs.AccountDnsSettingsZoneDefaultsArgs;\nimport com.pulumi.cloudflare.inputs.AccountDnsSettingsZoneDefaultsInternalDnsArgs;\nimport com.pulumi.cloudflare.inputs.AccountDnsSettingsZoneDefaultsNameserversArgs;\nimport com.pulumi.cloudflare.inputs.AccountDnsSettingsZoneDefaultsSoaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccountDnsSettings = new AccountDnsSettings(\"exampleAccountDnsSettings\", AccountDnsSettingsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .enforceDnsOnly(false)\n            .zoneDefaults(AccountDnsSettingsZoneDefaultsArgs.builder()\n                .flattenAllCnames(false)\n                .foundationDns(false)\n                .internalDns(AccountDnsSettingsZoneDefaultsInternalDnsArgs.builder()\n                    .referenceZoneId(\"reference_zone_id\")\n                    .build())\n                .multiProvider(false)\n                .nameservers(AccountDnsSettingsZoneDefaultsNameserversArgs.builder()\n                    .type(\"cloudflare.standard\")\n                    .build())\n                .nsTtl(86400.0)\n                .secondaryOverrides(false)\n                .soa(AccountDnsSettingsZoneDefaultsSoaArgs.builder()\n                    .expire(604800.0)\n                    .minTtl(1800.0)\n                    .mname(\"kristina.ns.cloudflare.com\")\n                    .refresh(10000.0)\n                    .retry(2400.0)\n                    .rname(\"admin.example.com\")\n                    .ttl(3600.0)\n                    .build())\n                .zoneMode(\"dns_only\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccountDnsSettings:\n    type: cloudflare:AccountDnsSettings\n    name: example_account_dns_settings\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      enforceDnsOnly: false\n      zoneDefaults:\n        flattenAllCnames: false\n        foundationDns: false\n        internalDns:\n          referenceZoneId: reference_zone_id\n        multiProvider: false\n        nameservers:\n          type: cloudflare.standard\n        nsTtl: 86400\n        secondaryOverrides: false\n        soa:\n          expire: 604800\n          minTtl: 1800\n          mname: kristina.ns.cloudflare.com\n          refresh: 10000\n          retry: 2400\n          rname: admin.example.com\n          ttl: 3600\n        zoneMode: dns_only\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "enforceDnsOnly": {
                    "type": "boolean",
                    "description": "When enabled, forces all proxied DNS records in the account to behave as DNS-only at the edge, regardless of each record's individual proxy setting. Note that this account-level override does not modify the records themselves; it only affects how they are served at the edge. See more on [Enforce DNS-only](https://developers.cloudflare.com/dns/proxy-status/enforce-dns-only).\n"
                },
                "zoneDefaults": {
                    "$ref": "#/types/cloudflare:index/AccountDnsSettingsZoneDefaults:AccountDnsSettingsZoneDefaults"
                }
            },
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "enforceDnsOnly": {
                    "type": "boolean",
                    "description": "When enabled, forces all proxied DNS records in the account to behave as DNS-only at the edge, regardless of each record's individual proxy setting. Note that this account-level override does not modify the records themselves; it only affects how they are served at the edge. See more on [Enforce DNS-only](https://developers.cloudflare.com/dns/proxy-status/enforce-dns-only).\n"
                },
                "zoneDefaults": {
                    "$ref": "#/types/cloudflare:index/AccountDnsSettingsZoneDefaults:AccountDnsSettingsZoneDefaults"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccountDnsSettings resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "enforceDnsOnly": {
                        "type": "boolean",
                        "description": "When enabled, forces all proxied DNS records in the account to behave as DNS-only at the edge, regardless of each record's individual proxy setting. Note that this account-level override does not modify the records themselves; it only affects how they are served at the edge. See more on [Enforce DNS-only](https://developers.cloudflare.com/dns/proxy-status/enforce-dns-only).\n"
                    },
                    "zoneDefaults": {
                        "$ref": "#/types/cloudflare:index/AccountDnsSettingsZoneDefaults:AccountDnsSettingsZoneDefaults"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/accountDnsSettingsInternalView:AccountDnsSettingsInternalView": {
            "description": "Accepted Permissions\n\n- `DNS View Read`\n- `DNS View Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountDnsSettingsInternalView = new cloudflare.AccountDnsSettingsInternalView(\"example_account_dns_settings_internal_view\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my view\",\n    zones: [\"372e67954025e0ba6aaa6d586b9e0b59\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_dns_settings_internal_view = cloudflare.AccountDnsSettingsInternalView(\"example_account_dns_settings_internal_view\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my view\",\n    zones=[\"372e67954025e0ba6aaa6d586b9e0b59\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountDnsSettingsInternalView = new Cloudflare.Index.AccountDnsSettingsInternalView(\"example_account_dns_settings_internal_view\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my view\",\n        Zones = new[]\n        {\n            \"372e67954025e0ba6aaa6d586b9e0b59\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAccountDnsSettingsInternalView(ctx, \"example_account_dns_settings_internal_view\", \u0026cloudflare.AccountDnsSettingsInternalViewArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my view\"),\n\t\t\tZones: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"372e67954025e0ba6aaa6d586b9e0b59\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AccountDnsSettingsInternalView;\nimport com.pulumi.cloudflare.AccountDnsSettingsInternalViewArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccountDnsSettingsInternalView = new AccountDnsSettingsInternalView(\"exampleAccountDnsSettingsInternalView\", AccountDnsSettingsInternalViewArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my view\")\n            .zones(\"372e67954025e0ba6aaa6d586b9e0b59\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccountDnsSettingsInternalView:\n    type: cloudflare:AccountDnsSettingsInternalView\n    name: example_account_dns_settings_internal_view\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my view\n      zones:\n        - 372e67954025e0ba6aaa6d586b9e0b59\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accountDnsSettingsInternalView:AccountDnsSettingsInternalView example '\u003caccount_id\u003e/\u003cview_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdTime": {
                    "type": "string",
                    "description": "When the view was created.\n"
                },
                "modifiedTime": {
                    "type": "string",
                    "description": "When the view was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the view.\n"
                },
                "zones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of zones linked to this view.\n"
                }
            },
            "required": [
                "createdTime",
                "modifiedTime",
                "name",
                "zones"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the view.\n"
                },
                "zones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of zones linked to this view.\n"
                }
            },
            "requiredInputs": [
                "name",
                "zones"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccountDnsSettingsInternalView resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "createdTime": {
                        "type": "string",
                        "description": "When the view was created.\n"
                    },
                    "modifiedTime": {
                        "type": "string",
                        "description": "When the view was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the view.\n"
                    },
                    "zones": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of zones linked to this view.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/accountMember:AccountMember": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountMember = new cloudflare.AccountMember(\"example_account_member\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    email: \"user@example.com\",\n    roles: [\"3536bcfad5faccb999b47003c79917fb\"],\n    status: \"accepted\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_member = cloudflare.AccountMember(\"example_account_member\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    email=\"user@example.com\",\n    roles=[\"3536bcfad5faccb999b47003c79917fb\"],\n    status=\"accepted\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountMember = new Cloudflare.Index.AccountMember(\"example_account_member\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Email = \"user@example.com\",\n        Roles = new[]\n        {\n            \"3536bcfad5faccb999b47003c79917fb\",\n        },\n        Status = \"accepted\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAccountMember(ctx, \"example_account_member\", \u0026cloudflare.AccountMemberArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEmail:     pulumi.String(\"user@example.com\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"3536bcfad5faccb999b47003c79917fb\"),\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"accepted\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AccountMember;\nimport com.pulumi.cloudflare.AccountMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccountMember = new AccountMember(\"exampleAccountMember\", AccountMemberArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .email(\"user@example.com\")\n            .roles(\"3536bcfad5faccb999b47003c79917fb\")\n            .status(\"accepted\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccountMember:\n    type: cloudflare:AccountMember\n    name: example_account_member\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      email: user@example.com\n      roles:\n        - 3536bcfad5faccb999b47003c79917fb\n      status: accepted\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accountMember:AccountMember example '\u003caccount_id\u003e/\u003cmember_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountMemberPolicy:AccountMemberPolicy"
                    },
                    "description": "Array of policies associated with this member.\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Set of roles associated with this member.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the member invitation. If not provided during creation, defaults to 'pending'.\nChanging from 'accepted' back to 'pending' will trigger a replacement of the member resource in Terraform.\nAvailable values: \"accepted\", \"pending\".\n"
                },
                "user": {
                    "$ref": "#/types/cloudflare:index/AccountMemberUser:AccountMemberUser",
                    "description": "Details of the user associated to the membership.\n"
                }
            },
            "required": [
                "email",
                "policies",
                "roles",
                "status",
                "user"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountMemberPolicy:AccountMemberPolicy"
                    },
                    "description": "Array of policies associated with this member.\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Set of roles associated with this member.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the member invitation. If not provided during creation, defaults to 'pending'.\nChanging from 'accepted' back to 'pending' will trigger a replacement of the member resource in Terraform.\nAvailable values: \"accepted\", \"pending\".\n"
                }
            },
            "requiredInputs": [
                "email"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccountMember resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "email": {
                        "type": "string",
                        "description": "The contact email address of the user.\n"
                    },
                    "policies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccountMemberPolicy:AccountMemberPolicy"
                        },
                        "description": "Array of policies associated with this member.\n"
                    },
                    "roles": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Set of roles associated with this member.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the member invitation. If not provided during creation, defaults to 'pending'.\nChanging from 'accepted' back to 'pending' will trigger a replacement of the member resource in Terraform.\nAvailable values: \"accepted\", \"pending\".\n"
                    },
                    "user": {
                        "$ref": "#/types/cloudflare:index/AccountMemberUser:AccountMemberUser",
                        "description": "Details of the user associated to the membership.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/accountSubscription:AccountSubscription": {
            "description": "Accepted Permissions\n\n- `Billing Read`\n- `Billing Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountSubscription = new cloudflare.AccountSubscription(\"example_account_subscription\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    frequency: \"monthly\",\n    ratePlan: {\n        id: \"free\",\n        currency: \"USD\",\n        externallyManaged: false,\n        isContract: false,\n        publicName: \"Business Plan\",\n        scope: \"zone\",\n        sets: [\"string\"],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_subscription = cloudflare.AccountSubscription(\"example_account_subscription\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    frequency=\"monthly\",\n    rate_plan={\n        \"id\": \"free\",\n        \"currency\": \"USD\",\n        \"externally_managed\": False,\n        \"is_contract\": False,\n        \"public_name\": \"Business Plan\",\n        \"scope\": \"zone\",\n        \"sets\": [\"string\"],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountSubscription = new Cloudflare.Index.AccountSubscription(\"example_account_subscription\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Frequency = \"monthly\",\n        RatePlan = new Cloudflare.Inputs.AccountSubscriptionRatePlanArgs\n        {\n            Id = \"free\",\n            Currency = \"USD\",\n            ExternallyManaged = false,\n            IsContract = false,\n            PublicName = \"Business Plan\",\n            Scope = \"zone\",\n            Sets = new[]\n            {\n                \"string\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAccountSubscription(ctx, \"example_account_subscription\", \u0026cloudflare.AccountSubscriptionArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFrequency: pulumi.String(\"monthly\"),\n\t\t\tRatePlan: \u0026cloudflare.AccountSubscriptionRatePlanArgs{\n\t\t\t\tId:                pulumi.String(\"free\"),\n\t\t\t\tCurrency:          pulumi.String(\"USD\"),\n\t\t\t\tExternallyManaged: pulumi.Bool(false),\n\t\t\t\tIsContract:        pulumi.Bool(false),\n\t\t\t\tPublicName:        pulumi.String(\"Business Plan\"),\n\t\t\t\tScope:             pulumi.String(\"zone\"),\n\t\t\t\tSets: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AccountSubscription;\nimport com.pulumi.cloudflare.AccountSubscriptionArgs;\nimport com.pulumi.cloudflare.inputs.AccountSubscriptionRatePlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccountSubscription = new AccountSubscription(\"exampleAccountSubscription\", AccountSubscriptionArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .frequency(\"monthly\")\n            .ratePlan(AccountSubscriptionRatePlanArgs.builder()\n                .id(\"free\")\n                .currency(\"USD\")\n                .externallyManaged(false)\n                .isContract(false)\n                .publicName(\"Business Plan\")\n                .scope(\"zone\")\n                .sets(\"string\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccountSubscription:\n    type: cloudflare:AccountSubscription\n    name: example_account_subscription\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      frequency: monthly\n      ratePlan:\n        id: free\n        currency: USD\n        externallyManaged: false\n        isContract: false\n        publicName: Business Plan\n        scope: zone\n        sets:\n          - string\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accountSubscription:AccountSubscription example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "currency": {
                    "type": "string",
                    "description": "The monetary unit in which pricing information is displayed.\n"
                },
                "currentPeriodEnd": {
                    "type": "string",
                    "description": "The end of the current period and also when the next billing is due.\n"
                },
                "currentPeriodStart": {
                    "type": "string",
                    "description": "When the current billing period started. May match initial*period*start if this is the first period.\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\n"
                },
                "price": {
                    "type": "number",
                    "description": "The price of the subscription that will be billed, in US dollars.\n"
                },
                "ratePlan": {
                    "$ref": "#/types/cloudflare:index/AccountSubscriptionRatePlan:AccountSubscriptionRatePlan",
                    "description": "The rate plan applied to the subscription.\n"
                },
                "state": {
                    "type": "string",
                    "description": "The state that the subscription is in.\nAvailable values: \"Trial\", \"Provisioned\", \"Paid\", \"AwaitingPayment\", \"Cancelled\", \"Failed\", \"Expired\".\n"
                }
            },
            "required": [
                "currency",
                "currentPeriodEnd",
                "currentPeriodStart",
                "frequency",
                "price",
                "ratePlan",
                "state"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\n"
                },
                "ratePlan": {
                    "$ref": "#/types/cloudflare:index/AccountSubscriptionRatePlan:AccountSubscriptionRatePlan",
                    "description": "The rate plan applied to the subscription.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccountSubscription resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "currency": {
                        "type": "string",
                        "description": "The monetary unit in which pricing information is displayed.\n"
                    },
                    "currentPeriodEnd": {
                        "type": "string",
                        "description": "The end of the current period and also when the next billing is due.\n"
                    },
                    "currentPeriodStart": {
                        "type": "string",
                        "description": "When the current billing period started. May match initial*period*start if this is the first period.\n"
                    },
                    "frequency": {
                        "type": "string",
                        "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\n"
                    },
                    "price": {
                        "type": "number",
                        "description": "The price of the subscription that will be billed, in US dollars.\n"
                    },
                    "ratePlan": {
                        "$ref": "#/types/cloudflare:index/AccountSubscriptionRatePlan:AccountSubscriptionRatePlan",
                        "description": "The rate plan applied to the subscription.\n"
                    },
                    "state": {
                        "type": "string",
                        "description": "The state that the subscription is in.\nAvailable values: \"Trial\", \"Provisioned\", \"Paid\", \"AwaitingPayment\", \"Cancelled\", \"Failed\", \"Expired\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/accountToken:AccountToken": {
            "description": "Accepted Permissions\n\n- `Account API Tokens Read`\n- `Account API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountToken = new cloudflare.AccountToken(\"example_account_token\", {\n    accountId: \"b67e14daa5f8dceeb91fe5449ba496eb\",\n    name: \"workers read-only token\",\n    policies: [{\n        effect: \"allow\",\n        permissionGroups: [\n            {\n                id: \"1a71c399035b4950a1bd1466bbe4f420\",\n            },\n            {\n                id: \"8b47d2786a534c08a1f94ee8f9f599ef\",\n            },\n        ],\n        resources: JSON.stringify({\n            \"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\": \"*\",\n        }),\n    }],\n    condition: {\n        requestIp: {\n            ins: [\n                \"123.123.123.0/24\",\n                \"2606:4700::/32\",\n            ],\n            notIns: [\n                \"123.123.123.0/28\",\n                \"2606:4700:4700::/48\",\n            ],\n        },\n    },\n    expiresOn: \"2027-10-01T00:00:00Z\",\n    notBefore: \"2025-10-01T00:00:00Z\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_cloudflare as cloudflare\n\nexample_account_token = cloudflare.AccountToken(\"example_account_token\",\n    account_id=\"b67e14daa5f8dceeb91fe5449ba496eb\",\n    name=\"workers read-only token\",\n    policies=[{\n        \"effect\": \"allow\",\n        \"permission_groups\": [\n            {\n                \"id\": \"1a71c399035b4950a1bd1466bbe4f420\",\n            },\n            {\n                \"id\": \"8b47d2786a534c08a1f94ee8f9f599ef\",\n            },\n        ],\n        \"resources\": json.dumps({\n            \"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\": \"*\",\n        }),\n    }],\n    condition={\n        \"request_ip\": {\n            \"ins\": [\n                \"123.123.123.0/24\",\n                \"2606:4700::/32\",\n            ],\n            \"not_ins\": [\n                \"123.123.123.0/28\",\n                \"2606:4700:4700::/48\",\n            ],\n        },\n    },\n    expires_on=\"2027-10-01T00:00:00Z\",\n    not_before=\"2025-10-01T00:00:00Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountToken = new Cloudflare.Index.AccountToken(\"example_account_token\", new()\n    {\n        AccountId = \"b67e14daa5f8dceeb91fe5449ba496eb\",\n        Name = \"workers read-only token\",\n        Policies = new[]\n        {\n            new Cloudflare.Inputs.AccountTokenPolicyArgs\n            {\n                Effect = \"allow\",\n                PermissionGroups = new[]\n                {\n                    new Cloudflare.Inputs.AccountTokenPolicyPermissionGroupArgs\n                    {\n                        Id = \"1a71c399035b4950a1bd1466bbe4f420\",\n                    },\n                    new Cloudflare.Inputs.AccountTokenPolicyPermissionGroupArgs\n                    {\n                        Id = \"8b47d2786a534c08a1f94ee8f9f599ef\",\n                    },\n                },\n                Resources = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n                {\n                    [\"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\"] = \"*\",\n                }),\n            },\n        },\n        Condition = new Cloudflare.Inputs.AccountTokenConditionArgs\n        {\n            RequestIp = new Cloudflare.Inputs.AccountTokenConditionRequestIpArgs\n            {\n                Ins = new[]\n                {\n                    \"123.123.123.0/24\",\n                    \"2606:4700::/32\",\n                },\n                NotIns = new[]\n                {\n                    \"123.123.123.0/28\",\n                    \"2606:4700:4700::/48\",\n                },\n            },\n        },\n        ExpiresOn = \"2027-10-01T00:00:00Z\",\n        NotBefore = \"2025-10-01T00:00:00Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\": \"*\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = cloudflare.NewAccountToken(ctx, \"example_account_token\", \u0026cloudflare.AccountTokenArgs{\n\t\t\tAccountId: pulumi.String(\"b67e14daa5f8dceeb91fe5449ba496eb\"),\n\t\t\tName:      pulumi.String(\"workers read-only token\"),\n\t\t\tPolicies: cloudflare.AccountTokenPolicyArray{\n\t\t\t\t\u0026cloudflare.AccountTokenPolicyArgs{\n\t\t\t\t\tEffect: pulumi.String(\"allow\"),\n\t\t\t\t\tPermissionGroups: cloudflare.AccountTokenPolicyPermissionGroupArray{\n\t\t\t\t\t\t\u0026cloudflare.AccountTokenPolicyPermissionGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"1a71c399035b4950a1bd1466bbe4f420\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cloudflare.AccountTokenPolicyPermissionGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"8b47d2786a534c08a1f94ee8f9f599ef\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.String(pulumi.String(json0)),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCondition: \u0026cloudflare.AccountTokenConditionArgs{\n\t\t\t\tRequestIp: \u0026cloudflare.AccountTokenConditionRequestIpArgs{\n\t\t\t\t\tIns: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"123.123.123.0/24\"),\n\t\t\t\t\t\tpulumi.String(\"2606:4700::/32\"),\n\t\t\t\t\t},\n\t\t\t\t\tNotIns: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"123.123.123.0/28\"),\n\t\t\t\t\t\tpulumi.String(\"2606:4700:4700::/48\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tExpiresOn: pulumi.String(\"2027-10-01T00:00:00Z\"),\n\t\t\tNotBefore: pulumi.String(\"2025-10-01T00:00:00Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AccountToken;\nimport com.pulumi.cloudflare.AccountTokenArgs;\nimport com.pulumi.cloudflare.inputs.AccountTokenPolicyArgs;\nimport com.pulumi.cloudflare.inputs.AccountTokenConditionArgs;\nimport com.pulumi.cloudflare.inputs.AccountTokenConditionRequestIpArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAccountToken = new AccountToken(\"exampleAccountToken\", AccountTokenArgs.builder()\n            .accountId(\"b67e14daa5f8dceeb91fe5449ba496eb\")\n            .name(\"workers read-only token\")\n            .policies(AccountTokenPolicyArgs.builder()\n                .effect(\"allow\")\n                .permissionGroups(                \n                    AccountTokenPolicyPermissionGroupArgs.builder()\n                        .id(\"1a71c399035b4950a1bd1466bbe4f420\")\n                        .build(),\n                    AccountTokenPolicyPermissionGroupArgs.builder()\n                        .id(\"8b47d2786a534c08a1f94ee8f9f599ef\")\n                        .build())\n                .resources(serializeJson(\n                    jsonObject(\n                        jsonProperty(\"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\", \"*\")\n                    )))\n                .build())\n            .condition(AccountTokenConditionArgs.builder()\n                .requestIp(AccountTokenConditionRequestIpArgs.builder()\n                    .ins(                    \n                        \"123.123.123.0/24\",\n                        \"2606:4700::/32\")\n                    .notIns(                    \n                        \"123.123.123.0/28\",\n                        \"2606:4700:4700::/48\")\n                    .build())\n                .build())\n            .expiresOn(\"2027-10-01T00:00:00Z\")\n            .notBefore(\"2025-10-01T00:00:00Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAccountToken:\n    type: cloudflare:AccountToken\n    name: example_account_token\n    properties:\n      accountId: b67e14daa5f8dceeb91fe5449ba496eb\n      name: workers read-only token\n      policies:\n        - effect: allow\n          permissionGroups:\n            - id: 1a71c399035b4950a1bd1466bbe4f420\n            - id: 8b47d2786a534c08a1f94ee8f9f599ef\n          resources:\n            fn::toJSON:\n              com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb: '*'\n      condition:\n        requestIp:\n          ins:\n            - 123.123.123.0/24\n            - 2606:4700::/32\n          notIns:\n            - 123.123.123.0/28\n            - 2606:4700:4700::/48\n      expiresOn: 2027-10-01T00:00:00Z\n      notBefore: 2025-10-01T00:00:00Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/accountToken:AccountToken example '\u003caccount_id\u003e/\u003ctoken_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "condition": {
                    "$ref": "#/types/cloudflare:index/AccountTokenCondition:AccountTokenCondition"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                },
                "issuedOn": {
                    "type": "string",
                    "description": "The time on which the token was created.\n"
                },
                "lastUsedOn": {
                    "type": "string",
                    "description": "Last time the token was used.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time the token was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Token name.\n"
                },
                "notBefore": {
                    "type": "string",
                    "description": "The time before which the token MUST NOT be accepted for processing.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountTokenPolicy:AccountTokenPolicy"
                    },
                    "description": "Set of access policies assigned to the token.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The token value.\n",
                    "secret": true
                }
            },
            "required": [
                "accountId",
                "issuedOn",
                "lastUsedOn",
                "modifiedOn",
                "name",
                "policies",
                "status",
                "value"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "condition": {
                    "$ref": "#/types/cloudflare:index/AccountTokenCondition:AccountTokenCondition"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Token name.\n"
                },
                "notBefore": {
                    "type": "string",
                    "description": "The time before which the token MUST NOT be accepted for processing.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AccountTokenPolicy:AccountTokenPolicy"
                    },
                    "description": "Set of access policies assigned to the token.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "name",
                "policies"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AccountToken resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "condition": {
                        "$ref": "#/types/cloudflare:index/AccountTokenCondition:AccountTokenCondition"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                    },
                    "issuedOn": {
                        "type": "string",
                        "description": "The time on which the token was created.\n"
                    },
                    "lastUsedOn": {
                        "type": "string",
                        "description": "Last time the token was used.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time the token was modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Token name.\n"
                    },
                    "notBefore": {
                        "type": "string",
                        "description": "The time before which the token MUST NOT be accepted for processing.\n"
                    },
                    "policies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AccountTokenPolicy:AccountTokenPolicy"
                        },
                        "description": "Set of access policies assigned to the token.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "The token value.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/addressMap:AddressMap": {
            "description": "Accepted Permissions\n\n- `Address Maps Read`\n- `Address Maps Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAddressMap = new cloudflare.AddressMap(\"example_address_map\", {\n    accountId: \"258def64c72dae45f3e4c8516e2111f2\",\n    description: \"My Ecommerce zones\",\n    enabled: true,\n    ips: [\"192.0.2.1\"],\n    memberships: [{\n        identifier: \"023e105f4ecef8ad9ca31a8372d0c353\",\n        kind: \"zone\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_address_map = cloudflare.AddressMap(\"example_address_map\",\n    account_id=\"258def64c72dae45f3e4c8516e2111f2\",\n    description=\"My Ecommerce zones\",\n    enabled=True,\n    ips=[\"192.0.2.1\"],\n    memberships=[{\n        \"identifier\": \"023e105f4ecef8ad9ca31a8372d0c353\",\n        \"kind\": \"zone\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAddressMap = new Cloudflare.Index.AddressMap(\"example_address_map\", new()\n    {\n        AccountId = \"258def64c72dae45f3e4c8516e2111f2\",\n        Description = \"My Ecommerce zones\",\n        Enabled = true,\n        Ips = new[]\n        {\n            \"192.0.2.1\",\n        },\n        Memberships = new[]\n        {\n            new Cloudflare.Inputs.AddressMapMembershipArgs\n            {\n                Identifier = \"023e105f4ecef8ad9ca31a8372d0c353\",\n                Kind = \"zone\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAddressMap(ctx, \"example_address_map\", \u0026cloudflare.AddressMapArgs{\n\t\t\tAccountId:   pulumi.String(\"258def64c72dae45f3e4c8516e2111f2\"),\n\t\t\tDescription: pulumi.String(\"My Ecommerce zones\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"192.0.2.1\"),\n\t\t\t},\n\t\t\tMemberships: cloudflare.AddressMapMembershipArray{\n\t\t\t\t\u0026cloudflare.AddressMapMembershipArgs{\n\t\t\t\t\tIdentifier: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\t\t\tKind:       pulumi.String(\"zone\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AddressMap;\nimport com.pulumi.cloudflare.AddressMapArgs;\nimport com.pulumi.cloudflare.inputs.AddressMapMembershipArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAddressMap = new AddressMap(\"exampleAddressMap\", AddressMapArgs.builder()\n            .accountId(\"258def64c72dae45f3e4c8516e2111f2\")\n            .description(\"My Ecommerce zones\")\n            .enabled(true)\n            .ips(\"192.0.2.1\")\n            .memberships(AddressMapMembershipArgs.builder()\n                .identifier(\"023e105f4ecef8ad9ca31a8372d0c353\")\n                .kind(\"zone\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAddressMap:\n    type: cloudflare:AddressMap\n    name: example_address_map\n    properties:\n      accountId: 258def64c72dae45f3e4c8516e2111f2\n      description: My Ecommerce zones\n      enabled: true\n      ips:\n        - 192.0.2.1\n      memberships:\n        - identifier: 023e105f4ecef8ad9ca31a8372d0c353\n          kind: zone\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/addressMap:AddressMap example '\u003caccount_id\u003e/\u003caddress_map_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier of a Cloudflare account.\n"
                },
                "canDelete": {
                    "type": "boolean",
                    "description": "If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.\n"
                },
                "canModifyIps": {
                    "type": "boolean",
                    "description": "If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "defaultSni": {
                    "type": "string",
                    "description": "If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description field which may be used to describe the types of IPs or zones on the map.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.\n"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "memberships": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AddressMapMembership:AddressMapMembership"
                    },
                    "description": "Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.\n"
                },
                "modifiedAt": {
                    "type": "string"
                }
            },
            "required": [
                "canDelete",
                "canModifyIps",
                "createdAt",
                "enabled",
                "modifiedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier of a Cloudflare account.\n"
                },
                "defaultSni": {
                    "type": "string",
                    "description": "If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description field which may be used to describe the types of IPs or zones on the map.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.\n"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "memberships": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AddressMapMembership:AddressMapMembership"
                    },
                    "description": "Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AddressMap resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier of a Cloudflare account.\n"
                    },
                    "canDelete": {
                        "type": "boolean",
                        "description": "If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.\n"
                    },
                    "canModifyIps": {
                        "type": "boolean",
                        "description": "If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "defaultSni": {
                        "type": "string",
                        "description": "If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An optional description field which may be used to describe the types of IPs or zones on the map.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.\n"
                    },
                    "ips": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "memberships": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AddressMapMembership:AddressMapMembership"
                        },
                        "description": "Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.\n"
                    },
                    "modifiedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/aiGateway:AiGateway": {
            "description": "Accepted Permissions\n\n- `AI Gateway Read`\n- `AI Gateway Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAiGateway = new cloudflare.AiGateway(\"example_ai_gateway\", {\n    accountId: \"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n    aiGatewayId: \"my-gateway\",\n    cacheInvalidateOnUpdate: true,\n    cacheTtl: 0,\n    collectLogs: true,\n    rateLimitingInterval: 0,\n    rateLimitingLimit: 0,\n    authentication: true,\n    logManagement: 10000,\n    logManagementStrategy: \"STOP_INSERTING\",\n    logpush: true,\n    logpushPublicKey: \"xxxxxxxxxxxxxxxx\",\n    rateLimitingTechnique: \"fixed\",\n    retryBackoff: \"constant\",\n    retryDelay: 0,\n    retryMaxAttempts: 1,\n    workersAiBillingMode: \"postpaid\",\n    zdr: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ai_gateway = cloudflare.AiGateway(\"example_ai_gateway\",\n    account_id=\"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n    ai_gateway_id=\"my-gateway\",\n    cache_invalidate_on_update=True,\n    cache_ttl=0,\n    collect_logs=True,\n    rate_limiting_interval=0,\n    rate_limiting_limit=0,\n    authentication=True,\n    log_management=10000,\n    log_management_strategy=\"STOP_INSERTING\",\n    logpush=True,\n    logpush_public_key=\"xxxxxxxxxxxxxxxx\",\n    rate_limiting_technique=\"fixed\",\n    retry_backoff=\"constant\",\n    retry_delay=0,\n    retry_max_attempts=1,\n    workers_ai_billing_mode=\"postpaid\",\n    zdr=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAiGateway = new Cloudflare.Index.AiGateway(\"example_ai_gateway\", new()\n    {\n        AccountId = \"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n        AiGatewayId = \"my-gateway\",\n        CacheInvalidateOnUpdate = true,\n        CacheTtl = 0,\n        CollectLogs = true,\n        RateLimitingInterval = 0,\n        RateLimitingLimit = 0,\n        Authentication = true,\n        LogManagement = 10000,\n        LogManagementStrategy = \"STOP_INSERTING\",\n        Logpush = true,\n        LogpushPublicKey = \"xxxxxxxxxxxxxxxx\",\n        RateLimitingTechnique = \"fixed\",\n        RetryBackoff = \"constant\",\n        RetryDelay = 0,\n        RetryMaxAttempts = 1,\n        WorkersAiBillingMode = \"postpaid\",\n        Zdr = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAiGateway(ctx, \"example_ai_gateway\", \u0026cloudflare.AiGatewayArgs{\n\t\t\tAccountId:               pulumi.String(\"3ebbcb006d4d46d7bb6a8c7f14676cb0\"),\n\t\t\tAiGatewayId:             pulumi.String(\"my-gateway\"),\n\t\t\tCacheInvalidateOnUpdate: pulumi.Bool(true),\n\t\t\tCacheTtl:                pulumi.Int(0),\n\t\t\tCollectLogs:             pulumi.Bool(true),\n\t\t\tRateLimitingInterval:    pulumi.Int(0),\n\t\t\tRateLimitingLimit:       pulumi.Int(0),\n\t\t\tAuthentication:          pulumi.Bool(true),\n\t\t\tLogManagement:           pulumi.Int(10000),\n\t\t\tLogManagementStrategy:   pulumi.String(\"STOP_INSERTING\"),\n\t\t\tLogpush:                 pulumi.Bool(true),\n\t\t\tLogpushPublicKey:        pulumi.String(\"xxxxxxxxxxxxxxxx\"),\n\t\t\tRateLimitingTechnique:   pulumi.String(\"fixed\"),\n\t\t\tRetryBackoff:            pulumi.String(\"constant\"),\n\t\t\tRetryDelay:              pulumi.Int(0),\n\t\t\tRetryMaxAttempts:        pulumi.Int(1),\n\t\t\tWorkersAiBillingMode:    pulumi.String(\"postpaid\"),\n\t\t\tZdr:                     pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AiGateway;\nimport com.pulumi.cloudflare.AiGatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAiGateway = new AiGateway(\"exampleAiGateway\", AiGatewayArgs.builder()\n            .accountId(\"3ebbcb006d4d46d7bb6a8c7f14676cb0\")\n            .aiGatewayId(\"my-gateway\")\n            .cacheInvalidateOnUpdate(true)\n            .cacheTtl(0)\n            .collectLogs(true)\n            .rateLimitingInterval(0)\n            .rateLimitingLimit(0)\n            .authentication(true)\n            .logManagement(10000)\n            .logManagementStrategy(\"STOP_INSERTING\")\n            .logpush(true)\n            .logpushPublicKey(\"xxxxxxxxxxxxxxxx\")\n            .rateLimitingTechnique(\"fixed\")\n            .retryBackoff(\"constant\")\n            .retryDelay(0)\n            .retryMaxAttempts(1)\n            .workersAiBillingMode(\"postpaid\")\n            .zdr(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAiGateway:\n    type: cloudflare:AiGateway\n    name: example_ai_gateway\n    properties:\n      accountId: 3ebbcb006d4d46d7bb6a8c7f14676cb0\n      aiGatewayId: my-gateway\n      cacheInvalidateOnUpdate: true\n      cacheTtl: 0\n      collectLogs: true\n      rateLimitingInterval: 0\n      rateLimitingLimit: 0\n      authentication: true\n      logManagement: 10000\n      logManagementStrategy: STOP_INSERTING\n      logpush: true\n      logpushPublicKey: xxxxxxxxxxxxxxxx\n      rateLimitingTechnique: fixed\n      retryBackoff: constant\n      retryDelay: 0\n      retryMaxAttempts: 1\n      workersAiBillingMode: postpaid\n      zdr: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/aiGateway:AiGateway example '\u003caccount_id\u003e/\u003cid\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiGatewayId": {
                    "type": "string",
                    "description": "gateway id\n"
                },
                "authentication": {
                    "type": "boolean"
                },
                "cacheInvalidateOnUpdate": {
                    "type": "boolean"
                },
                "cacheTtl": {
                    "type": "integer"
                },
                "collectLogs": {
                    "type": "boolean"
                },
                "createdAt": {
                    "type": "string"
                },
                "dlp": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDlp:AiGatewayDlp"
                },
                "isDefault": {
                    "type": "boolean"
                },
                "logManagement": {
                    "type": "integer"
                },
                "logManagementStrategy": {
                    "type": "string",
                    "description": "Available values: \"STOP*INSERTING\", \"DELETE*OLDEST\".\n"
                },
                "logpush": {
                    "type": "boolean"
                },
                "logpushPublicKey": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "otels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayOtel:AiGatewayOtel"
                    }
                },
                "rateLimitingInterval": {
                    "type": "integer"
                },
                "rateLimitingLimit": {
                    "type": "integer"
                },
                "rateLimitingTechnique": {
                    "type": "string",
                    "description": "Available values: \"fixed\", \"sliding\".\n"
                },
                "retryBackoff": {
                    "type": "string",
                    "description": "Backoff strategy for retry delays\nAvailable values: \"constant\", \"linear\", \"exponential\".\n"
                },
                "retryDelay": {
                    "type": "integer",
                    "description": "Delay between retry attempts in milliseconds (0-5000)\n"
                },
                "retryMaxAttempts": {
                    "type": "integer",
                    "description": "Maximum number of retry attempts for failed requests (1-5)\n"
                },
                "storeId": {
                    "type": "string"
                },
                "stripe": {
                    "$ref": "#/types/cloudflare:index/AiGatewayStripe:AiGatewayStripe"
                },
                "workersAiBillingMode": {
                    "type": "string",
                    "description": "Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported.\nAvailable values: \"postpaid\".\n"
                },
                "zdr": {
                    "type": "boolean"
                }
            },
            "required": [
                "cacheInvalidateOnUpdate",
                "cacheTtl",
                "collectLogs",
                "createdAt",
                "aiGatewayId",
                "isDefault",
                "modifiedAt",
                "otels",
                "rateLimitingInterval",
                "rateLimitingLimit",
                "workersAiBillingMode"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiGatewayId": {
                    "type": "string",
                    "description": "gateway id\n"
                },
                "authentication": {
                    "type": "boolean"
                },
                "cacheInvalidateOnUpdate": {
                    "type": "boolean"
                },
                "cacheTtl": {
                    "type": "integer"
                },
                "collectLogs": {
                    "type": "boolean"
                },
                "dlp": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDlp:AiGatewayDlp"
                },
                "logManagement": {
                    "type": "integer"
                },
                "logManagementStrategy": {
                    "type": "string",
                    "description": "Available values: \"STOP*INSERTING\", \"DELETE*OLDEST\".\n"
                },
                "logpush": {
                    "type": "boolean"
                },
                "logpushPublicKey": {
                    "type": "string"
                },
                "otels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayOtel:AiGatewayOtel"
                    }
                },
                "rateLimitingInterval": {
                    "type": "integer"
                },
                "rateLimitingLimit": {
                    "type": "integer"
                },
                "rateLimitingTechnique": {
                    "type": "string",
                    "description": "Available values: \"fixed\", \"sliding\".\n"
                },
                "retryBackoff": {
                    "type": "string",
                    "description": "Backoff strategy for retry delays\nAvailable values: \"constant\", \"linear\", \"exponential\".\n"
                },
                "retryDelay": {
                    "type": "integer",
                    "description": "Delay between retry attempts in milliseconds (0-5000)\n"
                },
                "retryMaxAttempts": {
                    "type": "integer",
                    "description": "Maximum number of retry attempts for failed requests (1-5)\n"
                },
                "storeId": {
                    "type": "string"
                },
                "stripe": {
                    "$ref": "#/types/cloudflare:index/AiGatewayStripe:AiGatewayStripe"
                },
                "workersAiBillingMode": {
                    "type": "string",
                    "description": "Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported.\nAvailable values: \"postpaid\".\n"
                },
                "zdr": {
                    "type": "boolean"
                }
            },
            "requiredInputs": [
                "cacheInvalidateOnUpdate",
                "cacheTtl",
                "collectLogs",
                "aiGatewayId",
                "rateLimitingInterval",
                "rateLimitingLimit"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AiGateway resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiGatewayId": {
                        "type": "string",
                        "description": "gateway id\n"
                    },
                    "authentication": {
                        "type": "boolean"
                    },
                    "cacheInvalidateOnUpdate": {
                        "type": "boolean"
                    },
                    "cacheTtl": {
                        "type": "integer"
                    },
                    "collectLogs": {
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "dlp": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDlp:AiGatewayDlp"
                    },
                    "isDefault": {
                        "type": "boolean"
                    },
                    "logManagement": {
                        "type": "integer"
                    },
                    "logManagementStrategy": {
                        "type": "string",
                        "description": "Available values: \"STOP*INSERTING\", \"DELETE*OLDEST\".\n"
                    },
                    "logpush": {
                        "type": "boolean"
                    },
                    "logpushPublicKey": {
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "otels": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AiGatewayOtel:AiGatewayOtel"
                        }
                    },
                    "rateLimitingInterval": {
                        "type": "integer"
                    },
                    "rateLimitingLimit": {
                        "type": "integer"
                    },
                    "rateLimitingTechnique": {
                        "type": "string",
                        "description": "Available values: \"fixed\", \"sliding\".\n"
                    },
                    "retryBackoff": {
                        "type": "string",
                        "description": "Backoff strategy for retry delays\nAvailable values: \"constant\", \"linear\", \"exponential\".\n"
                    },
                    "retryDelay": {
                        "type": "integer",
                        "description": "Delay between retry attempts in milliseconds (0-5000)\n"
                    },
                    "retryMaxAttempts": {
                        "type": "integer",
                        "description": "Maximum number of retry attempts for failed requests (1-5)\n"
                    },
                    "storeId": {
                        "type": "string"
                    },
                    "stripe": {
                        "$ref": "#/types/cloudflare:index/AiGatewayStripe:AiGatewayStripe"
                    },
                    "workersAiBillingMode": {
                        "type": "string",
                        "description": "Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported.\nAvailable values: \"postpaid\".\n"
                    },
                    "zdr": {
                        "type": "boolean"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/aiGatewayDynamicRouting:AiGatewayDynamicRouting": {
            "description": "Accepted Permissions\n\n- `AI Gateway Read`\n- `AI Gateway Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAiGatewayDynamicRouting = new cloudflare.AiGatewayDynamicRouting(\"example_ai_gateway_dynamic_routing\", {\n    accountId: \"0d37909e38d3e99c29fa2cd343ac421a\",\n    gatewayId: \"54442216\",\n    elements: [{\n        id: \"id\",\n        outputs: {\n            next: {\n                elementId: \"elementId\",\n            },\n        },\n        type: \"start\",\n    }],\n    name: \"name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ai_gateway_dynamic_routing = cloudflare.AiGatewayDynamicRouting(\"example_ai_gateway_dynamic_routing\",\n    account_id=\"0d37909e38d3e99c29fa2cd343ac421a\",\n    gateway_id=\"54442216\",\n    elements=[{\n        \"id\": \"id\",\n        \"outputs\": {\n            \"next\": {\n                \"element_id\": \"elementId\",\n            },\n        },\n        \"type\": \"start\",\n    }],\n    name=\"name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAiGatewayDynamicRouting = new Cloudflare.Index.AiGatewayDynamicRouting(\"example_ai_gateway_dynamic_routing\", new()\n    {\n        AccountId = \"0d37909e38d3e99c29fa2cd343ac421a\",\n        GatewayId = \"54442216\",\n        Elements = new[]\n        {\n            new Cloudflare.Inputs.AiGatewayDynamicRoutingElementArgs\n            {\n                Id = \"id\",\n                Outputs = new Cloudflare.Inputs.AiGatewayDynamicRoutingElementOutputsArgs\n                {\n                    Next = new Cloudflare.Inputs.AiGatewayDynamicRoutingElementOutputsNextArgs\n                    {\n                        ElementId = \"elementId\",\n                    },\n                },\n                Type = \"start\",\n            },\n        },\n        Name = \"name\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAiGatewayDynamicRouting(ctx, \"example_ai_gateway_dynamic_routing\", \u0026cloudflare.AiGatewayDynamicRoutingArgs{\n\t\t\tAccountId: pulumi.String(\"0d37909e38d3e99c29fa2cd343ac421a\"),\n\t\t\tGatewayId: pulumi.String(\"54442216\"),\n\t\t\tElements: cloudflare.AiGatewayDynamicRoutingElementArray{\n\t\t\t\t\u0026cloudflare.AiGatewayDynamicRoutingElementArgs{\n\t\t\t\t\tId: pulumi.String(\"id\"),\n\t\t\t\t\tOutputs: \u0026cloudflare.AiGatewayDynamicRoutingElementOutputsArgs{\n\t\t\t\t\t\tNext: \u0026cloudflare.AiGatewayDynamicRoutingElementOutputsNextArgs{\n\t\t\t\t\t\t\tElementId: pulumi.String(\"elementId\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"start\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AiGatewayDynamicRouting;\nimport com.pulumi.cloudflare.AiGatewayDynamicRoutingArgs;\nimport com.pulumi.cloudflare.inputs.AiGatewayDynamicRoutingElementArgs;\nimport com.pulumi.cloudflare.inputs.AiGatewayDynamicRoutingElementOutputsArgs;\nimport com.pulumi.cloudflare.inputs.AiGatewayDynamicRoutingElementOutputsNextArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAiGatewayDynamicRouting = new AiGatewayDynamicRouting(\"exampleAiGatewayDynamicRouting\", AiGatewayDynamicRoutingArgs.builder()\n            .accountId(\"0d37909e38d3e99c29fa2cd343ac421a\")\n            .gatewayId(\"54442216\")\n            .elements(AiGatewayDynamicRoutingElementArgs.builder()\n                .id(\"id\")\n                .outputs(AiGatewayDynamicRoutingElementOutputsArgs.builder()\n                    .next(AiGatewayDynamicRoutingElementOutputsNextArgs.builder()\n                        .elementId(\"elementId\")\n                        .build())\n                    .build())\n                .type(\"start\")\n                .build())\n            .name(\"name\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAiGatewayDynamicRouting:\n    type: cloudflare:AiGatewayDynamicRouting\n    name: example_ai_gateway_dynamic_routing\n    properties:\n      accountId: 0d37909e38d3e99c29fa2cd343ac421a\n      gatewayId: '54442216'\n      elements:\n        - id: id\n          outputs:\n            next:\n              elementId: elementId\n          type: start\n      name: name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/aiGatewayDynamicRouting:AiGatewayDynamicRouting example '\u003caccount_id\u003e/\u003cgateway_id\u003e/\u003cid\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "deployment": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingDeployment:AiGatewayDynamicRoutingDeployment"
                },
                "elements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElement:AiGatewayDynamicRoutingElement"
                    }
                },
                "gatewayId": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "route": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRoute:AiGatewayDynamicRoutingRoute"
                },
                "success": {
                    "type": "boolean"
                },
                "version": {
                    "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingVersion:AiGatewayDynamicRoutingVersion"
                }
            },
            "required": [
                "createdAt",
                "deployment",
                "elements",
                "gatewayId",
                "modifiedAt",
                "name",
                "route",
                "success",
                "version"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "elements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElement:AiGatewayDynamicRoutingElement"
                    }
                },
                "gatewayId": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "elements",
                "gatewayId",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AiGatewayDynamicRouting resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "deployment": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingDeployment:AiGatewayDynamicRoutingDeployment"
                    },
                    "elements": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingElement:AiGatewayDynamicRoutingElement"
                        }
                    },
                    "gatewayId": {
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "route": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingRoute:AiGatewayDynamicRoutingRoute"
                    },
                    "success": {
                        "type": "boolean"
                    },
                    "version": {
                        "$ref": "#/types/cloudflare:index/AiGatewayDynamicRoutingVersion:AiGatewayDynamicRoutingVersion"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/aiSearchInstance:AiSearchInstance": {
            "description": "\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiGatewayId": {
                    "type": "string"
                },
                "aiSearchInstanceId": {
                    "type": "string",
                    "description": "AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.\n"
                },
                "aisearchModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "cache": {
                    "type": "boolean"
                },
                "cacheThreshold": {
                    "type": "string",
                    "description": "Available values: \"super*strict*match\", \"close*enough\", \"flexible*friend\", \u003cspan pulumi-lang-nodejs=\"\"anythingGoes\"\" pulumi-lang-dotnet=\"\"AnythingGoes\"\" pulumi-lang-go=\"\"anythingGoes\"\" pulumi-lang-python=\"\"anything_goes\"\" pulumi-lang-yaml=\"\"anythingGoes\"\" pulumi-lang-java=\"\"anythingGoes\"\"\u003e\"anythingGoes\"\u003c/span\u003e.\n"
                },
                "chunk": {
                    "type": "boolean"
                },
                "chunkOverlap": {
                    "type": "integer"
                },
                "chunkSize": {
                    "type": "integer"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "customMetadatas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceCustomMetadata:AiSearchInstanceCustomMetadata"
                    }
                },
                "embeddingModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/qwen/qwen3-embedding-0.6b\", \"@cf/baai/bge-m3\", \"@cf/baai/bge-large-en-v1.5\", \"@cf/google/embeddinggemma-300m\", \"google-ai-studio/gemini-embedding-001\", \"google-ai-studio/gemini-embedding-2-preview\", \"openai/text-embedding-3-small\", \"openai/text-embedding-3-large\", \"\".\n"
                },
                "enable": {
                    "type": "boolean"
                },
                "engineVersion": {
                    "type": "number"
                },
                "fusionMethod": {
                    "type": "string",
                    "description": "Available values: \"max\", \"rrf\".\n"
                },
                "hybridSearchEnabled": {
                    "type": "boolean",
                    "description": "Deprecated — use\u003cspan pulumi-lang-nodejs=\" indexMethod \" pulumi-lang-dotnet=\" IndexMethod \" pulumi-lang-go=\" indexMethod \" pulumi-lang-python=\" index_method \" pulumi-lang-yaml=\" indexMethod \" pulumi-lang-java=\" indexMethod \"\u003e indexMethod \u003c/span\u003einstead.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "indexMethod": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceIndexMethod:AiSearchInstanceIndexMethod",
                    "description": "Controls which storage backends are used during indexing. Defaults to vector-only.\n"
                },
                "indexingOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceIndexingOptions:AiSearchInstanceIndexingOptions"
                },
                "lastActivity": {
                    "type": "string"
                },
                "maxNumResults": {
                    "type": "integer"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceMetadata:AiSearchInstanceMetadata"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "namespace": {
                    "type": "string"
                },
                "paused": {
                    "type": "boolean"
                },
                "publicEndpointId": {
                    "type": "string"
                },
                "publicEndpointParams": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParams:AiSearchInstancePublicEndpointParams"
                },
                "reranking": {
                    "type": "boolean"
                },
                "rerankingModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/baai/bge-reranker-base\", \"\".\n"
                },
                "retrievalOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceRetrievalOptions:AiSearchInstanceRetrievalOptions"
                },
                "rewriteModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "rewriteQuery": {
                    "type": "boolean"
                },
                "scoreThreshold": {
                    "type": "number"
                },
                "source": {
                    "type": "string"
                },
                "sourceParams": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParams:AiSearchInstanceSourceParams"
                },
                "status": {
                    "type": "string"
                },
                "summarization": {
                    "type": "boolean"
                },
                "summarizationModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "syncInterval": {
                    "type": "number",
                    "description": "Interval between automatic syncs, in seconds. Allowed values: 900 (15min), 1800 (30min), 3600 (1h), 7200 (2h), 14400 (4h), 21600 (6h), 43200 (12h), 86400 (24h).\nAvailable values: 900, 1800, 3600, 7200, 14400, 21600, 43200, 86400.\n"
                },
                "systemPromptAisearch": {
                    "type": "string"
                },
                "systemPromptIndexSummarization": {
                    "type": "string"
                },
                "systemPromptRewriteQuery": {
                    "type": "string"
                },
                "tokenId": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"r2\", \"web-crawler\".\n"
                },
                "vectorizeName": {
                    "type": "string"
                }
            },
            "required": [
                "accountId",
                "aiGatewayId",
                "aisearchModel",
                "cache",
                "cacheThreshold",
                "chunk",
                "chunkOverlap",
                "chunkSize",
                "createdAt",
                "createdBy",
                "embeddingModel",
                "enable",
                "engineVersion",
                "fusionMethod",
                "hybridSearchEnabled",
                "aiSearchInstanceId",
                "indexMethod",
                "indexingOptions",
                "lastActivity",
                "maxNumResults",
                "modifiedAt",
                "modifiedBy",
                "namespace",
                "paused",
                "publicEndpointId",
                "publicEndpointParams",
                "reranking",
                "rerankingModel",
                "retrievalOptions",
                "rewriteModel",
                "rewriteQuery",
                "scoreThreshold",
                "sourceParams",
                "status",
                "summarization",
                "syncInterval",
                "vectorizeName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiGatewayId": {
                    "type": "string"
                },
                "aiSearchInstanceId": {
                    "type": "string",
                    "description": "AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.\n"
                },
                "aisearchModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "cache": {
                    "type": "boolean"
                },
                "cacheThreshold": {
                    "type": "string",
                    "description": "Available values: \"super*strict*match\", \"close*enough\", \"flexible*friend\", \u003cspan pulumi-lang-nodejs=\"\"anythingGoes\"\" pulumi-lang-dotnet=\"\"AnythingGoes\"\" pulumi-lang-go=\"\"anythingGoes\"\" pulumi-lang-python=\"\"anything_goes\"\" pulumi-lang-yaml=\"\"anythingGoes\"\" pulumi-lang-java=\"\"anythingGoes\"\"\u003e\"anythingGoes\"\u003c/span\u003e.\n"
                },
                "chunk": {
                    "type": "boolean"
                },
                "chunkOverlap": {
                    "type": "integer"
                },
                "chunkSize": {
                    "type": "integer"
                },
                "customMetadatas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceCustomMetadata:AiSearchInstanceCustomMetadata"
                    }
                },
                "embeddingModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/qwen/qwen3-embedding-0.6b\", \"@cf/baai/bge-m3\", \"@cf/baai/bge-large-en-v1.5\", \"@cf/google/embeddinggemma-300m\", \"google-ai-studio/gemini-embedding-001\", \"google-ai-studio/gemini-embedding-2-preview\", \"openai/text-embedding-3-small\", \"openai/text-embedding-3-large\", \"\".\n"
                },
                "fusionMethod": {
                    "type": "string",
                    "description": "Available values: \"max\", \"rrf\".\n"
                },
                "hybridSearchEnabled": {
                    "type": "boolean",
                    "description": "Deprecated — use\u003cspan pulumi-lang-nodejs=\" indexMethod \" pulumi-lang-dotnet=\" IndexMethod \" pulumi-lang-go=\" indexMethod \" pulumi-lang-python=\" index_method \" pulumi-lang-yaml=\" indexMethod \" pulumi-lang-java=\" indexMethod \"\u003e indexMethod \u003c/span\u003einstead.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "indexMethod": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceIndexMethod:AiSearchInstanceIndexMethod",
                    "description": "Controls which storage backends are used during indexing. Defaults to vector-only.\n"
                },
                "indexingOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceIndexingOptions:AiSearchInstanceIndexingOptions"
                },
                "maxNumResults": {
                    "type": "integer"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceMetadata:AiSearchInstanceMetadata"
                },
                "paused": {
                    "type": "boolean"
                },
                "publicEndpointParams": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParams:AiSearchInstancePublicEndpointParams"
                },
                "reranking": {
                    "type": "boolean"
                },
                "rerankingModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/baai/bge-reranker-base\", \"\".\n"
                },
                "retrievalOptions": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceRetrievalOptions:AiSearchInstanceRetrievalOptions"
                },
                "rewriteModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "rewriteQuery": {
                    "type": "boolean"
                },
                "scoreThreshold": {
                    "type": "number"
                },
                "source": {
                    "type": "string"
                },
                "sourceParams": {
                    "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParams:AiSearchInstanceSourceParams"
                },
                "summarization": {
                    "type": "boolean"
                },
                "summarizationModel": {
                    "type": "string",
                    "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                },
                "syncInterval": {
                    "type": "number",
                    "description": "Interval between automatic syncs, in seconds. Allowed values: 900 (15min), 1800 (30min), 3600 (1h), 7200 (2h), 14400 (4h), 21600 (6h), 43200 (12h), 86400 (24h).\nAvailable values: 900, 1800, 3600, 7200, 14400, 21600, 43200, 86400.\n"
                },
                "systemPromptAisearch": {
                    "type": "string"
                },
                "systemPromptIndexSummarization": {
                    "type": "string"
                },
                "systemPromptRewriteQuery": {
                    "type": "string"
                },
                "tokenId": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"r2\", \"web-crawler\".\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "aiSearchInstanceId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AiSearchInstance resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiGatewayId": {
                        "type": "string"
                    },
                    "aiSearchInstanceId": {
                        "type": "string",
                        "description": "AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.\n"
                    },
                    "aisearchModel": {
                        "type": "string",
                        "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                    },
                    "cache": {
                        "type": "boolean"
                    },
                    "cacheThreshold": {
                        "type": "string",
                        "description": "Available values: \"super*strict*match\", \"close*enough\", \"flexible*friend\", \u003cspan pulumi-lang-nodejs=\"\"anythingGoes\"\" pulumi-lang-dotnet=\"\"AnythingGoes\"\" pulumi-lang-go=\"\"anythingGoes\"\" pulumi-lang-python=\"\"anything_goes\"\" pulumi-lang-yaml=\"\"anythingGoes\"\" pulumi-lang-java=\"\"anythingGoes\"\"\u003e\"anythingGoes\"\u003c/span\u003e.\n"
                    },
                    "chunk": {
                        "type": "boolean"
                    },
                    "chunkOverlap": {
                        "type": "integer"
                    },
                    "chunkSize": {
                        "type": "integer"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "customMetadatas": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AiSearchInstanceCustomMetadata:AiSearchInstanceCustomMetadata"
                        }
                    },
                    "embeddingModel": {
                        "type": "string",
                        "description": "Available values: \"@cf/qwen/qwen3-embedding-0.6b\", \"@cf/baai/bge-m3\", \"@cf/baai/bge-large-en-v1.5\", \"@cf/google/embeddinggemma-300m\", \"google-ai-studio/gemini-embedding-001\", \"google-ai-studio/gemini-embedding-2-preview\", \"openai/text-embedding-3-small\", \"openai/text-embedding-3-large\", \"\".\n"
                    },
                    "enable": {
                        "type": "boolean"
                    },
                    "engineVersion": {
                        "type": "number"
                    },
                    "fusionMethod": {
                        "type": "string",
                        "description": "Available values: \"max\", \"rrf\".\n"
                    },
                    "hybridSearchEnabled": {
                        "type": "boolean",
                        "description": "Deprecated — use\u003cspan pulumi-lang-nodejs=\" indexMethod \" pulumi-lang-dotnet=\" IndexMethod \" pulumi-lang-go=\" indexMethod \" pulumi-lang-python=\" index_method \" pulumi-lang-yaml=\" indexMethod \" pulumi-lang-java=\" indexMethod \"\u003e indexMethod \u003c/span\u003einstead.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "indexMethod": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceIndexMethod:AiSearchInstanceIndexMethod",
                        "description": "Controls which storage backends are used during indexing. Defaults to vector-only.\n"
                    },
                    "indexingOptions": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceIndexingOptions:AiSearchInstanceIndexingOptions"
                    },
                    "lastActivity": {
                        "type": "string"
                    },
                    "maxNumResults": {
                        "type": "integer"
                    },
                    "metadata": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceMetadata:AiSearchInstanceMetadata"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "namespace": {
                        "type": "string"
                    },
                    "paused": {
                        "type": "boolean"
                    },
                    "publicEndpointId": {
                        "type": "string"
                    },
                    "publicEndpointParams": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstancePublicEndpointParams:AiSearchInstancePublicEndpointParams"
                    },
                    "reranking": {
                        "type": "boolean"
                    },
                    "rerankingModel": {
                        "type": "string",
                        "description": "Available values: \"@cf/baai/bge-reranker-base\", \"\".\n"
                    },
                    "retrievalOptions": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceRetrievalOptions:AiSearchInstanceRetrievalOptions"
                    },
                    "rewriteModel": {
                        "type": "string",
                        "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                    },
                    "rewriteQuery": {
                        "type": "boolean"
                    },
                    "scoreThreshold": {
                        "type": "number"
                    },
                    "source": {
                        "type": "string"
                    },
                    "sourceParams": {
                        "$ref": "#/types/cloudflare:index/AiSearchInstanceSourceParams:AiSearchInstanceSourceParams"
                    },
                    "status": {
                        "type": "string"
                    },
                    "summarization": {
                        "type": "boolean"
                    },
                    "summarizationModel": {
                        "type": "string",
                        "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n"
                    },
                    "syncInterval": {
                        "type": "number",
                        "description": "Interval between automatic syncs, in seconds. Allowed values: 900 (15min), 1800 (30min), 3600 (1h), 7200 (2h), 14400 (4h), 21600 (6h), 43200 (12h), 86400 (24h).\nAvailable values: 900, 1800, 3600, 7200, 14400, 21600, 43200, 86400.\n"
                    },
                    "systemPromptAisearch": {
                        "type": "string"
                    },
                    "systemPromptIndexSummarization": {
                        "type": "string"
                    },
                    "systemPromptRewriteQuery": {
                        "type": "string"
                    },
                    "tokenId": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"r2\", \"web-crawler\".\n"
                    },
                    "vectorizeName": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/aiSearchToken:AiSearchToken": {
            "description": "\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "cfApiId": {
                    "type": "string"
                },
                "cfApiKey": {
                    "type": "string",
                    "secret": true
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "legacy": {
                    "type": "boolean"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            },
            "required": [
                "cfApiId",
                "cfApiKey",
                "createdAt",
                "createdBy",
                "enabled",
                "legacy",
                "modifiedAt",
                "modifiedBy",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "cfApiId": {
                    "type": "string"
                },
                "cfApiKey": {
                    "type": "string",
                    "secret": true
                },
                "legacy": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "cfApiId",
                "cfApiKey",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AiSearchToken resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "cfApiId": {
                        "type": "string"
                    },
                    "cfApiKey": {
                        "type": "string",
                        "secret": true
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "legacy": {
                        "type": "boolean"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiShield:ApiShield": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\nWhen using `type = \"jwt\"` for auth ID characteristics, the \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e field must be a claim location expressed as `$(token_config_id):$(json_path)`, where:\n- \u003cspan pulumi-lang-nodejs=\"`tokenConfigId`\" pulumi-lang-dotnet=\"`TokenConfigId`\" pulumi-lang-go=\"`tokenConfigId`\" pulumi-lang-python=\"`token_config_id`\" pulumi-lang-yaml=\"`tokenConfigId`\" pulumi-lang-java=\"`tokenConfigId`\"\u003e`tokenConfigId`\u003c/span\u003e is the ID of the token configuration used in validating the JWT\n- \u003cspan pulumi-lang-nodejs=\"`jsonPath`\" pulumi-lang-dotnet=\"`JsonPath`\" pulumi-lang-go=\"`jsonPath`\" pulumi-lang-python=\"`json_path`\" pulumi-lang-yaml=\"`jsonPath`\" pulumi-lang-java=\"`jsonPath`\"\u003e`jsonPath`\u003c/span\u003e is a [RFC 9535](https://www.rfc-editor.org/rfc/rfc9535.html) [JSONPath](https://goessner.net/articles/JsonPath/) expression that returns a singleton value (interpreted as a string)\n\nThe JSONPath expression may be in dot or bracket notation and may only specify literal keys or array indexes.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShield = new cloudflare.ApiShield(\"example_api_shield\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    authIdCharacteristics: [{\n        name: \"authorization\",\n        type: \"header\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield = cloudflare.ApiShield(\"example_api_shield\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    auth_id_characteristics=[{\n        \"name\": \"authorization\",\n        \"type\": \"header\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShield = new Cloudflare.Index.ApiShield(\"example_api_shield\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AuthIdCharacteristics = new[]\n        {\n            new Cloudflare.Inputs.ApiShieldAuthIdCharacteristicArgs\n            {\n                Name = \"authorization\",\n                Type = \"header\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewApiShield(ctx, \"example_api_shield\", \u0026cloudflare.ApiShieldArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAuthIdCharacteristics: cloudflare.ApiShieldAuthIdCharacteristicArray{\n\t\t\t\t\u0026cloudflare.ApiShieldAuthIdCharacteristicArgs{\n\t\t\t\t\tName: pulumi.String(\"authorization\"),\n\t\t\t\t\tType: pulumi.String(\"header\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiShield;\nimport com.pulumi.cloudflare.ApiShieldArgs;\nimport com.pulumi.cloudflare.inputs.ApiShieldAuthIdCharacteristicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiShield = new ApiShield(\"exampleApiShield\", ApiShieldArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .authIdCharacteristics(ApiShieldAuthIdCharacteristicArgs.builder()\n                .name(\"authorization\")\n                .type(\"header\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiShield:\n    type: cloudflare:ApiShield\n    name: example_api_shield\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      authIdCharacteristics:\n        - name: authorization\n          type: header\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/apiShield:ApiShield example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "authIdCharacteristics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ApiShieldAuthIdCharacteristic:ApiShieldAuthIdCharacteristic"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "authIdCharacteristics",
                "zoneId"
            ],
            "inputProperties": {
                "authIdCharacteristics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ApiShieldAuthIdCharacteristic:ApiShieldAuthIdCharacteristic"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "authIdCharacteristics",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiShield resources.\n",
                "properties": {
                    "authIdCharacteristics": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ApiShieldAuthIdCharacteristic:ApiShieldAuthIdCharacteristic"
                        }
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiShieldDiscoveryOperation:ApiShieldDiscoveryOperation": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Domain API Gateway`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldDiscoveryOperation = new cloudflare.ApiShieldDiscoveryOperation(\"example_api_shield_discovery_operation\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    operationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    state: \"review\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_discovery_operation = cloudflare.ApiShieldDiscoveryOperation(\"example_api_shield_discovery_operation\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    operation_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    state=\"review\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldDiscoveryOperation = new Cloudflare.Index.ApiShieldDiscoveryOperation(\"example_api_shield_discovery_operation\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        OperationId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        State = \"review\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewApiShieldDiscoveryOperation(ctx, \"example_api_shield_discovery_operation\", \u0026cloudflare.ApiShieldDiscoveryOperationArgs{\n\t\t\tZoneId:      pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOperationId: pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tState:       pulumi.String(\"review\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiShieldDiscoveryOperation;\nimport com.pulumi.cloudflare.ApiShieldDiscoveryOperationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiShieldDiscoveryOperation = new ApiShieldDiscoveryOperation(\"exampleApiShieldDiscoveryOperation\", ApiShieldDiscoveryOperationArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .operationId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .state(\"review\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiShieldDiscoveryOperation:\n    type: cloudflare:ApiShieldDiscoveryOperation\n    name: example_api_shield_discovery_operation\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      operationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      state: review\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "operationId": {
                    "type": "string",
                    "description": "UUID."
                },
                "state": {
                    "type": "string",
                    "description": "Mark state of operation in API Discovery\n  * \u003cspan pulumi-lang-nodejs=\"`review`\" pulumi-lang-dotnet=\"`Review`\" pulumi-lang-go=\"`review`\" pulumi-lang-python=\"`review`\" pulumi-lang-yaml=\"`review`\" pulumi-lang-java=\"`review`\"\u003e`review`\u003c/span\u003e - Mark operation as for review\n  * \u003cspan pulumi-lang-nodejs=\"`ignored`\" pulumi-lang-dotnet=\"`Ignored`\" pulumi-lang-go=\"`ignored`\" pulumi-lang-python=\"`ignored`\" pulumi-lang-yaml=\"`ignored`\" pulumi-lang-java=\"`ignored`\"\u003e`ignored`\u003c/span\u003e - Mark operation as ignored\nAvailable values: \"review\", \"ignored\"."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "operationId"
            ],
            "inputProperties": {
                "operationId": {
                    "type": "string",
                    "description": "UUID."
                },
                "state": {
                    "type": "string",
                    "description": "Mark state of operation in API Discovery\n  * \u003cspan pulumi-lang-nodejs=\"`review`\" pulumi-lang-dotnet=\"`Review`\" pulumi-lang-go=\"`review`\" pulumi-lang-python=\"`review`\" pulumi-lang-yaml=\"`review`\" pulumi-lang-java=\"`review`\"\u003e`review`\u003c/span\u003e - Mark operation as for review\n  * \u003cspan pulumi-lang-nodejs=\"`ignored`\" pulumi-lang-dotnet=\"`Ignored`\" pulumi-lang-go=\"`ignored`\" pulumi-lang-python=\"`ignored`\" pulumi-lang-yaml=\"`ignored`\" pulumi-lang-java=\"`ignored`\"\u003e`ignored`\u003c/span\u003e - Mark operation as ignored\nAvailable values: \"review\", \"ignored\"."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "operationId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiShieldDiscoveryOperation resources.\n",
                "properties": {
                    "operationId": {
                        "type": "string",
                        "description": "UUID."
                    },
                    "state": {
                        "type": "string",
                        "description": "Mark state of operation in API Discovery\n  * \u003cspan pulumi-lang-nodejs=\"`review`\" pulumi-lang-dotnet=\"`Review`\" pulumi-lang-go=\"`review`\" pulumi-lang-python=\"`review`\" pulumi-lang-yaml=\"`review`\" pulumi-lang-java=\"`review`\"\u003e`review`\u003c/span\u003e - Mark operation as for review\n  * \u003cspan pulumi-lang-nodejs=\"`ignored`\" pulumi-lang-dotnet=\"`Ignored`\" pulumi-lang-go=\"`ignored`\" pulumi-lang-python=\"`ignored`\" pulumi-lang-yaml=\"`ignored`\" pulumi-lang-java=\"`ignored`\"\u003e`ignored`\u003c/span\u003e - Mark operation as ignored\nAvailable values: \"review\", \"ignored\"."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiShieldOperation:ApiShieldOperation": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldOperation = new cloudflare.ApiShieldOperation(\"example_api_shield_operation\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    endpoint: \"/api/v1/users/{var1}\",\n    host: \"www.example.com\",\n    method: \"GET\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_operation = cloudflare.ApiShieldOperation(\"example_api_shield_operation\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    endpoint=\"/api/v1/users/{var1}\",\n    host=\"www.example.com\",\n    method=\"GET\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldOperation = new Cloudflare.Index.ApiShieldOperation(\"example_api_shield_operation\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Endpoint = \"/api/v1/users/{var1}\",\n        Host = \"www.example.com\",\n        Method = \"GET\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewApiShieldOperation(ctx, \"example_api_shield_operation\", \u0026cloudflare.ApiShieldOperationArgs{\n\t\t\tZoneId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEndpoint: pulumi.String(\"/api/v1/users/{var1}\"),\n\t\t\tHost:     pulumi.String(\"www.example.com\"),\n\t\t\tMethod:   pulumi.String(\"GET\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiShieldOperation;\nimport com.pulumi.cloudflare.ApiShieldOperationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiShieldOperation = new ApiShieldOperation(\"exampleApiShieldOperation\", ApiShieldOperationArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .endpoint(\"/api/v1/users/{var1}\")\n            .host(\"www.example.com\")\n            .method(\"GET\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiShieldOperation:\n    type: cloudflare:ApiShieldOperation\n    name: example_api_shield_operation\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      endpoint: /api/v1/users/{var1}\n      host: www.example.com\n      method: GET\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/apiShieldOperation:ApiShieldOperation example '\u003czone_id\u003e/\u003coperation_id\u003e'\n```\n\n",
            "properties": {
                "endpoint": {
                    "type": "string",
                    "description": "The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/.\n"
                },
                "features": {
                    "$ref": "#/types/cloudflare:index/ApiShieldOperationFeatures:ApiShieldOperationFeatures"
                },
                "host": {
                    "type": "string",
                    "description": "RFC3986-compliant host.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method used to access the endpoint.\nAvailable values: \"GET\", \"POST\", \"HEAD\", \"OPTIONS\", \"PUT\", \"DELETE\", \"CONNECT\", \"PATCH\", \"TRACE\".\n"
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "endpoint",
                "features",
                "host",
                "lastUpdated",
                "method",
                "operationId"
            ],
            "inputProperties": {
                "endpoint": {
                    "type": "string",
                    "description": "The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/.\n"
                },
                "host": {
                    "type": "string",
                    "description": "RFC3986-compliant host.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The HTTP method used to access the endpoint.\nAvailable values: \"GET\", \"POST\", \"HEAD\", \"OPTIONS\", \"PUT\", \"DELETE\", \"CONNECT\", \"PATCH\", \"TRACE\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "endpoint",
                "host",
                "method"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiShieldOperation resources.\n",
                "properties": {
                    "endpoint": {
                        "type": "string",
                        "description": "The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/.\n"
                    },
                    "features": {
                        "$ref": "#/types/cloudflare:index/ApiShieldOperationFeatures:ApiShieldOperationFeatures"
                    },
                    "host": {
                        "type": "string",
                        "description": "RFC3986-compliant host.\n"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "method": {
                        "type": "string",
                        "description": "The HTTP method used to access the endpoint.\nAvailable values: \"GET\", \"POST\", \"HEAD\", \"OPTIONS\", \"PUT\", \"DELETE\", \"CONNECT\", \"PATCH\", \"TRACE\".\n"
                    },
                    "operationId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiShieldOperationSchemaValidationSettings:ApiShieldOperationSchemaValidationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n\u003e \u003cspan pulumi-lang-nodejs=\"`cloudflare.ApiShieldOperationSchemaValidationSettings`\" pulumi-lang-dotnet=\"`cloudflare.ApiShieldOperationSchemaValidationSettings`\" pulumi-lang-go=\"`ApiShieldOperationSchemaValidationSettings`\" pulumi-lang-python=\"`ApiShieldOperationSchemaValidationSettings`\" pulumi-lang-yaml=\"`cloudflare.ApiShieldOperationSchemaValidationSettings`\" pulumi-lang-java=\"`cloudflare.ApiShieldOperationSchemaValidationSettings`\"\u003e`cloudflare.ApiShieldOperationSchemaValidationSettings`\u003c/span\u003e is in a deprecation phase and will be removed in the future.\n  Instead, please utilize the\u003cspan pulumi-lang-nodejs=\" cloudflare.SchemaValidationOperationSettings \" pulumi-lang-dotnet=\" cloudflare.SchemaValidationOperationSettings \" pulumi-lang-go=\" SchemaValidationOperationSettings \" pulumi-lang-python=\" SchemaValidationOperationSettings \" pulumi-lang-yaml=\" cloudflare.SchemaValidationOperationSettings \" pulumi-lang-java=\" cloudflare.SchemaValidationOperationSettings \"\u003e cloudflare.SchemaValidationOperationSettings \u003c/span\u003eresource instead.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldOperationSchemaValidationSettings = new cloudflare.ApiShieldOperationSchemaValidationSettings(\"example_api_shield_operation_schema_validation_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    operationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    mitigationAction: \"block\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_operation_schema_validation_settings = cloudflare.ApiShieldOperationSchemaValidationSettings(\"example_api_shield_operation_schema_validation_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    operation_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    mitigation_action=\"block\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldOperationSchemaValidationSettings = new Cloudflare.Index.ApiShieldOperationSchemaValidationSettings(\"example_api_shield_operation_schema_validation_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        OperationId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        MitigationAction = \"block\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewApiShieldOperationSchemaValidationSettings(ctx, \"example_api_shield_operation_schema_validation_settings\", \u0026cloudflare.ApiShieldOperationSchemaValidationSettingsArgs{\n\t\t\tZoneId:           pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOperationId:      pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tMitigationAction: pulumi.String(\"block\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiShieldOperationSchemaValidationSettings;\nimport com.pulumi.cloudflare.ApiShieldOperationSchemaValidationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiShieldOperationSchemaValidationSettings = new ApiShieldOperationSchemaValidationSettings(\"exampleApiShieldOperationSchemaValidationSettings\", ApiShieldOperationSchemaValidationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .operationId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .mitigationAction(\"block\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiShieldOperationSchemaValidationSettings:\n    type: cloudflare:ApiShieldOperationSchemaValidationSettings\n    name: example_api_shield_operation_schema_validation_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      operationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      mitigationAction: block\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/apiShieldOperationSchemaValidationSettings:ApiShieldOperationSchemaValidationSettings example '\u003czone_id\u003e/\u003coperation_id\u003e'\n```\n\n",
            "properties": {
                "mitigationAction": {
                    "type": "string",
                    "description": "When set, this applies a mitigation action to this operation\n\n  - \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e log request when request does not conform to schema for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e deny access to the site when request does not conform to schema for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e will skip mitigation for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e indicates that no operation level mitigation is in place, see Zone Level Schema Validation Settings for mitigation action that will be applied\nAvailable values: \"log\", \"block\", \"none\"."
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "operationId"
            ],
            "inputProperties": {
                "mitigationAction": {
                    "type": "string",
                    "description": "When set, this applies a mitigation action to this operation\n\n  - \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e log request when request does not conform to schema for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e deny access to the site when request does not conform to schema for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e will skip mitigation for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e indicates that no operation level mitigation is in place, see Zone Level Schema Validation Settings for mitigation action that will be applied\nAvailable values: \"log\", \"block\", \"none\"."
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "operationId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiShieldOperationSchemaValidationSettings resources.\n",
                "properties": {
                    "mitigationAction": {
                        "type": "string",
                        "description": "When set, this applies a mitigation action to this operation\n\n  - \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e log request when request does not conform to schema for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e deny access to the site when request does not conform to schema for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e will skip mitigation for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e indicates that no operation level mitigation is in place, see Zone Level Schema Validation Settings for mitigation action that will be applied\nAvailable values: \"log\", \"block\", \"none\"."
                    },
                    "operationId": {
                        "type": "string",
                        "description": "UUID."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiShieldSchema:ApiShieldSchema": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n\u003e \u003cspan pulumi-lang-nodejs=\"`cloudflare.ApiShieldSchema`\" pulumi-lang-dotnet=\"`cloudflare.ApiShieldSchema`\" pulumi-lang-go=\"`ApiShieldSchema`\" pulumi-lang-python=\"`ApiShieldSchema`\" pulumi-lang-yaml=\"`cloudflare.ApiShieldSchema`\" pulumi-lang-java=\"`cloudflare.ApiShieldSchema`\"\u003e`cloudflare.ApiShieldSchema`\u003c/span\u003e is in a deprecation phase and will be removed in the future.\n  Instead, please utilize the\u003cspan pulumi-lang-nodejs=\" cloudflare.SchemaValidationSchemas \" pulumi-lang-dotnet=\" cloudflare.SchemaValidationSchemas \" pulumi-lang-go=\" SchemaValidationSchemas \" pulumi-lang-python=\" SchemaValidationSchemas \" pulumi-lang-yaml=\" cloudflare.SchemaValidationSchemas \" pulumi-lang-java=\" cloudflare.SchemaValidationSchemas \"\u003e cloudflare.SchemaValidationSchemas \u003c/span\u003eresource instead.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldSchema = new cloudflare.ApiShieldSchema(\"example_api_shield_schema\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    file: \"Example data\",\n    kind: \"openapi_v3\",\n    name: \"petstore schema\",\n    validationEnabled: \"true\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_schema = cloudflare.ApiShieldSchema(\"example_api_shield_schema\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    file=\"Example data\",\n    kind=\"openapi_v3\",\n    name=\"petstore schema\",\n    validation_enabled=\"true\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldSchema = new Cloudflare.Index.ApiShieldSchema(\"example_api_shield_schema\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        File = \"Example data\",\n        Kind = \"openapi_v3\",\n        Name = \"petstore schema\",\n        ValidationEnabled = \"true\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewApiShieldSchema(ctx, \"example_api_shield_schema\", \u0026cloudflare.ApiShieldSchemaArgs{\n\t\t\tZoneId:            pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFile:              pulumi.String(\"Example data\"),\n\t\t\tKind:              pulumi.String(\"openapi_v3\"),\n\t\t\tName:              pulumi.String(\"petstore schema\"),\n\t\t\tValidationEnabled: pulumi.String(\"true\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiShieldSchema;\nimport com.pulumi.cloudflare.ApiShieldSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiShieldSchema = new ApiShieldSchema(\"exampleApiShieldSchema\", ApiShieldSchemaArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .file(\"Example data\")\n            .kind(\"openapi_v3\")\n            .name(\"petstore schema\")\n            .validationEnabled(\"true\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiShieldSchema:\n    type: cloudflare:ApiShieldSchema\n    name: example_api_shield_schema\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      file: Example data\n      kind: openapi_v3\n      name: petstore schema\n      validationEnabled: 'true'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "file": {
                    "type": "string",
                    "description": "Schema file bytes\n"
                },
                "kind": {
                    "type": "string",
                    "description": "Kind of schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the schema\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/ApiShieldSchemaSchema:ApiShieldSchemaSchema"
                },
                "schemaId": {
                    "type": "string"
                },
                "source": {
                    "type": "string",
                    "description": "Source of the schema\n"
                },
                "uploadDetails": {
                    "$ref": "#/types/cloudflare:index/ApiShieldSchemaUploadDetails:ApiShieldSchemaUploadDetails"
                },
                "validationEnabled": {
                    "type": "string",
                    "description": "Flag whether schema is enabled for validation.\nAvailable values: \"true\", \"false\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdAt",
                "file",
                "kind",
                "schema",
                "source",
                "uploadDetails"
            ],
            "inputProperties": {
                "file": {
                    "type": "string",
                    "description": "Schema file bytes\n"
                },
                "kind": {
                    "type": "string",
                    "description": "Kind of schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the schema\n"
                },
                "schemaId": {
                    "type": "string"
                },
                "validationEnabled": {
                    "type": "string",
                    "description": "Flag whether schema is enabled for validation.\nAvailable values: \"true\", \"false\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "file",
                "kind"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiShieldSchema resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string"
                    },
                    "file": {
                        "type": "string",
                        "description": "Schema file bytes\n"
                    },
                    "kind": {
                        "type": "string",
                        "description": "Kind of schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the schema\n"
                    },
                    "schema": {
                        "$ref": "#/types/cloudflare:index/ApiShieldSchemaSchema:ApiShieldSchemaSchema"
                    },
                    "schemaId": {
                        "type": "string"
                    },
                    "source": {
                        "type": "string",
                        "description": "Source of the schema\n"
                    },
                    "uploadDetails": {
                        "$ref": "#/types/cloudflare:index/ApiShieldSchemaUploadDetails:ApiShieldSchemaUploadDetails"
                    },
                    "validationEnabled": {
                        "type": "string",
                        "description": "Flag whether schema is enabled for validation.\nAvailable values: \"true\", \"false\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiShieldSchemaValidationSettings:ApiShieldSchemaValidationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n\u003e \u003cspan pulumi-lang-nodejs=\"`cloudflare.ApiShieldSchemaValidationSettings`\" pulumi-lang-dotnet=\"`cloudflare.ApiShieldSchemaValidationSettings`\" pulumi-lang-go=\"`ApiShieldSchemaValidationSettings`\" pulumi-lang-python=\"`ApiShieldSchemaValidationSettings`\" pulumi-lang-yaml=\"`cloudflare.ApiShieldSchemaValidationSettings`\" pulumi-lang-java=\"`cloudflare.ApiShieldSchemaValidationSettings`\"\u003e`cloudflare.ApiShieldSchemaValidationSettings`\u003c/span\u003e is in a deprecation phase and will be removed in the future.\n  Instead, please utilize the\u003cspan pulumi-lang-nodejs=\" cloudflare.SchemaValidationSettings \" pulumi-lang-dotnet=\" cloudflare.SchemaValidationSettings \" pulumi-lang-go=\" SchemaValidationSettings \" pulumi-lang-python=\" SchemaValidationSettings \" pulumi-lang-yaml=\" cloudflare.SchemaValidationSettings \" pulumi-lang-java=\" cloudflare.SchemaValidationSettings \"\u003e cloudflare.SchemaValidationSettings \u003c/span\u003eresource instead.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldSchemaValidationSettings = new cloudflare.ApiShieldSchemaValidationSettings(\"example_api_shield_schema_validation_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    validationDefaultMitigationAction: \"block\",\n    validationOverrideMitigationAction: \"none\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_schema_validation_settings = cloudflare.ApiShieldSchemaValidationSettings(\"example_api_shield_schema_validation_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    validation_default_mitigation_action=\"block\",\n    validation_override_mitigation_action=\"none\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldSchemaValidationSettings = new Cloudflare.Index.ApiShieldSchemaValidationSettings(\"example_api_shield_schema_validation_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ValidationDefaultMitigationAction = \"block\",\n        ValidationOverrideMitigationAction = \"none\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewApiShieldSchemaValidationSettings(ctx, \"example_api_shield_schema_validation_settings\", \u0026cloudflare.ApiShieldSchemaValidationSettingsArgs{\n\t\t\tZoneId:                             pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValidationDefaultMitigationAction:  pulumi.String(\"block\"),\n\t\t\tValidationOverrideMitigationAction: pulumi.String(\"none\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiShieldSchemaValidationSettings;\nimport com.pulumi.cloudflare.ApiShieldSchemaValidationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiShieldSchemaValidationSettings = new ApiShieldSchemaValidationSettings(\"exampleApiShieldSchemaValidationSettings\", ApiShieldSchemaValidationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .validationDefaultMitigationAction(\"block\")\n            .validationOverrideMitigationAction(\"none\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiShieldSchemaValidationSettings:\n    type: cloudflare:ApiShieldSchemaValidationSettings\n    name: example_api_shield_schema_validation_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      validationDefaultMitigationAction: block\n      validationOverrideMitigationAction: none\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/apiShieldSchemaValidationSettings:ApiShieldSchemaValidationSettings example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "validationDefaultMitigationAction": {
                    "type": "string",
                    "description": "The default mitigation action used when there is no mitigation action defined on the operation\n"
                },
                "validationOverrideMitigationAction": {
                    "type": "string",
                    "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e will skip running schema validation entirely for the request\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e indicates that no override is in place\n\nTo clear any override, use the special value \u003cspan pulumi-lang-nodejs=\"`disableOverride`\" pulumi-lang-dotnet=\"`DisableOverride`\" pulumi-lang-go=\"`disableOverride`\" pulumi-lang-python=\"`disable_override`\" pulumi-lang-yaml=\"`disableOverride`\" pulumi-lang-java=\"`disableOverride`\"\u003e`disableOverride`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"disableOverride\"\" pulumi-lang-dotnet=\"\"DisableOverride\"\" pulumi-lang-go=\"\"disableOverride\"\" pulumi-lang-python=\"\"disable_override\"\" pulumi-lang-yaml=\"\"disableOverride\"\" pulumi-lang-java=\"\"disableOverride\"\"\u003e\"disableOverride\"\u003c/span\u003e."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "validationDefaultMitigationAction",
                "zoneId"
            ],
            "inputProperties": {
                "validationDefaultMitigationAction": {
                    "type": "string",
                    "description": "The default mitigation action used when there is no mitigation action defined on the operation\n"
                },
                "validationOverrideMitigationAction": {
                    "type": "string",
                    "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e will skip running schema validation entirely for the request\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e indicates that no override is in place\n\nTo clear any override, use the special value \u003cspan pulumi-lang-nodejs=\"`disableOverride`\" pulumi-lang-dotnet=\"`DisableOverride`\" pulumi-lang-go=\"`disableOverride`\" pulumi-lang-python=\"`disable_override`\" pulumi-lang-yaml=\"`disableOverride`\" pulumi-lang-java=\"`disableOverride`\"\u003e`disableOverride`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"disableOverride\"\" pulumi-lang-dotnet=\"\"DisableOverride\"\" pulumi-lang-go=\"\"disableOverride\"\" pulumi-lang-python=\"\"disable_override\"\" pulumi-lang-yaml=\"\"disableOverride\"\" pulumi-lang-java=\"\"disableOverride\"\"\u003e\"disableOverride\"\u003c/span\u003e."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "validationDefaultMitigationAction",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiShieldSchemaValidationSettings resources.\n",
                "properties": {
                    "validationDefaultMitigationAction": {
                        "type": "string",
                        "description": "The default mitigation action used when there is no mitigation action defined on the operation\n"
                    },
                    "validationOverrideMitigationAction": {
                        "type": "string",
                        "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e will skip running schema validation entirely for the request\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e indicates that no override is in place\n\nTo clear any override, use the special value \u003cspan pulumi-lang-nodejs=\"`disableOverride`\" pulumi-lang-dotnet=\"`DisableOverride`\" pulumi-lang-go=\"`disableOverride`\" pulumi-lang-python=\"`disable_override`\" pulumi-lang-yaml=\"`disableOverride`\" pulumi-lang-java=\"`disableOverride`\"\u003e`disableOverride`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e\nAvailable values: \"none\", \u003cspan pulumi-lang-nodejs=\"\"disableOverride\"\" pulumi-lang-dotnet=\"\"DisableOverride\"\" pulumi-lang-go=\"\"disableOverride\"\" pulumi-lang-python=\"\"disable_override\"\" pulumi-lang-yaml=\"\"disableOverride\"\" pulumi-lang-java=\"\"disableOverride\"\"\u003e\"disableOverride\"\u003c/span\u003e."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/apiToken:ApiToken": {
            "description": "Accepted Permissions\n\n- `API Tokens Read`\n- `API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiToken = new cloudflare.ApiToken(\"example_api_token\", {\n    name: \"workers read-only token\",\n    policies: [{\n        effect: \"allow\",\n        permissionGroups: [\n            {\n                id: \"1a71c399035b4950a1bd1466bbe4f420\",\n            },\n            {\n                id: \"8b47d2786a534c08a1f94ee8f9f599ef\",\n            },\n        ],\n        resources: JSON.stringify({\n            \"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\": \"*\",\n        }),\n    }],\n    condition: {\n        requestIp: {\n            ins: [\n                \"123.123.123.0/24\",\n                \"2606:4700::/32\",\n            ],\n            notIns: [\n                \"123.123.123.0/28\",\n                \"2606:4700:4700::/48\",\n            ],\n        },\n    },\n    expiresOn: \"2027-10-01T00:00:00Z\",\n    notBefore: \"2025-10-01T00:00:00Z\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_cloudflare as cloudflare\n\nexample_api_token = cloudflare.ApiToken(\"example_api_token\",\n    name=\"workers read-only token\",\n    policies=[{\n        \"effect\": \"allow\",\n        \"permission_groups\": [\n            {\n                \"id\": \"1a71c399035b4950a1bd1466bbe4f420\",\n            },\n            {\n                \"id\": \"8b47d2786a534c08a1f94ee8f9f599ef\",\n            },\n        ],\n        \"resources\": json.dumps({\n            \"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\": \"*\",\n        }),\n    }],\n    condition={\n        \"request_ip\": {\n            \"ins\": [\n                \"123.123.123.0/24\",\n                \"2606:4700::/32\",\n            ],\n            \"not_ins\": [\n                \"123.123.123.0/28\",\n                \"2606:4700:4700::/48\",\n            ],\n        },\n    },\n    expires_on=\"2027-10-01T00:00:00Z\",\n    not_before=\"2025-10-01T00:00:00Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiToken = new Cloudflare.Index.ApiToken(\"example_api_token\", new()\n    {\n        Name = \"workers read-only token\",\n        Policies = new[]\n        {\n            new Cloudflare.Inputs.ApiTokenPolicyArgs\n            {\n                Effect = \"allow\",\n                PermissionGroups = new[]\n                {\n                    new Cloudflare.Inputs.ApiTokenPolicyPermissionGroupArgs\n                    {\n                        Id = \"1a71c399035b4950a1bd1466bbe4f420\",\n                    },\n                    new Cloudflare.Inputs.ApiTokenPolicyPermissionGroupArgs\n                    {\n                        Id = \"8b47d2786a534c08a1f94ee8f9f599ef\",\n                    },\n                },\n                Resources = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n                {\n                    [\"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\"] = \"*\",\n                }),\n            },\n        },\n        Condition = new Cloudflare.Inputs.ApiTokenConditionArgs\n        {\n            RequestIp = new Cloudflare.Inputs.ApiTokenConditionRequestIpArgs\n            {\n                Ins = new[]\n                {\n                    \"123.123.123.0/24\",\n                    \"2606:4700::/32\",\n                },\n                NotIns = new[]\n                {\n                    \"123.123.123.0/28\",\n                    \"2606:4700:4700::/48\",\n                },\n            },\n        },\n        ExpiresOn = \"2027-10-01T00:00:00Z\",\n        NotBefore = \"2025-10-01T00:00:00Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\": \"*\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = cloudflare.NewApiToken(ctx, \"example_api_token\", \u0026cloudflare.ApiTokenArgs{\n\t\t\tName: pulumi.String(\"workers read-only token\"),\n\t\t\tPolicies: cloudflare.ApiTokenPolicyArray{\n\t\t\t\t\u0026cloudflare.ApiTokenPolicyArgs{\n\t\t\t\t\tEffect: pulumi.String(\"allow\"),\n\t\t\t\t\tPermissionGroups: cloudflare.ApiTokenPolicyPermissionGroupArray{\n\t\t\t\t\t\t\u0026cloudflare.ApiTokenPolicyPermissionGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"1a71c399035b4950a1bd1466bbe4f420\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cloudflare.ApiTokenPolicyPermissionGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"8b47d2786a534c08a1f94ee8f9f599ef\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.String(pulumi.String(json0)),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCondition: \u0026cloudflare.ApiTokenConditionArgs{\n\t\t\t\tRequestIp: \u0026cloudflare.ApiTokenConditionRequestIpArgs{\n\t\t\t\t\tIns: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"123.123.123.0/24\"),\n\t\t\t\t\t\tpulumi.String(\"2606:4700::/32\"),\n\t\t\t\t\t},\n\t\t\t\t\tNotIns: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"123.123.123.0/28\"),\n\t\t\t\t\t\tpulumi.String(\"2606:4700:4700::/48\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tExpiresOn: pulumi.String(\"2027-10-01T00:00:00Z\"),\n\t\t\tNotBefore: pulumi.String(\"2025-10-01T00:00:00Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ApiToken;\nimport com.pulumi.cloudflare.ApiTokenArgs;\nimport com.pulumi.cloudflare.inputs.ApiTokenPolicyArgs;\nimport com.pulumi.cloudflare.inputs.ApiTokenConditionArgs;\nimport com.pulumi.cloudflare.inputs.ApiTokenConditionRequestIpArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleApiToken = new ApiToken(\"exampleApiToken\", ApiTokenArgs.builder()\n            .name(\"workers read-only token\")\n            .policies(ApiTokenPolicyArgs.builder()\n                .effect(\"allow\")\n                .permissionGroups(                \n                    ApiTokenPolicyPermissionGroupArgs.builder()\n                        .id(\"1a71c399035b4950a1bd1466bbe4f420\")\n                        .build(),\n                    ApiTokenPolicyPermissionGroupArgs.builder()\n                        .id(\"8b47d2786a534c08a1f94ee8f9f599ef\")\n                        .build())\n                .resources(serializeJson(\n                    jsonObject(\n                        jsonProperty(\"com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb\", \"*\")\n                    )))\n                .build())\n            .condition(ApiTokenConditionArgs.builder()\n                .requestIp(ApiTokenConditionRequestIpArgs.builder()\n                    .ins(                    \n                        \"123.123.123.0/24\",\n                        \"2606:4700::/32\")\n                    .notIns(                    \n                        \"123.123.123.0/28\",\n                        \"2606:4700:4700::/48\")\n                    .build())\n                .build())\n            .expiresOn(\"2027-10-01T00:00:00Z\")\n            .notBefore(\"2025-10-01T00:00:00Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleApiToken:\n    type: cloudflare:ApiToken\n    name: example_api_token\n    properties:\n      name: workers read-only token\n      policies:\n        - effect: allow\n          permissionGroups:\n            - id: 1a71c399035b4950a1bd1466bbe4f420\n            - id: 8b47d2786a534c08a1f94ee8f9f599ef\n          resources:\n            fn::toJSON:\n              com.cloudflare.api.account.b67e14daa5f8dceeb91fe5449ba496eb: '*'\n      condition:\n        requestIp:\n          ins:\n            - 123.123.123.0/24\n            - 2606:4700::/32\n          notIns:\n            - 123.123.123.0/28\n            - 2606:4700:4700::/48\n      expiresOn: 2027-10-01T00:00:00Z\n      notBefore: 2025-10-01T00:00:00Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/apiToken:ApiToken example '\u003ctoken_id\u003e'\n```\n\n",
            "properties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/ApiTokenCondition:ApiTokenCondition"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                },
                "issuedOn": {
                    "type": "string",
                    "description": "The time on which the token was created.\n"
                },
                "lastUsedOn": {
                    "type": "string",
                    "description": "Last time the token was used.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time the token was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Token name.\n"
                },
                "notBefore": {
                    "type": "string",
                    "description": "The time before which the token MUST NOT be accepted for processing.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ApiTokenPolicy:ApiTokenPolicy"
                    },
                    "description": "Set of access policies assigned to the token.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                },
                "value": {
                    "type": "string",
                    "description": "The token value.\n",
                    "secret": true
                }
            },
            "required": [
                "issuedOn",
                "lastUsedOn",
                "modifiedOn",
                "name",
                "policies",
                "status",
                "value"
            ],
            "inputProperties": {
                "condition": {
                    "$ref": "#/types/cloudflare:index/ApiTokenCondition:ApiTokenCondition"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Token name.\n"
                },
                "notBefore": {
                    "type": "string",
                    "description": "The time before which the token MUST NOT be accepted for processing.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ApiTokenPolicy:ApiTokenPolicy"
                    },
                    "description": "Set of access policies assigned to the token.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                }
            },
            "requiredInputs": [
                "name",
                "policies"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiToken resources.\n",
                "properties": {
                    "condition": {
                        "$ref": "#/types/cloudflare:index/ApiTokenCondition:ApiTokenCondition"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n"
                    },
                    "issuedOn": {
                        "type": "string",
                        "description": "The time on which the token was created.\n"
                    },
                    "lastUsedOn": {
                        "type": "string",
                        "description": "Last time the token was used.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time the token was modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Token name.\n"
                    },
                    "notBefore": {
                        "type": "string",
                        "description": "The time before which the token MUST NOT be accepted for processing.\n"
                    },
                    "policies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ApiTokenPolicy:ApiTokenPolicy"
                        },
                        "description": "Set of access policies assigned to the token.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "The token value.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/argoSmartRouting:ArgoSmartRouting": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleArgoSmartRouting = new cloudflare.ArgoSmartRouting(\"example_argo_smart_routing\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_argo_smart_routing = cloudflare.ArgoSmartRouting(\"example_argo_smart_routing\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleArgoSmartRouting = new Cloudflare.Index.ArgoSmartRouting(\"example_argo_smart_routing\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = \"on\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewArgoSmartRouting(ctx, \"example_argo_smart_routing\", \u0026cloudflare.ArgoSmartRoutingArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue:  pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ArgoSmartRouting;\nimport com.pulumi.cloudflare.ArgoSmartRoutingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleArgoSmartRouting = new ArgoSmartRouting(\"exampleArgoSmartRouting\", ArgoSmartRoutingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(\"on\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleArgoSmartRouting:\n    type: cloudflare:ArgoSmartRouting\n    name: example_argo_smart_routing\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/argoSmartRouting:ArgoSmartRouting example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Specifies if the setting is editable.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Specifies the time when the setting was last modified.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Specifies the enablement value of Argo Smart Routing.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Specifies the zone associated with the API call.\n"
                }
            },
            "required": [
                "editable",
                "modifiedOn",
                "value",
                "zoneId"
            ],
            "inputProperties": {
                "value": {
                    "type": "string",
                    "description": "Specifies the enablement value of Argo Smart Routing.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Specifies the zone associated with the API call.\n"
                }
            },
            "requiredInputs": [
                "value",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ArgoSmartRouting resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Specifies if the setting is editable.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Specifies the time when the setting was last modified.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "Specifies the enablement value of Argo Smart Routing.\nAvailable values: \"on\", \"off\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Specifies the zone associated with the API call.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/argoTieredCaching:ArgoTieredCaching": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleArgoTieredCaching = new cloudflare.ArgoTieredCaching(\"example_argo_tiered_caching\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_argo_tiered_caching = cloudflare.ArgoTieredCaching(\"example_argo_tiered_caching\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleArgoTieredCaching = new Cloudflare.Index.ArgoTieredCaching(\"example_argo_tiered_caching\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = \"on\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewArgoTieredCaching(ctx, \"example_argo_tiered_caching\", \u0026cloudflare.ArgoTieredCachingArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue:  pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ArgoTieredCaching;\nimport com.pulumi.cloudflare.ArgoTieredCachingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleArgoTieredCaching = new ArgoTieredCaching(\"exampleArgoTieredCaching\", ArgoTieredCachingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(\"on\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleArgoTieredCaching:\n    type: cloudflare:ArgoTieredCaching\n    name: example_argo_tiered_caching\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/argoTieredCaching:ArgoTieredCaching example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Whether the setting is editable.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time this setting was modified.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Enables Tiered Caching.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "editable",
                "modifiedOn",
                "value",
                "zoneId"
            ],
            "inputProperties": {
                "value": {
                    "type": "string",
                    "description": "Enables Tiered Caching.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "value",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ArgoTieredCaching resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Whether the setting is editable.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time this setting was modified.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "Enables Tiered Caching.\nAvailable values: \"on\", \"off\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/authenticatedOriginPulls:AuthenticatedOriginPulls": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPulls = new cloudflare.AuthenticatedOriginPulls(\"example_authenticated_origin_pulls\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    configs: [{\n        certId: \"2458ce5a-0c35-4c7f-82c7-8e9487d3ff60\",\n        enabled: true,\n        hostname: \"app.example.com\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls = cloudflare.AuthenticatedOriginPulls(\"example_authenticated_origin_pulls\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    configs=[{\n        \"cert_id\": \"2458ce5a-0c35-4c7f-82c7-8e9487d3ff60\",\n        \"enabled\": True,\n        \"hostname\": \"app.example.com\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPulls = new Cloudflare.Index.AuthenticatedOriginPulls(\"example_authenticated_origin_pulls\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Configs = new[]\n        {\n            new Cloudflare.Inputs.AuthenticatedOriginPullsConfigArgs\n            {\n                CertId = \"2458ce5a-0c35-4c7f-82c7-8e9487d3ff60\",\n                Enabled = true,\n                Hostname = \"app.example.com\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAuthenticatedOriginPulls(ctx, \"example_authenticated_origin_pulls\", \u0026cloudflare.AuthenticatedOriginPullsArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConfigs: cloudflare.AuthenticatedOriginPullsConfigArray{\n\t\t\t\t\u0026cloudflare.AuthenticatedOriginPullsConfigArgs{\n\t\t\t\t\tCertId:   pulumi.String(\"2458ce5a-0c35-4c7f-82c7-8e9487d3ff60\"),\n\t\t\t\t\tEnabled:  pulumi.Bool(true),\n\t\t\t\t\tHostname: pulumi.String(\"app.example.com\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AuthenticatedOriginPulls;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsArgs;\nimport com.pulumi.cloudflare.inputs.AuthenticatedOriginPullsConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAuthenticatedOriginPulls = new AuthenticatedOriginPulls(\"exampleAuthenticatedOriginPulls\", AuthenticatedOriginPullsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .configs(AuthenticatedOriginPullsConfigArgs.builder()\n                .certId(\"2458ce5a-0c35-4c7f-82c7-8e9487d3ff60\")\n                .enabled(true)\n                .hostname(\"app.example.com\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAuthenticatedOriginPulls:\n    type: cloudflare:AuthenticatedOriginPulls\n    name: example_authenticated_origin_pulls\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      configs:\n        - certId: 2458ce5a-0c35-4c7f-82c7-8e9487d3ff60\n          enabled: true\n          hostname: app.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/authenticatedOriginPulls:AuthenticatedOriginPulls example '\u003czone_id\u003e/\u003chostname\u003e'\n```\n\n",
            "properties": {
                "certId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "certStatus": {
                    "type": "string",
                    "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "certUpdatedAt": {
                    "type": "string",
                    "description": "The time when the certificate was updated.\n"
                },
                "certUploadedOn": {
                    "type": "string",
                    "description": "The time when the certificate was uploaded.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The hostname certificate.\n"
                },
                "configs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AuthenticatedOriginPullsConfig:AuthenticatedOriginPullsConfig"
                    }
                },
                "createdAt": {
                    "type": "string",
                    "description": "The time when the certificate was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether hostname-level authenticated origin pulls is enabled. A null value voids the association.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The date when the certificate expires.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname on the origin for which the client certificate uploaded will be used.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The hostname certificate's private key.\n",
                    "secret": true
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the uploaded certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The time when the certificate was updated.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "certId",
                "certStatus",
                "certUpdatedAt",
                "certUploadedOn",
                "certificate",
                "configs",
                "createdAt",
                "enabled",
                "expiresOn",
                "hostname",
                "issuer",
                "privateKey",
                "serialNumber",
                "signature",
                "status",
                "updatedAt",
                "zoneId"
            ],
            "inputProperties": {
                "configs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/AuthenticatedOriginPullsConfig:AuthenticatedOriginPullsConfig"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "configs",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AuthenticatedOriginPulls resources.\n",
                "properties": {
                    "certId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "certStatus": {
                        "type": "string",
                        "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                    },
                    "certUpdatedAt": {
                        "type": "string",
                        "description": "The time when the certificate was updated.\n"
                    },
                    "certUploadedOn": {
                        "type": "string",
                        "description": "The time when the certificate was uploaded.\n"
                    },
                    "certificate": {
                        "type": "string",
                        "description": "The hostname certificate.\n"
                    },
                    "configs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/AuthenticatedOriginPullsConfig:AuthenticatedOriginPullsConfig"
                        }
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "The time when the certificate was created.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether hostname-level authenticated origin pulls is enabled. A null value voids the association.\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "The date when the certificate expires.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "The hostname on the origin for which the client certificate uploaded will be used.\n"
                    },
                    "issuer": {
                        "type": "string",
                        "description": "The certificate authority that issued the certificate.\n"
                    },
                    "privateKey": {
                        "type": "string",
                        "description": "The hostname certificate's private key.\n",
                        "secret": true
                    },
                    "serialNumber": {
                        "type": "string",
                        "description": "The serial number on the uploaded certificate.\n"
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the certificate.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "The time when the certificate was updated.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/authenticatedOriginPullsCertificate:AuthenticatedOriginPullsCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsCertificate = new cloudflare.AuthenticatedOriginPullsCertificate(\"example_authenticated_origin_pulls_certificate\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n`,\n    privateKey: `  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_certificate = cloudflare.AuthenticatedOriginPullsCertificate(\"example_authenticated_origin_pulls_certificate\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n\"\"\",\n    private_key=\"\"\"  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsCertificate = new Cloudflare.Index.AuthenticatedOriginPullsCertificate(\"example_authenticated_origin_pulls_certificate\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n\",\n        PrivateKey = @\"  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAuthenticatedOriginPullsCertificate(ctx, \"example_authenticated_origin_pulls_certificate\", \u0026cloudflare.AuthenticatedOriginPullsCertificateArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificate: pulumi.String(`  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n`),\n\t\t\tPrivateKey: pulumi.String(`  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsCertificate;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAuthenticatedOriginPullsCertificate = new AuthenticatedOriginPullsCertificate(\"exampleAuthenticatedOriginPullsCertificate\", AuthenticatedOriginPullsCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n            \"\"\")\n            .privateKey(\"\"\"\n  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAuthenticatedOriginPullsCertificate:\n    type: cloudflare:AuthenticatedOriginPullsCertificate\n    name: example_authenticated_origin_pulls_certificate\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      certificate: |2+\n          -----BEGIN CERTIFICATE-----\n          MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n          BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n          aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n          MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n          ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n          CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n          CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n          KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n          0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n          dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n          izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n          9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n          GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n          BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n          MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n          2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n          Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n          SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n          2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n          YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n          -----END CERTIFICATE-----\n\n      privateKey: |2+\n          -----BEGIN RSA PRIVATE KEY-----\n          MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n          dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n          abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n          tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n          FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n          ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n          HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n          axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n          +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n          +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n          KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n          9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n          /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n          iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n          N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n          VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n          vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n          lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n          9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n          mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n          dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n          PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n          fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n          qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n          lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n          -----END RSA PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/authenticatedOriginPullsCertificate:AuthenticatedOriginPullsCertificate example '\u003czone_id\u003e/\u003ccertificate_id\u003e'\n```\n\n",
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The zone's leaf certificate.\n"
                },
                "certificateId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether zone-level authenticated origin pulls is enabled.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The zone's private key.\n",
                    "secret": true
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the uploaded certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the certificate activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "This is the time the certificate was uploaded.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "certificate",
                "certificateId",
                "enabled",
                "expiresOn",
                "issuer",
                "privateKey",
                "serialNumber",
                "signature",
                "status",
                "uploadedOn",
                "zoneId"
            ],
            "inputProperties": {
                "certificate": {
                    "type": "string",
                    "description": "The zone's leaf certificate.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The zone's private key.\n",
                    "secret": true
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "certificate",
                "privateKey",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AuthenticatedOriginPullsCertificate resources.\n",
                "properties": {
                    "certificate": {
                        "type": "string",
                        "description": "The zone's leaf certificate.\n"
                    },
                    "certificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether zone-level authenticated origin pulls is enabled.\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "When the certificate from the authority expires.\n"
                    },
                    "issuer": {
                        "type": "string",
                        "description": "The certificate authority that issued the certificate.\n"
                    },
                    "privateKey": {
                        "type": "string",
                        "description": "The zone's private key.\n",
                        "secret": true
                    },
                    "serialNumber": {
                        "type": "string",
                        "description": "The serial number on the uploaded certificate.\n"
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the certificate.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the certificate activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                    },
                    "uploadedOn": {
                        "type": "string",
                        "description": "This is the time the certificate was uploaded.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/authenticatedOriginPullsHostnameCertificate:AuthenticatedOriginPullsHostnameCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsHostnameCertificate = new cloudflare.AuthenticatedOriginPullsHostnameCertificate(\"example_authenticated_origin_pulls_hostname_certificate\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n`,\n    privateKey: `  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_hostname_certificate = cloudflare.AuthenticatedOriginPullsHostnameCertificate(\"example_authenticated_origin_pulls_hostname_certificate\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n\"\"\",\n    private_key=\"\"\"  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsHostnameCertificate = new Cloudflare.Index.AuthenticatedOriginPullsHostnameCertificate(\"example_authenticated_origin_pulls_hostname_certificate\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n\",\n        PrivateKey = @\"  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAuthenticatedOriginPullsHostnameCertificate(ctx, \"example_authenticated_origin_pulls_hostname_certificate\", \u0026cloudflare.AuthenticatedOriginPullsHostnameCertificateArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificate: pulumi.String(`  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n`),\n\t\t\tPrivateKey: pulumi.String(`  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsHostnameCertificate;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsHostnameCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAuthenticatedOriginPullsHostnameCertificate = new AuthenticatedOriginPullsHostnameCertificate(\"exampleAuthenticatedOriginPullsHostnameCertificate\", AuthenticatedOriginPullsHostnameCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n            \"\"\")\n            .privateKey(\"\"\"\n  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAuthenticatedOriginPullsHostnameCertificate:\n    type: cloudflare:AuthenticatedOriginPullsHostnameCertificate\n    name: example_authenticated_origin_pulls_hostname_certificate\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      certificate: |2+\n          -----BEGIN CERTIFICATE-----\n          MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n          BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n          aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n          MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n          ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n          CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n          CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n          KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n          0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n          dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n          izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n          9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n          GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n          BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n          MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n          2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n          Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n          SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n          2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n          YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n          -----END CERTIFICATE-----\n\n      privateKey: |2+\n          -----BEGIN RSA PRIVATE KEY-----\n          MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n          dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n          abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n          tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n          FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n          ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n          HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n          axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n          +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n          +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n          KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n          9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n          /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n          iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n          N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n          VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n          vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n          lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n          9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n          mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n          dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n          PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n          fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n          qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n          lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n          -----END RSA PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/authenticatedOriginPullsHostnameCertificate:AuthenticatedOriginPullsHostnameCertificate example '\u003czone_id\u003e/\u003ccertificate_id\u003e'\n```\n\n",
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The hostname certificate.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "The date when the certificate expires.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The hostname certificate's private key.\n",
                    "secret": true
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the uploaded certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "The time when the certificate was uploaded.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "certificate",
                "expiresOn",
                "issuer",
                "privateKey",
                "serialNumber",
                "signature",
                "status",
                "uploadedOn",
                "zoneId"
            ],
            "inputProperties": {
                "certificate": {
                    "type": "string",
                    "description": "The hostname certificate.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The hostname certificate's private key.\n",
                    "secret": true
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "certificate",
                "privateKey",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AuthenticatedOriginPullsHostnameCertificate resources.\n",
                "properties": {
                    "certificate": {
                        "type": "string",
                        "description": "The hostname certificate.\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "The date when the certificate expires.\n"
                    },
                    "issuer": {
                        "type": "string",
                        "description": "The certificate authority that issued the certificate.\n"
                    },
                    "privateKey": {
                        "type": "string",
                        "description": "The hostname certificate's private key.\n",
                        "secret": true
                    },
                    "serialNumber": {
                        "type": "string",
                        "description": "The serial number on the uploaded certificate.\n"
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the certificate.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                    },
                    "uploadedOn": {
                        "type": "string",
                        "description": "The time when the certificate was uploaded.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/authenticatedOriginPullsSettings:AuthenticatedOriginPullsSettings": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsSettings = new cloudflare.AuthenticatedOriginPullsSettings(\"example_authenticated_origin_pulls_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_settings = cloudflare.AuthenticatedOriginPullsSettings(\"example_authenticated_origin_pulls_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsSettings = new Cloudflare.Index.AuthenticatedOriginPullsSettings(\"example_authenticated_origin_pulls_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewAuthenticatedOriginPullsSettings(ctx, \"example_authenticated_origin_pulls_settings\", \u0026cloudflare.AuthenticatedOriginPullsSettingsArgs{\n\t\t\tZoneId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsSettings;\nimport com.pulumi.cloudflare.AuthenticatedOriginPullsSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleAuthenticatedOriginPullsSettings = new AuthenticatedOriginPullsSettings(\"exampleAuthenticatedOriginPullsSettings\", AuthenticatedOriginPullsSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleAuthenticatedOriginPullsSettings:\n    type: cloudflare:AuthenticatedOriginPullsSettings\n    name: example_authenticated_origin_pulls_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/authenticatedOriginPullsSettings:AuthenticatedOriginPullsSettings example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether zone-level authenticated origin pulls is enabled.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "enabled",
                "zoneId"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether zone-level authenticated origin pulls is enabled.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AuthenticatedOriginPullsSettings resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether zone-level authenticated origin pulls is enabled.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/botManagement:BotManagement": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleBotManagement = new cloudflare.BotManagement(\"example_bot_management\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    aiBotsProtection: \"block\",\n    cfRobotsVariant: \"policy_only\",\n    contentBotsProtection: \"disabled\",\n    crawlerProtection: \"enabled\",\n    enableJs: true,\n    fightMode: true,\n    isRobotsTxtManaged: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_bot_management = cloudflare.BotManagement(\"example_bot_management\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    ai_bots_protection=\"block\",\n    cf_robots_variant=\"policy_only\",\n    content_bots_protection=\"disabled\",\n    crawler_protection=\"enabled\",\n    enable_js=True,\n    fight_mode=True,\n    is_robots_txt_managed=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleBotManagement = new Cloudflare.Index.BotManagement(\"example_bot_management\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AiBotsProtection = \"block\",\n        CfRobotsVariant = \"policy_only\",\n        ContentBotsProtection = \"disabled\",\n        CrawlerProtection = \"enabled\",\n        EnableJs = true,\n        FightMode = true,\n        IsRobotsTxtManaged = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewBotManagement(ctx, \"example_bot_management\", \u0026cloudflare.BotManagementArgs{\n\t\t\tZoneId:                pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAiBotsProtection:      pulumi.String(\"block\"),\n\t\t\tCfRobotsVariant:       pulumi.String(\"policy_only\"),\n\t\t\tContentBotsProtection: pulumi.String(\"disabled\"),\n\t\t\tCrawlerProtection:     pulumi.String(\"enabled\"),\n\t\t\tEnableJs:              pulumi.Bool(true),\n\t\t\tFightMode:             pulumi.Bool(true),\n\t\t\tIsRobotsTxtManaged:    pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.BotManagement;\nimport com.pulumi.cloudflare.BotManagementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleBotManagement = new BotManagement(\"exampleBotManagement\", BotManagementArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .aiBotsProtection(\"block\")\n            .cfRobotsVariant(\"policy_only\")\n            .contentBotsProtection(\"disabled\")\n            .crawlerProtection(\"enabled\")\n            .enableJs(true)\n            .fightMode(true)\n            .isRobotsTxtManaged(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleBotManagement:\n    type: cloudflare:BotManagement\n    name: example_bot_management\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      aiBotsProtection: block\n      cfRobotsVariant: policy_only\n      contentBotsProtection: disabled\n      crawlerProtection: enabled\n      enableJs: true\n      fightMode: true\n      isRobotsTxtManaged: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/botManagement:BotManagement example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "aiBotsProtection": {
                    "type": "string",
                    "description": "Enable rule to block AI Scrapers and Crawlers. Please note the value \u003cspan pulumi-lang-nodejs=\"`onlyOnAdPages`\" pulumi-lang-dotnet=\"`OnlyOnAdPages`\" pulumi-lang-go=\"`onlyOnAdPages`\" pulumi-lang-python=\"`only_on_ad_pages`\" pulumi-lang-yaml=\"`onlyOnAdPages`\" pulumi-lang-java=\"`onlyOnAdPages`\"\u003e`onlyOnAdPages`\u003c/span\u003e is currently not available for Enterprise customers.\nAvailable values: \"block\", \"disabled\", \"only*on*ad_pages\".\n"
                },
                "autoUpdateModel": {
                    "type": "boolean",
                    "description": "Automatically update to the newest bot detection models created by Cloudflare as they are released. [Learn more.](https://developers.cloudflare.com/bots/reference/machine-learning-models#model-versions-and-release-notes)\n"
                },
                "bmCookieEnabled": {
                    "type": "boolean",
                    "description": "Indicates that the bot management cookie can be placed on end user devices accessing the site. Defaults to true\n"
                },
                "cfRobotsVariant": {
                    "type": "string",
                    "description": "Specifies the Robots Access Control License variant to use.\nAvailable values: \"off\", \u003cspan pulumi-lang-nodejs=\"\"policyOnly\"\" pulumi-lang-dotnet=\"\"PolicyOnly\"\" pulumi-lang-go=\"\"policyOnly\"\" pulumi-lang-python=\"\"policy_only\"\" pulumi-lang-yaml=\"\"policyOnly\"\" pulumi-lang-java=\"\"policyOnly\"\"\u003e\"policyOnly\"\u003c/span\u003e.\n"
                },
                "contentBotsProtection": {
                    "type": "string",
                    "description": "Enable rule to block content bots. When enabled, blocks automated traffic with low bot scores, excluding safe verified bot categories. Exceptions should be managed via skip rules.\nAvailable values: \"block\", \"disabled\".\n"
                },
                "crawlerProtection": {
                    "type": "string",
                    "description": "Enable rule to punish AI Scrapers and Crawlers via a link maze.\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "enableJs": {
                    "type": "boolean",
                    "description": "Use lightweight, invisible JavaScript detections to improve Bot Management. [Learn more about JavaScript Detections](https://developers.cloudflare.com/bots/reference/javascript-detections/).\n"
                },
                "fightMode": {
                    "type": "boolean",
                    "description": "Whether to enable Bot Fight Mode.\n"
                },
                "isRobotsTxtManaged": {
                    "type": "boolean",
                    "description": "Enable cloudflare managed robots.txt. If an existing robots.txt is detected, then managed robots.txt will be prepended to the existing robots.txt.\n"
                },
                "optimizeWordpress": {
                    "type": "boolean",
                    "description": "Whether to optimize Super Bot Fight Mode protections for Wordpress.\n"
                },
                "sbfmDefinitelyAutomated": {
                    "type": "string",
                    "description": "Super Bot Fight Mode (SBFM) action to take on definitely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n"
                },
                "sbfmLikelyAutomated": {
                    "type": "string",
                    "description": "Super Bot Fight Mode (SBFM) action to take on likely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n"
                },
                "sbfmStaticResourceProtection": {
                    "type": "boolean",
                    "description": "Super Bot Fight Mode (SBFM) to enable static resource protection.\nEnable if static resources on your application need bot protection.\nNote: Static resource protection can also result in legitimate traffic being blocked.\n"
                },
                "sbfmVerifiedBots": {
                    "type": "string",
                    "description": "Super Bot Fight Mode (SBFM) action to take on verified bots requests.\nAvailable values: \"allow\", \"block\".\n"
                },
                "staleZoneConfiguration": {
                    "$ref": "#/types/cloudflare:index/BotManagementStaleZoneConfiguration:BotManagementStaleZoneConfiguration",
                    "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades.\n"
                },
                "suppressSessionScore": {
                    "type": "boolean",
                    "description": "Whether to disable tracking the highest bot score for a session in the Bot Management cookie.\n"
                },
                "usingLatestModel": {
                    "type": "boolean",
                    "description": "A read-only field that indicates whether the zone currently is running the latest ML model.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "aiBotsProtection",
                "autoUpdateModel",
                "bmCookieEnabled",
                "cfRobotsVariant",
                "contentBotsProtection",
                "crawlerProtection",
                "enableJs",
                "fightMode",
                "isRobotsTxtManaged",
                "optimizeWordpress",
                "sbfmDefinitelyAutomated",
                "sbfmLikelyAutomated",
                "sbfmStaticResourceProtection",
                "sbfmVerifiedBots",
                "staleZoneConfiguration",
                "suppressSessionScore",
                "usingLatestModel",
                "zoneId"
            ],
            "inputProperties": {
                "aiBotsProtection": {
                    "type": "string",
                    "description": "Enable rule to block AI Scrapers and Crawlers. Please note the value \u003cspan pulumi-lang-nodejs=\"`onlyOnAdPages`\" pulumi-lang-dotnet=\"`OnlyOnAdPages`\" pulumi-lang-go=\"`onlyOnAdPages`\" pulumi-lang-python=\"`only_on_ad_pages`\" pulumi-lang-yaml=\"`onlyOnAdPages`\" pulumi-lang-java=\"`onlyOnAdPages`\"\u003e`onlyOnAdPages`\u003c/span\u003e is currently not available for Enterprise customers.\nAvailable values: \"block\", \"disabled\", \"only*on*ad_pages\".\n"
                },
                "autoUpdateModel": {
                    "type": "boolean",
                    "description": "Automatically update to the newest bot detection models created by Cloudflare as they are released. [Learn more.](https://developers.cloudflare.com/bots/reference/machine-learning-models#model-versions-and-release-notes)\n"
                },
                "bmCookieEnabled": {
                    "type": "boolean",
                    "description": "Indicates that the bot management cookie can be placed on end user devices accessing the site. Defaults to true\n"
                },
                "cfRobotsVariant": {
                    "type": "string",
                    "description": "Specifies the Robots Access Control License variant to use.\nAvailable values: \"off\", \u003cspan pulumi-lang-nodejs=\"\"policyOnly\"\" pulumi-lang-dotnet=\"\"PolicyOnly\"\" pulumi-lang-go=\"\"policyOnly\"\" pulumi-lang-python=\"\"policy_only\"\" pulumi-lang-yaml=\"\"policyOnly\"\" pulumi-lang-java=\"\"policyOnly\"\"\u003e\"policyOnly\"\u003c/span\u003e.\n"
                },
                "contentBotsProtection": {
                    "type": "string",
                    "description": "Enable rule to block content bots. When enabled, blocks automated traffic with low bot scores, excluding safe verified bot categories. Exceptions should be managed via skip rules.\nAvailable values: \"block\", \"disabled\".\n"
                },
                "crawlerProtection": {
                    "type": "string",
                    "description": "Enable rule to punish AI Scrapers and Crawlers via a link maze.\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "enableJs": {
                    "type": "boolean",
                    "description": "Use lightweight, invisible JavaScript detections to improve Bot Management. [Learn more about JavaScript Detections](https://developers.cloudflare.com/bots/reference/javascript-detections/).\n"
                },
                "fightMode": {
                    "type": "boolean",
                    "description": "Whether to enable Bot Fight Mode.\n"
                },
                "isRobotsTxtManaged": {
                    "type": "boolean",
                    "description": "Enable cloudflare managed robots.txt. If an existing robots.txt is detected, then managed robots.txt will be prepended to the existing robots.txt.\n"
                },
                "optimizeWordpress": {
                    "type": "boolean",
                    "description": "Whether to optimize Super Bot Fight Mode protections for Wordpress.\n"
                },
                "sbfmDefinitelyAutomated": {
                    "type": "string",
                    "description": "Super Bot Fight Mode (SBFM) action to take on definitely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n"
                },
                "sbfmLikelyAutomated": {
                    "type": "string",
                    "description": "Super Bot Fight Mode (SBFM) action to take on likely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n"
                },
                "sbfmStaticResourceProtection": {
                    "type": "boolean",
                    "description": "Super Bot Fight Mode (SBFM) to enable static resource protection.\nEnable if static resources on your application need bot protection.\nNote: Static resource protection can also result in legitimate traffic being blocked.\n"
                },
                "sbfmVerifiedBots": {
                    "type": "string",
                    "description": "Super Bot Fight Mode (SBFM) action to take on verified bots requests.\nAvailable values: \"allow\", \"block\".\n"
                },
                "suppressSessionScore": {
                    "type": "boolean",
                    "description": "Whether to disable tracking the highest bot score for a session in the Bot Management cookie.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering BotManagement resources.\n",
                "properties": {
                    "aiBotsProtection": {
                        "type": "string",
                        "description": "Enable rule to block AI Scrapers and Crawlers. Please note the value \u003cspan pulumi-lang-nodejs=\"`onlyOnAdPages`\" pulumi-lang-dotnet=\"`OnlyOnAdPages`\" pulumi-lang-go=\"`onlyOnAdPages`\" pulumi-lang-python=\"`only_on_ad_pages`\" pulumi-lang-yaml=\"`onlyOnAdPages`\" pulumi-lang-java=\"`onlyOnAdPages`\"\u003e`onlyOnAdPages`\u003c/span\u003e is currently not available for Enterprise customers.\nAvailable values: \"block\", \"disabled\", \"only*on*ad_pages\".\n"
                    },
                    "autoUpdateModel": {
                        "type": "boolean",
                        "description": "Automatically update to the newest bot detection models created by Cloudflare as they are released. [Learn more.](https://developers.cloudflare.com/bots/reference/machine-learning-models#model-versions-and-release-notes)\n"
                    },
                    "bmCookieEnabled": {
                        "type": "boolean",
                        "description": "Indicates that the bot management cookie can be placed on end user devices accessing the site. Defaults to true\n"
                    },
                    "cfRobotsVariant": {
                        "type": "string",
                        "description": "Specifies the Robots Access Control License variant to use.\nAvailable values: \"off\", \u003cspan pulumi-lang-nodejs=\"\"policyOnly\"\" pulumi-lang-dotnet=\"\"PolicyOnly\"\" pulumi-lang-go=\"\"policyOnly\"\" pulumi-lang-python=\"\"policy_only\"\" pulumi-lang-yaml=\"\"policyOnly\"\" pulumi-lang-java=\"\"policyOnly\"\"\u003e\"policyOnly\"\u003c/span\u003e.\n"
                    },
                    "contentBotsProtection": {
                        "type": "string",
                        "description": "Enable rule to block content bots. When enabled, blocks automated traffic with low bot scores, excluding safe verified bot categories. Exceptions should be managed via skip rules.\nAvailable values: \"block\", \"disabled\".\n"
                    },
                    "crawlerProtection": {
                        "type": "string",
                        "description": "Enable rule to punish AI Scrapers and Crawlers via a link maze.\nAvailable values: \"enabled\", \"disabled\".\n"
                    },
                    "enableJs": {
                        "type": "boolean",
                        "description": "Use lightweight, invisible JavaScript detections to improve Bot Management. [Learn more about JavaScript Detections](https://developers.cloudflare.com/bots/reference/javascript-detections/).\n"
                    },
                    "fightMode": {
                        "type": "boolean",
                        "description": "Whether to enable Bot Fight Mode.\n"
                    },
                    "isRobotsTxtManaged": {
                        "type": "boolean",
                        "description": "Enable cloudflare managed robots.txt. If an existing robots.txt is detected, then managed robots.txt will be prepended to the existing robots.txt.\n"
                    },
                    "optimizeWordpress": {
                        "type": "boolean",
                        "description": "Whether to optimize Super Bot Fight Mode protections for Wordpress.\n"
                    },
                    "sbfmDefinitelyAutomated": {
                        "type": "string",
                        "description": "Super Bot Fight Mode (SBFM) action to take on definitely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n"
                    },
                    "sbfmLikelyAutomated": {
                        "type": "string",
                        "description": "Super Bot Fight Mode (SBFM) action to take on likely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n"
                    },
                    "sbfmStaticResourceProtection": {
                        "type": "boolean",
                        "description": "Super Bot Fight Mode (SBFM) to enable static resource protection.\nEnable if static resources on your application need bot protection.\nNote: Static resource protection can also result in legitimate traffic being blocked.\n"
                    },
                    "sbfmVerifiedBots": {
                        "type": "string",
                        "description": "Super Bot Fight Mode (SBFM) action to take on verified bots requests.\nAvailable values: \"allow\", \"block\".\n"
                    },
                    "staleZoneConfiguration": {
                        "$ref": "#/types/cloudflare:index/BotManagementStaleZoneConfiguration:BotManagementStaleZoneConfiguration",
                        "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades.\n"
                    },
                    "suppressSessionScore": {
                        "type": "boolean",
                        "description": "Whether to disable tracking the highest bot score for a session in the Bot Management cookie.\n"
                    },
                    "usingLatestModel": {
                        "type": "boolean",
                        "description": "A read-only field that indicates whether the zone currently is running the latest ML model.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/byoIpPrefix:ByoIpPrefix": {
            "description": "Accepted Permissions\n\n- `IP Prefixes: BGP On Demand Read`\n- `IP Prefixes: BGP On Demand Write`\n- `IP Prefixes: Read`\n- `IP Prefixes: Write`\n- `Magic Transit Read`\n- `Magic Transit Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleByoIpPrefix = new cloudflare.ByoIpPrefix(\"example_byo_ip_prefix\", {\n    accountId: \"258def64c72dae45f3e4c8516e2111f2\",\n    asn: 13335,\n    cidr: \"192.0.2.0/24\",\n    delegateLoaCreation: true,\n    description: \"Internal test prefix\",\n    loaDocumentId: \"d933b1530bc56c9953cf8ce166da8004\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_byo_ip_prefix = cloudflare.ByoIpPrefix(\"example_byo_ip_prefix\",\n    account_id=\"258def64c72dae45f3e4c8516e2111f2\",\n    asn=13335,\n    cidr=\"192.0.2.0/24\",\n    delegate_loa_creation=True,\n    description=\"Internal test prefix\",\n    loa_document_id=\"d933b1530bc56c9953cf8ce166da8004\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleByoIpPrefix = new Cloudflare.Index.ByoIpPrefix(\"example_byo_ip_prefix\", new()\n    {\n        AccountId = \"258def64c72dae45f3e4c8516e2111f2\",\n        Asn = 13335,\n        Cidr = \"192.0.2.0/24\",\n        DelegateLoaCreation = true,\n        Description = \"Internal test prefix\",\n        LoaDocumentId = \"d933b1530bc56c9953cf8ce166da8004\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewByoIpPrefix(ctx, \"example_byo_ip_prefix\", \u0026cloudflare.ByoIpPrefixArgs{\n\t\t\tAccountId:           pulumi.String(\"258def64c72dae45f3e4c8516e2111f2\"),\n\t\t\tAsn:                 pulumi.Int(13335),\n\t\t\tCidr:                pulumi.String(\"192.0.2.0/24\"),\n\t\t\tDelegateLoaCreation: pulumi.Bool(true),\n\t\t\tDescription:         pulumi.String(\"Internal test prefix\"),\n\t\t\tLoaDocumentId:       pulumi.String(\"d933b1530bc56c9953cf8ce166da8004\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ByoIpPrefix;\nimport com.pulumi.cloudflare.ByoIpPrefixArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleByoIpPrefix = new ByoIpPrefix(\"exampleByoIpPrefix\", ByoIpPrefixArgs.builder()\n            .accountId(\"258def64c72dae45f3e4c8516e2111f2\")\n            .asn(13335)\n            .cidr(\"192.0.2.0/24\")\n            .delegateLoaCreation(true)\n            .description(\"Internal test prefix\")\n            .loaDocumentId(\"d933b1530bc56c9953cf8ce166da8004\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleByoIpPrefix:\n    type: cloudflare:ByoIpPrefix\n    name: example_byo_ip_prefix\n    properties:\n      accountId: 258def64c72dae45f3e4c8516e2111f2\n      asn: 13335\n      cidr: 192.0.2.0/24\n      delegateLoaCreation: true\n      description: Internal test prefix\n      loaDocumentId: d933b1530bc56c9953cf8ce166da8004\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/byoIpPrefix:ByoIpPrefix example '\u003caccount_id\u003e/\u003cprefix_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier of a Cloudflare account.\n"
                },
                "advertised": {
                    "type": "boolean",
                    "description": "Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "advertisedModifiedAt": {
                    "type": "string",
                    "description": "Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "approved": {
                    "type": "string",
                    "description": "Approval state of the prefix (P = pending, V = active).\n"
                },
                "asn": {
                    "type": "integer",
                    "description": "Autonomous System Number (ASN) the prefix will be advertised under.\n"
                },
                "cidr": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "delegateLoaCreation": {
                    "type": "boolean",
                    "description": "Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Description of the prefix.\n"
                },
                "irrValidationState": {
                    "type": "string",
                    "description": "State of one kind of validation for an IP prefix.\n"
                },
                "loaDocumentId": {
                    "type": "string",
                    "description": "Identifier for the uploaded LOA document.\n"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "onDemandEnabled": {
                    "type": "boolean",
                    "description": "Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "onDemandLocked": {
                    "type": "boolean",
                    "description": "Whether advertisement status of the prefix is locked, meaning it cannot be changed.\n",
                    "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                },
                "ownershipValidationState": {
                    "type": "string",
                    "description": "State of one kind of validation for an IP prefix.\n"
                },
                "ownershipValidationToken": {
                    "type": "string",
                    "description": "Token provided to demonstrate ownership of the prefix.\n"
                },
                "rpkiValidationState": {
                    "type": "string",
                    "description": "State of one kind of validation for an IP prefix.\n"
                }
            },
            "required": [
                "advertised",
                "advertisedModifiedAt",
                "approved",
                "asn",
                "cidr",
                "createdAt",
                "delegateLoaCreation",
                "irrValidationState",
                "modifiedAt",
                "onDemandEnabled",
                "onDemandLocked",
                "ownershipValidationState",
                "ownershipValidationToken",
                "rpkiValidationState"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier of a Cloudflare account.\n"
                },
                "asn": {
                    "type": "integer",
                    "description": "Autonomous System Number (ASN) the prefix will be advertised under.\n"
                },
                "cidr": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "delegateLoaCreation": {
                    "type": "boolean",
                    "description": "Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Description of the prefix.\n"
                },
                "loaDocumentId": {
                    "type": "string",
                    "description": "Identifier for the uploaded LOA document.\n"
                }
            },
            "requiredInputs": [
                "asn",
                "cidr"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ByoIpPrefix resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier of a Cloudflare account.\n"
                    },
                    "advertised": {
                        "type": "boolean",
                        "description": "Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.\n",
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                    },
                    "advertisedModifiedAt": {
                        "type": "string",
                        "description": "Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.\n",
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                    },
                    "approved": {
                        "type": "string",
                        "description": "Approval state of the prefix (P = pending, V = active).\n"
                    },
                    "asn": {
                        "type": "integer",
                        "description": "Autonomous System Number (ASN) the prefix will be advertised under.\n"
                    },
                    "cidr": {
                        "type": "string",
                        "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "delegateLoaCreation": {
                        "type": "boolean",
                        "description": "Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Description of the prefix.\n"
                    },
                    "irrValidationState": {
                        "type": "string",
                        "description": "State of one kind of validation for an IP prefix.\n"
                    },
                    "loaDocumentId": {
                        "type": "string",
                        "description": "Identifier for the uploaded LOA document.\n"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "onDemandEnabled": {
                        "type": "boolean",
                        "description": "Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.\n",
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                    },
                    "onDemandLocked": {
                        "type": "boolean",
                        "description": "Whether advertisement status of the prefix is locked, meaning it cannot be changed.\n",
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
                    },
                    "ownershipValidationState": {
                        "type": "string",
                        "description": "State of one kind of validation for an IP prefix.\n"
                    },
                    "ownershipValidationToken": {
                        "type": "string",
                        "description": "Token provided to demonstrate ownership of the prefix.\n"
                    },
                    "rpkiValidationState": {
                        "type": "string",
                        "description": "State of one kind of validation for an IP prefix.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/callsSfuApp:CallsSfuApp": {
            "description": "Accepted Permissions\n\n- `Calls Read`\n- `Calls Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCallsSfuApp = new cloudflare.CallsSfuApp(\"example_calls_sfu_app\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"production-realtime-app\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_calls_sfu_app = cloudflare.CallsSfuApp(\"example_calls_sfu_app\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"production-realtime-app\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCallsSfuApp = new Cloudflare.Index.CallsSfuApp(\"example_calls_sfu_app\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"production-realtime-app\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCallsSfuApp(ctx, \"example_calls_sfu_app\", \u0026cloudflare.CallsSfuAppArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"production-realtime-app\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CallsSfuApp;\nimport com.pulumi.cloudflare.CallsSfuAppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCallsSfuApp = new CallsSfuApp(\"exampleCallsSfuApp\", CallsSfuAppArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"production-realtime-app\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCallsSfuApp:\n    type: cloudflare:CallsSfuApp\n    name: example_calls_sfu_app\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: production-realtime-app\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time the item was created.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the item was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of Calls app, not shown to end users.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "Bearer token\n",
                    "secret": true
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                }
            },
            "required": [
                "created",
                "modified",
                "name",
                "secret",
                "uid"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of Calls app, not shown to end users.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CallsSfuApp resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "appId": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a item.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and time the item was created.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the item was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A short description of Calls app, not shown to end users.\n"
                    },
                    "secret": {
                        "type": "string",
                        "description": "Bearer token\n",
                        "secret": true
                    },
                    "uid": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a item.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/callsTurnApp:CallsTurnApp": {
            "description": "Accepted Permissions\n\n- `Calls Read`\n- `Calls Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCallsTurnApp = new cloudflare.CallsTurnApp(\"example_calls_turn_app\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my-turn-key\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_calls_turn_app = cloudflare.CallsTurnApp(\"example_calls_turn_app\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my-turn-key\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCallsTurnApp = new Cloudflare.Index.CallsTurnApp(\"example_calls_turn_app\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my-turn-key\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCallsTurnApp(ctx, \"example_calls_turn_app\", \u0026cloudflare.CallsTurnAppArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my-turn-key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CallsTurnApp;\nimport com.pulumi.cloudflare.CallsTurnAppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCallsTurnApp = new CallsTurnApp(\"exampleCallsTurnApp\", CallsTurnAppArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my-turn-key\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCallsTurnApp:\n    type: cloudflare:CallsTurnApp\n    name: example_calls_turn_app\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my-turn-key\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time the item was created.\n"
                },
                "key": {
                    "type": "string",
                    "description": "Bearer token\n",
                    "secret": true
                },
                "keyId": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the item was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of a TURN key, not shown to end users.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                }
            },
            "required": [
                "created",
                "key",
                "modified",
                "name",
                "uid"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "keyId": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a item.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of a TURN key, not shown to end users.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CallsTurnApp resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and time the item was created.\n"
                    },
                    "key": {
                        "type": "string",
                        "description": "Bearer token\n",
                        "secret": true
                    },
                    "keyId": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a item.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the item was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A short description of a TURN key, not shown to end users.\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a item.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/certificateAuthoritiesHostnameAssociations:CertificateAuthoritiesHostnameAssociations": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCertificateAuthoritiesHostnameAssociations = new cloudflare.CertificateAuthoritiesHostnameAssociations(\"example_certificate_authorities_hostname_associations\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostnames: [\"api.example.com\"],\n    mtlsCertificateId: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_certificate_authorities_hostname_associations = cloudflare.CertificateAuthoritiesHostnameAssociations(\"example_certificate_authorities_hostname_associations\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostnames=[\"api.example.com\"],\n    mtls_certificate_id=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCertificateAuthoritiesHostnameAssociations = new Cloudflare.Index.CertificateAuthoritiesHostnameAssociations(\"example_certificate_authorities_hostname_associations\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostnames = new[]\n        {\n            \"api.example.com\",\n        },\n        MtlsCertificateId = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCertificateAuthoritiesHostnameAssociations(ctx, \"example_certificate_authorities_hostname_associations\", \u0026cloudflare.CertificateAuthoritiesHostnameAssociationsArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostnames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"api.example.com\"),\n\t\t\t},\n\t\t\tMtlsCertificateId: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CertificateAuthoritiesHostnameAssociations;\nimport com.pulumi.cloudflare.CertificateAuthoritiesHostnameAssociationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCertificateAuthoritiesHostnameAssociations = new CertificateAuthoritiesHostnameAssociations(\"exampleCertificateAuthoritiesHostnameAssociations\", CertificateAuthoritiesHostnameAssociationsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostnames(\"api.example.com\")\n            .mtlsCertificateId(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCertificateAuthoritiesHostnameAssociations:\n    type: cloudflare:CertificateAuthoritiesHostnameAssociations\n    name: example_certificate_authorities_hostname_associations\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      hostnames:\n        - api.example.com\n      mtlsCertificateId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/certificateAuthoritiesHostnameAssociations:CertificateAuthoritiesHostnameAssociations example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "hostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "mtlsCertificateId": {
                    "type": "string",
                    "description": "The UUID for a certificate that was uploaded to the mTLS Certificate Management endpoint. If no mtls*certificate*id is given, the hostnames will be associated to your active Cloudflare Managed CA.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "zoneId"
            ],
            "inputProperties": {
                "hostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "mtlsCertificateId": {
                    "type": "string",
                    "description": "The UUID for a certificate that was uploaded to the mTLS Certificate Management endpoint. If no mtls*certificate*id is given, the hostnames will be associated to your active Cloudflare Managed CA.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CertificateAuthoritiesHostnameAssociations resources.\n",
                "properties": {
                    "hostnames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "mtlsCertificateId": {
                        "type": "string",
                        "description": "The UUID for a certificate that was uploaded to the mTLS Certificate Management endpoint. If no mtls*certificate*id is given, the hostnames will be associated to your active Cloudflare Managed CA.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/certificatePack:CertificatePack": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n\u003e Certificate packs are not able to be updated in place. If\nyou require a zero downtime rotation, you can create multiple\nresources using a 2-phase change where you have both resources\nlive at once and you remove the old one once you've confirmed\nthe certificate is available.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCertificatePack = new cloudflare.CertificatePack(\"example_certificate_pack\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificateAuthority: \"lets_encrypt\",\n    hosts: [\n        \"example.com\",\n        \"*.example.com\",\n        \"www.example.com\",\n    ],\n    type: \"advanced\",\n    validationMethod: \"txt\",\n    validityDays: 14,\n    cloudflareBranding: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_certificate_pack = cloudflare.CertificatePack(\"example_certificate_pack\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate_authority=\"lets_encrypt\",\n    hosts=[\n        \"example.com\",\n        \"*.example.com\",\n        \"www.example.com\",\n    ],\n    type=\"advanced\",\n    validation_method=\"txt\",\n    validity_days=14,\n    cloudflare_branding=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCertificatePack = new Cloudflare.Index.CertificatePack(\"example_certificate_pack\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CertificateAuthority = \"lets_encrypt\",\n        Hosts = new[]\n        {\n            \"example.com\",\n            \"*.example.com\",\n            \"www.example.com\",\n        },\n        Type = \"advanced\",\n        ValidationMethod = \"txt\",\n        ValidityDays = 14,\n        CloudflareBranding = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCertificatePack(ctx, \"example_certificate_pack\", \u0026cloudflare.CertificatePackArgs{\n\t\t\tZoneId:               pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificateAuthority: pulumi.String(\"lets_encrypt\"),\n\t\t\tHosts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\tpulumi.String(\"*.example.com\"),\n\t\t\t\tpulumi.String(\"www.example.com\"),\n\t\t\t},\n\t\t\tType:               pulumi.String(\"advanced\"),\n\t\t\tValidationMethod:   pulumi.String(\"txt\"),\n\t\t\tValidityDays:       pulumi.Int(14),\n\t\t\tCloudflareBranding: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CertificatePack;\nimport com.pulumi.cloudflare.CertificatePackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCertificatePack = new CertificatePack(\"exampleCertificatePack\", CertificatePackArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificateAuthority(\"lets_encrypt\")\n            .hosts(            \n                \"example.com\",\n                \"*.example.com\",\n                \"www.example.com\")\n            .type(\"advanced\")\n            .validationMethod(\"txt\")\n            .validityDays(14)\n            .cloudflareBranding(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCertificatePack:\n    type: cloudflare:CertificatePack\n    name: example_certificate_pack\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      certificateAuthority: lets_encrypt\n      hosts:\n        - example.com\n        - '*.example.com'\n        - www.example.com\n      type: advanced\n      validationMethod: txt\n      validityDays: 14\n      cloudflareBranding: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/certificatePack:CertificatePack example '\u003czone_id\u003e/\u003ccertificate_pack_id\u003e'\n```\n\nWhile supported, importing isn't recommended and it is advised to replace the\ncertificate entirely instead.\n\n",
            "properties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "Certificate Authority selected for the order.  For information on any certificate authority specific details or restrictions [see this page for more details.](https://developers.cloudflare.com/ssl/reference/certificate-authorities)\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "certificates": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CertificatePackCertificate:CertificatePackCertificate"
                    },
                    "description": "Array of certificates in this pack.\n"
                },
                "cloudflareBranding": {
                    "type": "boolean",
                    "description": "Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.\n"
                },
                "dcvDelegationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CertificatePackDcvDelegationRecord:CertificatePackDcvDelegationRecord"
                    },
                    "description": "DCV Delegation records for domain validation.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Comma separated list of valid host names for the certificate packs. Must contain the zone apex, may not contain more than 50 hosts, and may not be empty.\n"
                },
                "primaryCertificate": {
                    "type": "string",
                    "description": "Identifier of the primary certificate in a pack.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of certificate pack.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of certificate pack.\nAvailable values: \"advanced\".\n"
                },
                "validationErrors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CertificatePackValidationError:CertificatePackValidationError"
                    },
                    "description": "Domain validation errors that have been received by the certificate authority (CA).\n"
                },
                "validationMethod": {
                    "type": "string",
                    "description": "Validation Method selected for the order.\nAvailable values: \"txt\", \"http\", \"email\".\n"
                },
                "validationRecords": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CertificatePackValidationRecord:CertificatePackValidationRecord"
                    },
                    "description": "Certificates' validation records.\n"
                },
                "validityDays": {
                    "type": "integer",
                    "description": "Validity Days selected for the order.\nAvailable values: 14, 30, 90, 365.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "certificateAuthority",
                "certificates",
                "dcvDelegationRecords",
                "hosts",
                "primaryCertificate",
                "status",
                "type",
                "validationErrors",
                "validationMethod",
                "validationRecords",
                "validityDays"
            ],
            "inputProperties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "Certificate Authority selected for the order.  For information on any certificate authority specific details or restrictions [see this page for more details.](https://developers.cloudflare.com/ssl/reference/certificate-authorities)\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "cloudflareBranding": {
                    "type": "boolean",
                    "description": "Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Comma separated list of valid host names for the certificate packs. Must contain the zone apex, may not contain more than 50 hosts, and may not be empty.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of certificate pack.\nAvailable values: \"advanced\".\n"
                },
                "validationMethod": {
                    "type": "string",
                    "description": "Validation Method selected for the order.\nAvailable values: \"txt\", \"http\", \"email\".\n"
                },
                "validityDays": {
                    "type": "integer",
                    "description": "Validity Days selected for the order.\nAvailable values: 14, 30, 90, 365.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "certificateAuthority",
                "type",
                "validationMethod",
                "validityDays"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CertificatePack resources.\n",
                "properties": {
                    "certificateAuthority": {
                        "type": "string",
                        "description": "Certificate Authority selected for the order.  For information on any certificate authority specific details or restrictions [see this page for more details.](https://developers.cloudflare.com/ssl/reference/certificate-authorities)\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                    },
                    "certificates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/CertificatePackCertificate:CertificatePackCertificate"
                        },
                        "description": "Array of certificates in this pack.\n"
                    },
                    "cloudflareBranding": {
                        "type": "boolean",
                        "description": "Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.\n"
                    },
                    "dcvDelegationRecords": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/CertificatePackDcvDelegationRecord:CertificatePackDcvDelegationRecord"
                        },
                        "description": "DCV Delegation records for domain validation.\n"
                    },
                    "hosts": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Comma separated list of valid host names for the certificate packs. Must contain the zone apex, may not contain more than 50 hosts, and may not be empty.\n"
                    },
                    "primaryCertificate": {
                        "type": "string",
                        "description": "Identifier of the primary certificate in a pack.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of certificate pack.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Type of certificate pack.\nAvailable values: \"advanced\".\n"
                    },
                    "validationErrors": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/CertificatePackValidationError:CertificatePackValidationError"
                        },
                        "description": "Domain validation errors that have been received by the certificate authority (CA).\n"
                    },
                    "validationMethod": {
                        "type": "string",
                        "description": "Validation Method selected for the order.\nAvailable values: \"txt\", \"http\", \"email\".\n"
                    },
                    "validationRecords": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/CertificatePackValidationRecord:CertificatePackValidationRecord"
                        },
                        "description": "Certificates' validation records.\n"
                    },
                    "validityDays": {
                        "type": "integer",
                        "description": "Validity Days selected for the order.\nAvailable values: 14, 30, 90, 365.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/clientCertificate:ClientCertificate": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleClientCertificate = new cloudflare.ClientCertificate(\"example_client_certificate\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    csr: `  -----BEGIN CERTIFICATE REQUEST-----\n  MIICY....\n  -----END CERTIFICATE REQUEST-----\n`,\n    validityDays: 3650,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_client_certificate = cloudflare.ClientCertificate(\"example_client_certificate\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    csr=\"\"\"  -----BEGIN CERTIFICATE REQUEST-----\n  MIICY....\n  -----END CERTIFICATE REQUEST-----\n\"\"\",\n    validity_days=3650)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleClientCertificate = new Cloudflare.Index.ClientCertificate(\"example_client_certificate\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Csr = @\"  -----BEGIN CERTIFICATE REQUEST-----\n  MIICY....\n  -----END CERTIFICATE REQUEST-----\n\",\n        ValidityDays = 3650,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewClientCertificate(ctx, \"example_client_certificate\", \u0026cloudflare.ClientCertificateArgs{\n\t\t\tZoneId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCsr:          pulumi.String(\"  -----BEGIN CERTIFICATE REQUEST-----\\n  MIICY....\\n  -----END CERTIFICATE REQUEST-----\\n\"),\n\t\t\tValidityDays: pulumi.Int(3650),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ClientCertificate;\nimport com.pulumi.cloudflare.ClientCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleClientCertificate = new ClientCertificate(\"exampleClientCertificate\", ClientCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .csr(\"\"\"\n  -----BEGIN CERTIFICATE REQUEST-----\n  MIICY....\n  -----END CERTIFICATE REQUEST-----\n            \"\"\")\n            .validityDays(3650)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleClientCertificate:\n    type: cloudflare:ClientCertificate\n    name: example_client_certificate\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      csr: |2\n          -----BEGIN CERTIFICATE REQUEST-----\n          MIICY....\n          -----END CERTIFICATE REQUEST-----\n      validityDays: 3650\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/clientCertificate:ClientCertificate example '\u003czone_id\u003e/\u003cclient_certificate_id\u003e'\n```\n\n",
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The Client Certificate PEM\n"
                },
                "certificateAuthority": {
                    "$ref": "#/types/cloudflare:index/ClientCertificateCertificateAuthority:ClientCertificateCertificateAuthority",
                    "description": "Certificate Authority used to issue the Client Certificate\n"
                },
                "commonName": {
                    "type": "string",
                    "description": "Common Name of the Client Certificate\n"
                },
                "country": {
                    "type": "string",
                    "description": "Country, provided by the CSR\n"
                },
                "csr": {
                    "type": "string",
                    "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "Date that the Client Certificate expires\n"
                },
                "fingerprintSha256": {
                    "type": "string",
                    "description": "Unique identifier of the Client Certificate\n"
                },
                "issuedOn": {
                    "type": "string",
                    "description": "Date that the Client Certificate was issued by the Certificate Authority\n"
                },
                "location": {
                    "type": "string",
                    "description": "Location, provided by the CSR\n"
                },
                "organization": {
                    "type": "string",
                    "description": "Organization, provided by the CSR\n"
                },
                "organizationalUnit": {
                    "type": "string",
                    "description": "Organizational Unit, provided by the CSR\n"
                },
                "reactivate": {
                    "type": "boolean"
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The serial number on the created Client Certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the Client Certificate..\n"
                },
                "ski": {
                    "type": "string",
                    "description": "Subject Key Identifier\n"
                },
                "state": {
                    "type": "string",
                    "description": "State, provided by the CSR\n"
                },
                "status": {
                    "type": "string",
                    "description": "Client Certificates may be active or revoked, and the pending*reactivation or pending*revocation represent in-progress asynchronous transitions\nAvailable values: \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n"
                },
                "validityDays": {
                    "type": "integer",
                    "description": "The number of days the Client Certificate will be valid after the\u003cspan pulumi-lang-nodejs=\" issuedOn \" pulumi-lang-dotnet=\" IssuedOn \" pulumi-lang-go=\" issuedOn \" pulumi-lang-python=\" issued_on \" pulumi-lang-yaml=\" issuedOn \" pulumi-lang-java=\" issuedOn \"\u003e issuedOn \u003c/span\u003edate\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "certificate",
                "certificateAuthority",
                "commonName",
                "country",
                "csr",
                "expiresOn",
                "fingerprintSha256",
                "issuedOn",
                "location",
                "organization",
                "organizationalUnit",
                "serialNumber",
                "signature",
                "ski",
                "state",
                "status",
                "validityDays"
            ],
            "inputProperties": {
                "csr": {
                    "type": "string",
                    "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                },
                "reactivate": {
                    "type": "boolean"
                },
                "validityDays": {
                    "type": "integer",
                    "description": "The number of days the Client Certificate will be valid after the\u003cspan pulumi-lang-nodejs=\" issuedOn \" pulumi-lang-dotnet=\" IssuedOn \" pulumi-lang-go=\" issuedOn \" pulumi-lang-python=\" issued_on \" pulumi-lang-yaml=\" issuedOn \" pulumi-lang-java=\" issuedOn \"\u003e issuedOn \u003c/span\u003edate\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "csr",
                "validityDays"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ClientCertificate resources.\n",
                "properties": {
                    "certificate": {
                        "type": "string",
                        "description": "The Client Certificate PEM\n"
                    },
                    "certificateAuthority": {
                        "$ref": "#/types/cloudflare:index/ClientCertificateCertificateAuthority:ClientCertificateCertificateAuthority",
                        "description": "Certificate Authority used to issue the Client Certificate\n"
                    },
                    "commonName": {
                        "type": "string",
                        "description": "Common Name of the Client Certificate\n"
                    },
                    "country": {
                        "type": "string",
                        "description": "Country, provided by the CSR\n"
                    },
                    "csr": {
                        "type": "string",
                        "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "Date that the Client Certificate expires\n"
                    },
                    "fingerprintSha256": {
                        "type": "string",
                        "description": "Unique identifier of the Client Certificate\n"
                    },
                    "issuedOn": {
                        "type": "string",
                        "description": "Date that the Client Certificate was issued by the Certificate Authority\n"
                    },
                    "location": {
                        "type": "string",
                        "description": "Location, provided by the CSR\n"
                    },
                    "organization": {
                        "type": "string",
                        "description": "Organization, provided by the CSR\n"
                    },
                    "organizationalUnit": {
                        "type": "string",
                        "description": "Organizational Unit, provided by the CSR\n"
                    },
                    "reactivate": {
                        "type": "boolean"
                    },
                    "serialNumber": {
                        "type": "string",
                        "description": "The serial number on the created Client Certificate.\n"
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the Client Certificate..\n"
                    },
                    "ski": {
                        "type": "string",
                        "description": "Subject Key Identifier\n"
                    },
                    "state": {
                        "type": "string",
                        "description": "State, provided by the CSR\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Client Certificates may be active or revoked, and the pending*reactivation or pending*revocation represent in-progress asynchronous transitions\nAvailable values: \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n"
                    },
                    "validityDays": {
                        "type": "integer",
                        "description": "The number of days the Client Certificate will be valid after the\u003cspan pulumi-lang-nodejs=\" issuedOn \" pulumi-lang-dotnet=\" IssuedOn \" pulumi-lang-go=\" issuedOn \" pulumi-lang-python=\" issued_on \" pulumi-lang-yaml=\" issuedOn \" pulumi-lang-java=\" issuedOn \"\u003e issuedOn \u003c/span\u003edate\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/cloudConnectorRules:CloudConnectorRules": {
            "description": "Accepted Permissions\n\n- `Cloud Connector Read`\n- `Cloud Connector Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudConnectorRules = new cloudflare.CloudConnectorRules(\"example_cloud_connector_rules\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    rules: [{\n        id: \"95c365e17e1b46599cd99e5b231fac4e\",\n        description: \"Rule description\",\n        enabled: true,\n        expression: \"http.cookie eq \\\"a=b\\\"\",\n        parameters: {\n            host: \"examplebucket.s3.eu-north-1.amazonaws.com\",\n        },\n        cloudConnectorRulesProvider: \"aws_s3\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloud_connector_rules = cloudflare.CloudConnectorRules(\"example_cloud_connector_rules\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    rules=[{\n        \"id\": \"95c365e17e1b46599cd99e5b231fac4e\",\n        \"description\": \"Rule description\",\n        \"enabled\": True,\n        \"expression\": \"http.cookie eq \\\"a=b\\\"\",\n        \"parameters\": {\n            \"host\": \"examplebucket.s3.eu-north-1.amazonaws.com\",\n        },\n        \"cloud_connector_rules_provider\": \"aws_s3\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudConnectorRules = new Cloudflare.Index.CloudConnectorRules(\"example_cloud_connector_rules\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.CloudConnectorRulesRuleArgs\n            {\n                Id = \"95c365e17e1b46599cd99e5b231fac4e\",\n                Description = \"Rule description\",\n                Enabled = true,\n                Expression = \"http.cookie eq \\\"a=b\\\"\",\n                Parameters = new Cloudflare.Inputs.CloudConnectorRulesRuleParametersArgs\n                {\n                    Host = \"examplebucket.s3.eu-north-1.amazonaws.com\",\n                },\n                CloudConnectorRulesProvider = \"aws_s3\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCloudConnectorRules(ctx, \"example_cloud_connector_rules\", \u0026cloudflare.CloudConnectorRulesArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRules: cloudflare.CloudConnectorRulesRuleArray{\n\t\t\t\t\u0026cloudflare.CloudConnectorRulesRuleArgs{\n\t\t\t\t\tId:          pulumi.String(\"95c365e17e1b46599cd99e5b231fac4e\"),\n\t\t\t\t\tDescription: pulumi.String(\"Rule description\"),\n\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t\tExpression:  pulumi.String(\"http.cookie eq \\\"a=b\\\"\"),\n\t\t\t\t\tParameters: \u0026cloudflare.CloudConnectorRulesRuleParametersArgs{\n\t\t\t\t\t\tHost: pulumi.String(\"examplebucket.s3.eu-north-1.amazonaws.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tCloudConnectorRulesProvider: \"aws_s3\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudConnectorRules;\nimport com.pulumi.cloudflare.CloudConnectorRulesArgs;\nimport com.pulumi.cloudflare.inputs.CloudConnectorRulesRuleArgs;\nimport com.pulumi.cloudflare.inputs.CloudConnectorRulesRuleParametersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCloudConnectorRules = new CloudConnectorRules(\"exampleCloudConnectorRules\", CloudConnectorRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .rules(CloudConnectorRulesRuleArgs.builder()\n                .id(\"95c365e17e1b46599cd99e5b231fac4e\")\n                .description(\"Rule description\")\n                .enabled(true)\n                .expression(\"http.cookie eq \\\"a=b\\\"\")\n                .parameters(CloudConnectorRulesRuleParametersArgs.builder()\n                    .host(\"examplebucket.s3.eu-north-1.amazonaws.com\")\n                    .build())\n                .cloudConnectorRulesProvider(\"aws_s3\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCloudConnectorRules:\n    type: cloudflare:CloudConnectorRules\n    name: example_cloud_connector_rules\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      rules:\n        - id: 95c365e17e1b46599cd99e5b231fac4e\n          description: Rule description\n          enabled: true\n          expression: http.cookie eq \"a=b\"\n          parameters:\n            host: examplebucket.s3.eu-north-1.amazonaws.com\n          cloudConnectorRulesProvider: aws_s3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/cloudConnectorRules:CloudConnectorRules example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CloudConnectorRulesRule:CloudConnectorRulesRule"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "zoneId"
            ],
            "inputProperties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/CloudConnectorRulesRule:CloudConnectorRulesRule"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudConnectorRules resources.\n",
                "properties": {
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/CloudConnectorRulesRule:CloudConnectorRulesRule"
                        }
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/cloudforceOneRequest:CloudforceOneRequest": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Read`\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequest = new cloudflare.CloudforceOneRequest(\"example_cloudforce_one_request\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    content: \"What regions were most effected by the recent DoS?\",\n    priority: \"routine\",\n    requestType: \"Victomology\",\n    summary: \"DoS attack\",\n    tlp: \"clear\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request = cloudflare.CloudforceOneRequest(\"example_cloudforce_one_request\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    content=\"What regions were most effected by the recent DoS?\",\n    priority=\"routine\",\n    request_type=\"Victomology\",\n    summary=\"DoS attack\",\n    tlp=\"clear\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequest = new Cloudflare.Index.CloudforceOneRequest(\"example_cloudforce_one_request\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Content = \"What regions were most effected by the recent DoS?\",\n        Priority = \"routine\",\n        RequestType = \"Victomology\",\n        Summary = \"DoS attack\",\n        Tlp = \"clear\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCloudforceOneRequest(ctx, \"example_cloudforce_one_request\", \u0026cloudflare.CloudforceOneRequestArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tContent:     pulumi.String(\"What regions were most effected by the recent DoS?\"),\n\t\t\tPriority:    pulumi.String(\"routine\"),\n\t\t\tRequestType: pulumi.String(\"Victomology\"),\n\t\t\tSummary:     pulumi.String(\"DoS attack\"),\n\t\t\tTlp:         pulumi.String(\"clear\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudforceOneRequest;\nimport com.pulumi.cloudflare.CloudforceOneRequestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCloudforceOneRequest = new CloudforceOneRequest(\"exampleCloudforceOneRequest\", CloudforceOneRequestArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .content(\"What regions were most effected by the recent DoS?\")\n            .priority(\"routine\")\n            .requestType(\"Victomology\")\n            .summary(\"DoS attack\")\n            .tlp(\"clear\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCloudforceOneRequest:\n    type: cloudflare:CloudforceOneRequest\n    name: example_cloudforce_one_request\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      content: What regions were most effected by the recent DoS?\n      priority: routine\n      requestType: Victomology\n      summary: DoS attack\n      tlp: clear\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/cloudforceOneRequest:CloudforceOneRequest example '\u003caccount_id\u003e/\u003crequest_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "completed": {
                    "type": "string"
                },
                "content": {
                    "type": "string",
                    "description": "Request content.\n"
                },
                "created": {
                    "type": "string"
                },
                "messageTokens": {
                    "type": "integer",
                    "description": "Tokens for the request messages.\n"
                },
                "priority": {
                    "type": "string",
                    "description": "Priority for analyzing the request.\n"
                },
                "readableId": {
                    "type": "string",
                    "description": "Readable Request ID.\n"
                },
                "request": {
                    "type": "string",
                    "description": "Requested information from request.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "Requested information from request.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                },
                "summary": {
                    "type": "string",
                    "description": "Brief description of the request.\n"
                },
                "tlp": {
                    "type": "string",
                    "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                },
                "tokens": {
                    "type": "integer",
                    "description": "Tokens for the request.\n"
                },
                "updated": {
                    "type": "string"
                }
            },
            "required": [
                "completed",
                "created",
                "messageTokens",
                "readableId",
                "request",
                "status",
                "tokens",
                "updated"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Request content.\n"
                },
                "priority": {
                    "type": "string",
                    "description": "Priority for analyzing the request.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "Requested information from request.\n"
                },
                "summary": {
                    "type": "string",
                    "description": "Brief description of the request.\n"
                },
                "tlp": {
                    "type": "string",
                    "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudforceOneRequest resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "completed": {
                        "type": "string"
                    },
                    "content": {
                        "type": "string",
                        "description": "Request content.\n"
                    },
                    "created": {
                        "type": "string"
                    },
                    "messageTokens": {
                        "type": "integer",
                        "description": "Tokens for the request messages.\n"
                    },
                    "priority": {
                        "type": "string",
                        "description": "Priority for analyzing the request.\n"
                    },
                    "readableId": {
                        "type": "string",
                        "description": "Readable Request ID.\n"
                    },
                    "request": {
                        "type": "string",
                        "description": "Requested information from request.\n"
                    },
                    "requestType": {
                        "type": "string",
                        "description": "Requested information from request.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                    },
                    "summary": {
                        "type": "string",
                        "description": "Brief description of the request.\n"
                    },
                    "tlp": {
                        "type": "string",
                        "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                    },
                    "tokens": {
                        "type": "integer",
                        "description": "Tokens for the request.\n"
                    },
                    "updated": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/cloudforceOneRequestAsset:CloudforceOneRequestAsset": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Read`\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequestAsset = new cloudflare.CloudforceOneRequestAsset(\"example_cloudforce_one_request_asset\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    requestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    page: 0,\n    perPage: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request_asset = cloudflare.CloudforceOneRequestAsset(\"example_cloudforce_one_request_asset\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    request_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    page=0,\n    per_page=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequestAsset = new Cloudflare.Index.CloudforceOneRequestAsset(\"example_cloudforce_one_request_asset\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RequestId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Page = 0,\n        PerPage = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCloudforceOneRequestAsset(ctx, \"example_cloudforce_one_request_asset\", \u0026cloudflare.CloudforceOneRequestAssetArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRequestId: pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tPage:      pulumi.Int(0),\n\t\t\tPerPage:   pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudforceOneRequestAsset;\nimport com.pulumi.cloudflare.CloudforceOneRequestAssetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCloudforceOneRequestAsset = new CloudforceOneRequestAsset(\"exampleCloudforceOneRequestAsset\", CloudforceOneRequestAssetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .requestId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .page(0)\n            .perPage(10)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCloudforceOneRequestAsset:\n    type: cloudflare:CloudforceOneRequestAsset\n    name: example_cloudforce_one_request_asset\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      requestId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      page: 0\n      perPage: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/cloudforceOneRequestAsset:CloudforceOneRequestAsset example '\u003caccount_id\u003e/\u003crequest_id\u003e/\u003casset_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "created": {
                    "type": "string",
                    "description": "Defines the asset creation time.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Asset description.\n"
                },
                "fileType": {
                    "type": "string",
                    "description": "Asset file type.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Asset name.\n"
                },
                "page": {
                    "type": "integer",
                    "description": "Page number of results.\n"
                },
                "perPage": {
                    "type": "integer",
                    "description": "Number of results per page.\n"
                },
                "requestId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Asset file to upload.\n"
                }
            },
            "required": [
                "created",
                "description",
                "fileType",
                "name",
                "page",
                "perPage",
                "requestId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "page": {
                    "type": "integer",
                    "description": "Page number of results.\n"
                },
                "perPage": {
                    "type": "integer",
                    "description": "Number of results per page.\n"
                },
                "requestId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Asset file to upload.\n"
                }
            },
            "requiredInputs": [
                "page",
                "perPage",
                "requestId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudforceOneRequestAsset resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "Defines the asset creation time.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Asset description.\n"
                    },
                    "fileType": {
                        "type": "string",
                        "description": "Asset file type.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Asset name.\n"
                    },
                    "page": {
                        "type": "integer",
                        "description": "Page number of results.\n"
                    },
                    "perPage": {
                        "type": "integer",
                        "description": "Number of results per page.\n"
                    },
                    "requestId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "source": {
                        "type": "string",
                        "description": "Asset file to upload.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/cloudforceOneRequestMessage:CloudforceOneRequestMessage": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequestMessage = new cloudflare.CloudforceOneRequestMessage(\"example_cloudforce_one_request_message\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    requestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    content: \"Can you elaborate on the type of DoS that occurred?\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request_message = cloudflare.CloudforceOneRequestMessage(\"example_cloudforce_one_request_message\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    request_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    content=\"Can you elaborate on the type of DoS that occurred?\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequestMessage = new Cloudflare.Index.CloudforceOneRequestMessage(\"example_cloudforce_one_request_message\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RequestId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Content = \"Can you elaborate on the type of DoS that occurred?\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCloudforceOneRequestMessage(ctx, \"example_cloudforce_one_request_message\", \u0026cloudflare.CloudforceOneRequestMessageArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRequestId: pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tContent:   pulumi.String(\"Can you elaborate on the type of DoS that occurred?\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudforceOneRequestMessage;\nimport com.pulumi.cloudflare.CloudforceOneRequestMessageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCloudforceOneRequestMessage = new CloudforceOneRequestMessage(\"exampleCloudforceOneRequestMessage\", CloudforceOneRequestMessageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .requestId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .content(\"Can you elaborate on the type of DoS that occurred?\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCloudforceOneRequestMessage:\n    type: cloudflare:CloudforceOneRequestMessage\n    name: example_cloudforce_one_request_message\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      requestId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      content: Can you elaborate on the type of DoS that occurred?\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/cloudforceOneRequestMessage:CloudforceOneRequestMessage example '\u003caccount_id\u003e/\u003crequest_id\u003e/\u003cpage\u003e/\u003cper_page\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "author": {
                    "type": "string",
                    "description": "Author of message.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Content of message.\n"
                },
                "created": {
                    "type": "string",
                    "description": "Defines the message creation time.\n"
                },
                "isFollowOnRequest": {
                    "type": "boolean",
                    "description": "Whether the message is a follow-on request.\n"
                },
                "requestId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "updated": {
                    "type": "string",
                    "description": "Defines the message last updated time.\n"
                }
            },
            "required": [
                "author",
                "created",
                "isFollowOnRequest",
                "requestId",
                "updated"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Content of message.\n"
                },
                "requestId": {
                    "type": "string",
                    "description": "UUID.\n"
                }
            },
            "requiredInputs": [
                "requestId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudforceOneRequestMessage resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "author": {
                        "type": "string",
                        "description": "Author of message.\n"
                    },
                    "content": {
                        "type": "string",
                        "description": "Content of message.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "Defines the message creation time.\n"
                    },
                    "isFollowOnRequest": {
                        "type": "boolean",
                        "description": "Whether the message is a follow-on request.\n"
                    },
                    "requestId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "updated": {
                        "type": "string",
                        "description": "Defines the message last updated time.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/cloudforceOneRequestPriority:CloudforceOneRequestPriority": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Read`\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequestPriority = new cloudflare.CloudforceOneRequestPriority(\"example_cloudforce_one_request_priority\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    labels: [\n        \"DoS\",\n        \"CVE\",\n    ],\n    priority: 1,\n    requirement: \"DoS attacks carried out by CVEs\",\n    tlp: \"clear\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request_priority = cloudflare.CloudforceOneRequestPriority(\"example_cloudforce_one_request_priority\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    labels=[\n        \"DoS\",\n        \"CVE\",\n    ],\n    priority=1,\n    requirement=\"DoS attacks carried out by CVEs\",\n    tlp=\"clear\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequestPriority = new Cloudflare.Index.CloudforceOneRequestPriority(\"example_cloudforce_one_request_priority\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Labels = new[]\n        {\n            \"DoS\",\n            \"CVE\",\n        },\n        Priority = 1,\n        Requirement = \"DoS attacks carried out by CVEs\",\n        Tlp = \"clear\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCloudforceOneRequestPriority(ctx, \"example_cloudforce_one_request_priority\", \u0026cloudflare.CloudforceOneRequestPriorityArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tLabels: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"DoS\"),\n\t\t\t\tpulumi.String(\"CVE\"),\n\t\t\t},\n\t\t\tPriority:    pulumi.Int(1),\n\t\t\tRequirement: pulumi.String(\"DoS attacks carried out by CVEs\"),\n\t\t\tTlp:         pulumi.String(\"clear\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudforceOneRequestPriority;\nimport com.pulumi.cloudflare.CloudforceOneRequestPriorityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCloudforceOneRequestPriority = new CloudforceOneRequestPriority(\"exampleCloudforceOneRequestPriority\", CloudforceOneRequestPriorityArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .labels(            \n                \"DoS\",\n                \"CVE\")\n            .priority(1)\n            .requirement(\"DoS attacks carried out by CVEs\")\n            .tlp(\"clear\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCloudforceOneRequestPriority:\n    type: cloudflare:CloudforceOneRequestPriority\n    name: example_cloudforce_one_request_priority\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      labels:\n        - DoS\n        - CVE\n      priority: 1\n      requirement: DoS attacks carried out by CVEs\n      tlp: clear\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/cloudforceOneRequestPriority:CloudforceOneRequestPriority example '\u003caccount_id\u003e/\u003cpriority_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "completed": {
                    "type": "string"
                },
                "content": {
                    "type": "string",
                    "description": "Request content.\n"
                },
                "created": {
                    "type": "string"
                },
                "labels": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of labels.\n"
                },
                "messageTokens": {
                    "type": "integer",
                    "description": "Tokens for the request messages.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority.\n"
                },
                "readableId": {
                    "type": "string",
                    "description": "Readable Request ID.\n"
                },
                "request": {
                    "type": "string",
                    "description": "Requested information from request.\n"
                },
                "requirement": {
                    "type": "string",
                    "description": "Requirement.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                },
                "summary": {
                    "type": "string",
                    "description": "Brief description of the request.\n"
                },
                "tlp": {
                    "type": "string",
                    "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                },
                "tokens": {
                    "type": "integer",
                    "description": "Tokens for the request.\n"
                },
                "updated": {
                    "type": "string"
                }
            },
            "required": [
                "completed",
                "content",
                "created",
                "labels",
                "messageTokens",
                "priority",
                "readableId",
                "request",
                "requirement",
                "status",
                "summary",
                "tlp",
                "tokens",
                "updated"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "labels": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of labels.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority.\n"
                },
                "requirement": {
                    "type": "string",
                    "description": "Requirement.\n"
                },
                "tlp": {
                    "type": "string",
                    "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                }
            },
            "requiredInputs": [
                "labels",
                "priority",
                "requirement",
                "tlp"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudforceOneRequestPriority resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "completed": {
                        "type": "string"
                    },
                    "content": {
                        "type": "string",
                        "description": "Request content.\n"
                    },
                    "created": {
                        "type": "string"
                    },
                    "labels": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of labels.\n"
                    },
                    "messageTokens": {
                        "type": "integer",
                        "description": "Tokens for the request messages.\n"
                    },
                    "priority": {
                        "type": "integer",
                        "description": "Priority.\n"
                    },
                    "readableId": {
                        "type": "string",
                        "description": "Readable Request ID.\n"
                    },
                    "request": {
                        "type": "string",
                        "description": "Requested information from request.\n"
                    },
                    "requirement": {
                        "type": "string",
                        "description": "Requirement.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                    },
                    "summary": {
                        "type": "string",
                        "description": "Brief description of the request.\n"
                    },
                    "tlp": {
                        "type": "string",
                        "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n"
                    },
                    "tokens": {
                        "type": "integer",
                        "description": "Tokens for the request.\n"
                    },
                    "updated": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/connectivityDirectoryService:ConnectivityDirectoryService": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleConnectivityDirectoryService = new cloudflare.ConnectivityDirectoryService(\"example_connectivity_directory_service\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    host: {\n        ipv4: \"10.0.0.1\",\n        network: {\n            tunnelId: \"0191dce4-9ab4-7fce-b660-8e5dec5172da\",\n        },\n    },\n    name: \"web-app\",\n    type: \"http\",\n    httpPort: 8080,\n    httpsPort: 8443,\n    tlsSettings: {\n        certVerificationMode: \"verify_full\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_connectivity_directory_service = cloudflare.ConnectivityDirectoryService(\"example_connectivity_directory_service\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    host={\n        \"ipv4\": \"10.0.0.1\",\n        \"network\": {\n            \"tunnel_id\": \"0191dce4-9ab4-7fce-b660-8e5dec5172da\",\n        },\n    },\n    name=\"web-app\",\n    type=\"http\",\n    http_port=8080,\n    https_port=8443,\n    tls_settings={\n        \"cert_verification_mode\": \"verify_full\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleConnectivityDirectoryService = new Cloudflare.Index.ConnectivityDirectoryService(\"example_connectivity_directory_service\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Host = new Cloudflare.Inputs.ConnectivityDirectoryServiceHostArgs\n        {\n            Ipv4 = \"10.0.0.1\",\n            Network = new Cloudflare.Inputs.ConnectivityDirectoryServiceHostNetworkArgs\n            {\n                TunnelId = \"0191dce4-9ab4-7fce-b660-8e5dec5172da\",\n            },\n        },\n        Name = \"web-app\",\n        Type = \"http\",\n        HttpPort = 8080,\n        HttpsPort = 8443,\n        TlsSettings = new Cloudflare.Inputs.ConnectivityDirectoryServiceTlsSettingsArgs\n        {\n            CertVerificationMode = \"verify_full\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewConnectivityDirectoryService(ctx, \"example_connectivity_directory_service\", \u0026cloudflare.ConnectivityDirectoryServiceArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHost: \u0026cloudflare.ConnectivityDirectoryServiceHostArgs{\n\t\t\t\tIpv4: pulumi.String(\"10.0.0.1\"),\n\t\t\t\tNetwork: \u0026cloudflare.ConnectivityDirectoryServiceHostNetworkArgs{\n\t\t\t\t\tTunnelId: pulumi.String(\"0191dce4-9ab4-7fce-b660-8e5dec5172da\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:      pulumi.String(\"web-app\"),\n\t\t\tType:      pulumi.String(\"http\"),\n\t\t\tHttpPort:  pulumi.Int(8080),\n\t\t\tHttpsPort: pulumi.Int(8443),\n\t\t\tTlsSettings: \u0026cloudflare.ConnectivityDirectoryServiceTlsSettingsArgs{\n\t\t\t\tCertVerificationMode: pulumi.String(\"verify_full\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ConnectivityDirectoryService;\nimport com.pulumi.cloudflare.ConnectivityDirectoryServiceArgs;\nimport com.pulumi.cloudflare.inputs.ConnectivityDirectoryServiceHostArgs;\nimport com.pulumi.cloudflare.inputs.ConnectivityDirectoryServiceHostNetworkArgs;\nimport com.pulumi.cloudflare.inputs.ConnectivityDirectoryServiceTlsSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleConnectivityDirectoryService = new ConnectivityDirectoryService(\"exampleConnectivityDirectoryService\", ConnectivityDirectoryServiceArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .host(ConnectivityDirectoryServiceHostArgs.builder()\n                .ipv4(\"10.0.0.1\")\n                .network(ConnectivityDirectoryServiceHostNetworkArgs.builder()\n                    .tunnelId(\"0191dce4-9ab4-7fce-b660-8e5dec5172da\")\n                    .build())\n                .build())\n            .name(\"web-app\")\n            .type(\"http\")\n            .httpPort(8080)\n            .httpsPort(8443)\n            .tlsSettings(ConnectivityDirectoryServiceTlsSettingsArgs.builder()\n                .certVerificationMode(\"verify_full\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleConnectivityDirectoryService:\n    type: cloudflare:ConnectivityDirectoryService\n    name: example_connectivity_directory_service\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      host:\n        ipv4: 10.0.0.1\n        network:\n          tunnelId: 0191dce4-9ab4-7fce-b660-8e5dec5172da\n      name: web-app\n      type: http\n      httpPort: 8080\n      httpsPort: 8443\n      tlsSettings:\n        certVerificationMode: verify_full\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/connectivityDirectoryService:ConnectivityDirectoryService example '\u003caccount_id\u003e/\u003cservice_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier\n"
                },
                "appProtocol": {
                    "type": "string",
                    "description": "Available values: \"postgresql\", \"mysql\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "host": {
                    "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceHost:ConnectivityDirectoryServiceHost"
                },
                "httpPort": {
                    "type": "integer"
                },
                "httpsPort": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "serviceId": {
                    "type": "string"
                },
                "tcpPort": {
                    "type": "integer"
                },
                "tlsSettings": {
                    "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceTlsSettings:ConnectivityDirectoryServiceTlsSettings",
                    "description": "TLS settings for a connectivity service.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"tcp\", \"http\".\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "host",
                "name",
                "serviceId",
                "type",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier\n"
                },
                "appProtocol": {
                    "type": "string",
                    "description": "Available values: \"postgresql\", \"mysql\".\n"
                },
                "host": {
                    "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceHost:ConnectivityDirectoryServiceHost"
                },
                "httpPort": {
                    "type": "integer"
                },
                "httpsPort": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "tcpPort": {
                    "type": "integer"
                },
                "tlsSettings": {
                    "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceTlsSettings:ConnectivityDirectoryServiceTlsSettings",
                    "description": "TLS settings for a connectivity service.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"tcp\", \"http\".\n"
                }
            },
            "requiredInputs": [
                "host",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ConnectivityDirectoryService resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "appProtocol": {
                        "type": "string",
                        "description": "Available values: \"postgresql\", \"mysql\".\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "host": {
                        "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceHost:ConnectivityDirectoryServiceHost"
                    },
                    "httpPort": {
                        "type": "integer"
                    },
                    "httpsPort": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "serviceId": {
                        "type": "string"
                    },
                    "tcpPort": {
                        "type": "integer"
                    },
                    "tlsSettings": {
                        "$ref": "#/types/cloudflare:index/ConnectivityDirectoryServiceTlsSettings:ConnectivityDirectoryServiceTlsSettings",
                        "description": "TLS settings for a connectivity service.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"tcp\", \"http\".\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/contentScanning:ContentScanning": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleContentScanning = new cloudflare.ContentScanning(\"example_content_scanning\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: \"enabled\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_content_scanning = cloudflare.ContentScanning(\"example_content_scanning\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value=\"enabled\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleContentScanning = new Cloudflare.Index.ContentScanning(\"example_content_scanning\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = \"enabled\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewContentScanning(ctx, \"example_content_scanning\", \u0026cloudflare.ContentScanningArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue:  pulumi.String(\"enabled\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ContentScanning;\nimport com.pulumi.cloudflare.ContentScanningArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleContentScanning = new ContentScanning(\"exampleContentScanning\", ContentScanningArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(\"enabled\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleContentScanning:\n    type: cloudflare:ContentScanning\n    name: example_content_scanning\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value: enabled\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "modified": {
                    "type": "string",
                    "description": "Defines the last modification date (ISO 8601) of the Content Scanning status.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The status value for Content Scanning.\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "modified",
                "value"
            ],
            "inputProperties": {
                "value": {
                    "type": "string",
                    "description": "The status value for Content Scanning.\nAvailable values: \"enabled\", \"disabled\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ContentScanning resources.\n",
                "properties": {
                    "modified": {
                        "type": "string",
                        "description": "Defines the last modification date (ISO 8601) of the Content Scanning status.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "The status value for Content Scanning.\nAvailable values: \"enabled\", \"disabled\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/contentScanningExpression:ContentScanningExpression": {
            "description": "Accepted Permissions\n\n- `Account WAF Write`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleContentScanningExpression = new cloudflare.ContentScanningExpression(\"example_content_scanning_expression\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bodies: [{\n        payload: \"lookup_json_string(http.request.body.raw, \\\"file\\\")\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_content_scanning_expression = cloudflare.ContentScanningExpression(\"example_content_scanning_expression\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bodies=[{\n        \"payload\": \"lookup_json_string(http.request.body.raw, \\\"file\\\")\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleContentScanningExpression = new Cloudflare.Index.ContentScanningExpression(\"example_content_scanning_expression\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Bodies = new[]\n        {\n            new Cloudflare.Inputs.ContentScanningExpressionBodyArgs\n            {\n                Payload = \"lookup_json_string(http.request.body.raw, \\\"file\\\")\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewContentScanningExpression(ctx, \"example_content_scanning_expression\", \u0026cloudflare.ContentScanningExpressionArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBodies: cloudflare.ContentScanningExpressionBodyArray{\n\t\t\t\t\u0026cloudflare.ContentScanningExpressionBodyArgs{\n\t\t\t\t\tPayload: pulumi.String(\"lookup_json_string(http.request.body.raw, \\\"file\\\")\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ContentScanningExpression;\nimport com.pulumi.cloudflare.ContentScanningExpressionArgs;\nimport com.pulumi.cloudflare.inputs.ContentScanningExpressionBodyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleContentScanningExpression = new ContentScanningExpression(\"exampleContentScanningExpression\", ContentScanningExpressionArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bodies(ContentScanningExpressionBodyArgs.builder()\n                .payload(\"lookup_json_string(http.request.body.raw, \\\"file\\\")\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleContentScanningExpression:\n    type: cloudflare:ContentScanningExpression\n    name: example_content_scanning_expression\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      bodies:\n        - payload: lookup_json_string(http.request.body.raw, \"file\")\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "bodies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ContentScanningExpressionBody:ContentScanningExpressionBody"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "bodies"
            ],
            "inputProperties": {
                "bodies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ContentScanningExpressionBody:ContentScanningExpressionBody"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "bodies"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ContentScanningExpression resources.\n",
                "properties": {
                    "bodies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ContentScanningExpressionBody:ContentScanningExpressionBody"
                        }
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/customHostname:CustomHostname": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomHostname = new cloudflare.CustomHostname(\"example_custom_hostname\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"app.example.com\",\n    ssl: {\n        bundleMethod: \"ubiquitous\",\n        certificateAuthority: \"google\",\n        cloudflareBranding: false,\n        customCertBundles: [{\n            customCertificate: `      -----BEGIN CERTIFICATE-----\n      MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n      -----END CERTIFICATE-----\n\n`,\n            customKey: `      -----BEGIN PRIVATE KEY-----\n      MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\n      -----END PRIVATE KEY-----\n\n`,\n        }],\n        customCertificate: `    -----BEGIN CERTIFICATE-----\n    MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\n    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\n    OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n    -----END CERTIFICATE-----\n\n`,\n        customCsrId: \"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\",\n        customKey: `    -----BEGIN RSA PRIVATE KEY-----\n    MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n    dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n    abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n    tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n    FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n    ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n    HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n    axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n    +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n    +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n    KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n    9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n    /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n    iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n    N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n    VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n    vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n    lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n    9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n    mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n    dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n    PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n    fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n    qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n    lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n    -----END RSA PRIVATE KEY-----\n\n`,\n        method: \"http\",\n        settings: {\n            ciphers: [\n                \"ECDHE-RSA-AES128-GCM-SHA256\",\n                \"AES128-SHA\",\n            ],\n            earlyHints: \"on\",\n            http2: \"on\",\n            minTlsVersion: \"1.2\",\n            tls13: \"on\",\n        },\n        type: \"dv\",\n        wildcard: false,\n    },\n    customMetadata: {\n        foo: \"string\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_hostname = cloudflare.CustomHostname(\"example_custom_hostname\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"app.example.com\",\n    ssl={\n        \"bundle_method\": \"ubiquitous\",\n        \"certificate_authority\": \"google\",\n        \"cloudflare_branding\": False,\n        \"custom_cert_bundles\": [{\n            \"custom_certificate\": \"\"\"      -----BEGIN CERTIFICATE-----\n      MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n      -----END CERTIFICATE-----\n\n\"\"\",\n            \"custom_key\": \"\"\"      -----BEGIN PRIVATE KEY-----\n      MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\n      -----END PRIVATE KEY-----\n\n\"\"\",\n        }],\n        \"custom_certificate\": \"\"\"    -----BEGIN CERTIFICATE-----\n    MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\n    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\n    OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n    -----END CERTIFICATE-----\n\n\"\"\",\n        \"custom_csr_id\": \"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\",\n        \"custom_key\": \"\"\"    -----BEGIN RSA PRIVATE KEY-----\n    MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n    dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n    abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n    tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n    FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n    ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n    HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n    axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n    +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n    +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n    KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n    9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n    /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n    iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n    N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n    VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n    vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n    lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n    9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n    mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n    dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n    PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n    fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n    qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n    lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n    -----END RSA PRIVATE KEY-----\n\n\"\"\",\n        \"method\": \"http\",\n        \"settings\": {\n            \"ciphers\": [\n                \"ECDHE-RSA-AES128-GCM-SHA256\",\n                \"AES128-SHA\",\n            ],\n            \"early_hints\": \"on\",\n            \"http2\": \"on\",\n            \"min_tls_version\": \"1.2\",\n            \"tls13\": \"on\",\n        },\n        \"type\": \"dv\",\n        \"wildcard\": False,\n    },\n    custom_metadata={\n        \"foo\": \"string\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomHostname = new Cloudflare.Index.CustomHostname(\"example_custom_hostname\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"app.example.com\",\n        Ssl = new Cloudflare.Inputs.CustomHostnameSslArgs\n        {\n            BundleMethod = \"ubiquitous\",\n            CertificateAuthority = \"google\",\n            CloudflareBranding = false,\n            CustomCertBundles = new[]\n            {\n                new Cloudflare.Inputs.CustomHostnameSslCustomCertBundleArgs\n                {\n                    CustomCertificate = @\"      -----BEGIN CERTIFICATE-----\n      MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n      -----END CERTIFICATE-----\n\n\",\n                    CustomKey = @\"      -----BEGIN PRIVATE KEY-----\n      MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\n      -----END PRIVATE KEY-----\n\n\",\n                },\n            },\n            CustomCertificate = @\"    -----BEGIN CERTIFICATE-----\n    MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\n    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\n    OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n    -----END CERTIFICATE-----\n\n\",\n            CustomCsrId = \"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\",\n            CustomKey = @\"    -----BEGIN RSA PRIVATE KEY-----\n    MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n    dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n    abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n    tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n    FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n    ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n    HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n    axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n    +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n    +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n    KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n    9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n    /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n    iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n    N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n    VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n    vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n    lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n    9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n    mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n    dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n    PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n    fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n    qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n    lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n    -----END RSA PRIVATE KEY-----\n\n\",\n            Method = \"http\",\n            Settings = new Cloudflare.Inputs.CustomHostnameSslSettingsArgs\n            {\n                Ciphers = new[]\n                {\n                    \"ECDHE-RSA-AES128-GCM-SHA256\",\n                    \"AES128-SHA\",\n                },\n                EarlyHints = \"on\",\n                Http2 = \"on\",\n                MinTlsVersion = \"1.2\",\n                Tls13 = \"on\",\n            },\n            Type = \"dv\",\n            Wildcard = false,\n        },\n        CustomMetadata = \n        {\n            { \"foo\", \"string\" },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCustomHostname(ctx, \"example_custom_hostname\", \u0026cloudflare.CustomHostnameArgs{\n\t\t\tZoneId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostname: pulumi.String(\"app.example.com\"),\n\t\t\tSsl: \u0026cloudflare.CustomHostnameSslArgs{\n\t\t\t\tBundleMethod:         pulumi.String(\"ubiquitous\"),\n\t\t\t\tCertificateAuthority: pulumi.String(\"google\"),\n\t\t\t\tCloudflareBranding:   pulumi.Bool(false),\n\t\t\t\tCustomCertBundles: cloudflare.CustomHostnameSslCustomCertBundleArray{\n\t\t\t\t\t\u0026cloudflare.CustomHostnameSslCustomCertBundleArgs{\n\t\t\t\t\t\tCustomCertificate: pulumi.String(\"      -----BEGIN CERTIFICATE-----\\n      MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\\n      -----END CERTIFICATE-----\\n\\n\"),\n\t\t\t\t\t\tCustomKey:         pulumi.String(\"      -----BEGIN PRIVATE KEY-----\\n      MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\\n      -----END PRIVATE KEY-----\\n\\n\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tCustomCertificate: pulumi.String(`    -----BEGIN CERTIFICATE-----\n    MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\n    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\n    OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n    -----END CERTIFICATE-----\n\n`),\n\t\t\t\tCustomCsrId: pulumi.String(\"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\"),\n\t\t\t\tCustomKey: pulumi.String(`    -----BEGIN RSA PRIVATE KEY-----\n    MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n    dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n    abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n    tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n    FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n    ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n    HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n    axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n    +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n    +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n    KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n    9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n    /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n    iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n    N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n    VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n    vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n    lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n    9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n    mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n    dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n    PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n    fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n    qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n    lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n    -----END RSA PRIVATE KEY-----\n\n`),\n\t\t\t\tMethod: pulumi.String(\"http\"),\n\t\t\t\tSettings: \u0026cloudflare.CustomHostnameSslSettingsArgs{\n\t\t\t\t\tCiphers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ECDHE-RSA-AES128-GCM-SHA256\"),\n\t\t\t\t\t\tpulumi.String(\"AES128-SHA\"),\n\t\t\t\t\t},\n\t\t\t\t\tEarlyHints:    pulumi.String(\"on\"),\n\t\t\t\t\tHttp2:         pulumi.String(\"on\"),\n\t\t\t\t\tMinTlsVersion: pulumi.String(\"1.2\"),\n\t\t\t\t\tTls13:         pulumi.String(\"on\"),\n\t\t\t\t},\n\t\t\t\tType:     pulumi.String(\"dv\"),\n\t\t\t\tWildcard: pulumi.Bool(false),\n\t\t\t},\n\t\t\tCustomMetadata: pulumi.StringMap{\n\t\t\t\t\"foo\": pulumi.String(\"string\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CustomHostname;\nimport com.pulumi.cloudflare.CustomHostnameArgs;\nimport com.pulumi.cloudflare.inputs.CustomHostnameSslArgs;\nimport com.pulumi.cloudflare.inputs.CustomHostnameSslSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCustomHostname = new CustomHostname(\"exampleCustomHostname\", CustomHostnameArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"app.example.com\")\n            .ssl(CustomHostnameSslArgs.builder()\n                .bundleMethod(\"ubiquitous\")\n                .certificateAuthority(\"google\")\n                .cloudflareBranding(false)\n                .customCertBundles(CustomHostnameSslCustomCertBundleArgs.builder()\n                    .customCertificate(\"\"\"\n      -----BEGIN CERTIFICATE-----\n      MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n      -----END CERTIFICATE-----\n\n                    \"\"\")\n                    .customKey(\"\"\"\n      -----BEGIN PRIVATE KEY-----\n      MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\n      -----END PRIVATE KEY-----\n\n                    \"\"\")\n                    .build())\n                .customCertificate(\"\"\"\n    -----BEGIN CERTIFICATE-----\n    MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\n    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\n    OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n    -----END CERTIFICATE-----\n\n                \"\"\")\n                .customCsrId(\"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\")\n                .customKey(\"\"\"\n    -----BEGIN RSA PRIVATE KEY-----\n    MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n    dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n    abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n    tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n    FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n    ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n    HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n    axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n    +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n    +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n    KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n    9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n    /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n    iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n    N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n    VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n    vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n    lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n    9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n    mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n    dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n    PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n    fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n    qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n    lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n    -----END RSA PRIVATE KEY-----\n\n                \"\"\")\n                .method(\"http\")\n                .settings(CustomHostnameSslSettingsArgs.builder()\n                    .ciphers(                    \n                        \"ECDHE-RSA-AES128-GCM-SHA256\",\n                        \"AES128-SHA\")\n                    .earlyHints(\"on\")\n                    .http2(\"on\")\n                    .minTlsVersion(\"1.2\")\n                    .tls13(\"on\")\n                    .build())\n                .type(\"dv\")\n                .wildcard(false)\n                .build())\n            .customMetadata(Map.of(\"foo\", \"string\"))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCustomHostname:\n    type: cloudflare:CustomHostname\n    name: example_custom_hostname\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      hostname: app.example.com\n      ssl:\n        bundleMethod: ubiquitous\n        certificateAuthority: google\n        cloudflareBranding: false\n        customCertBundles:\n          - customCertificate: |2+\n                    -----BEGIN CERTIFICATE-----\n                    MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n                    -----END CERTIFICATE-----\n\n            customKey: |2+\n                    -----BEGIN PRIVATE KEY-----\n                    MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\n                    -----END PRIVATE KEY-----\n\n        customCertificate: |2+\n              -----BEGIN CERTIFICATE-----\n              MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\n              MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\n              OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n              -----END CERTIFICATE-----\n\n        customCsrId: 7b163417-1d2b-4c84-a38a-2fb7a0cd7752\n        customKey: |2+\n              -----BEGIN RSA PRIVATE KEY-----\n              MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n              dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n              abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n              tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n              FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n              ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n              HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n              axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n              +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n              +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n              KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n              9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n              /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n              iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n              N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n              VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n              vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n              lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n              9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n              mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n              dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n              PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n              fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n              qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n              lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n              -----END RSA PRIVATE KEY-----\n\n        method: http\n        settings:\n          ciphers:\n            - ECDHE-RSA-AES128-GCM-SHA256\n            - AES128-SHA\n          earlyHints: on\n          http2: on\n          minTlsVersion: '1.2'\n          tls13: on\n        type: dv\n        wildcard: false\n      customMetadata:\n        foo: string\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/customHostname:CustomHostname example '\u003czone_id\u003e/\u003ccustom_hostname_id\u003e'\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "This is the time the hostname was created.\n"
                },
                "customMetadata": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Unique key/value metadata for this hostname. These are per-hostname (customer) settings.\n"
                },
                "customOriginServer": {
                    "type": "string",
                    "description": "a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record.\n"
                },
                "customOriginSni": {
                    "type": "string",
                    "description": "A hostname that will be sent to your custom origin server as SNI for TLS handshake. This can be a valid subdomain of the zone or custom origin server name or the string ':request*host*header:' which will cause the host header in the request to be used as SNI. Not configurable with default/fallback origin server.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The custom hostname that will point to your hostname via CNAME.\n"
                },
                "ownershipVerification": {
                    "$ref": "#/types/cloudflare:index/CustomHostnameOwnershipVerification:CustomHostnameOwnershipVerification",
                    "description": "This is a record which can be placed to activate a hostname.\n"
                },
                "ownershipVerificationHttp": {
                    "$ref": "#/types/cloudflare:index/CustomHostnameOwnershipVerificationHttp:CustomHostnameOwnershipVerificationHttp",
                    "description": "This presents the token to be served by the given http url to activate a hostname.\n"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/CustomHostnameSsl:CustomHostnameSsl",
                    "description": "SSL properties used when creating the custom hostname.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n"
                },
                "verificationErrors": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "These are errors that were encountered while trying to activate a hostname.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdAt",
                "hostname",
                "ownershipVerification",
                "ownershipVerificationHttp",
                "status",
                "verificationErrors"
            ],
            "inputProperties": {
                "customMetadata": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Unique key/value metadata for this hostname. These are per-hostname (customer) settings.\n"
                },
                "customOriginServer": {
                    "type": "string",
                    "description": "a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record.\n"
                },
                "customOriginSni": {
                    "type": "string",
                    "description": "A hostname that will be sent to your custom origin server as SNI for TLS handshake. This can be a valid subdomain of the zone or custom origin server name or the string ':request*host*header:' which will cause the host header in the request to be used as SNI. Not configurable with default/fallback origin server.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The custom hostname that will point to your hostname via CNAME.\n"
                },
                "ssl": {
                    "$ref": "#/types/cloudflare:index/CustomHostnameSsl:CustomHostnameSsl",
                    "description": "SSL properties used when creating the custom hostname.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "hostname"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomHostname resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "This is the time the hostname was created.\n"
                    },
                    "customMetadata": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "Unique key/value metadata for this hostname. These are per-hostname (customer) settings.\n"
                    },
                    "customOriginServer": {
                        "type": "string",
                        "description": "a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record.\n"
                    },
                    "customOriginSni": {
                        "type": "string",
                        "description": "A hostname that will be sent to your custom origin server as SNI for TLS handshake. This can be a valid subdomain of the zone or custom origin server name or the string ':request*host*header:' which will cause the host header in the request to be used as SNI. Not configurable with default/fallback origin server.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "The custom hostname that will point to your hostname via CNAME.\n"
                    },
                    "ownershipVerification": {
                        "$ref": "#/types/cloudflare:index/CustomHostnameOwnershipVerification:CustomHostnameOwnershipVerification",
                        "description": "This is a record which can be placed to activate a hostname.\n"
                    },
                    "ownershipVerificationHttp": {
                        "$ref": "#/types/cloudflare:index/CustomHostnameOwnershipVerificationHttp:CustomHostnameOwnershipVerificationHttp",
                        "description": "This presents the token to be served by the given http url to activate a hostname.\n"
                    },
                    "ssl": {
                        "$ref": "#/types/cloudflare:index/CustomHostnameSsl:CustomHostnameSsl",
                        "description": "SSL properties used when creating the custom hostname.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n"
                    },
                    "verificationErrors": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "These are errors that were encountered while trying to activate a hostname.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/customHostnameFallbackOrigin:CustomHostnameFallbackOrigin": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomHostnameFallbackOrigin = new cloudflare.CustomHostnameFallbackOrigin(\"example_custom_hostname_fallback_origin\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    origin: \"fallback.example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_hostname_fallback_origin = cloudflare.CustomHostnameFallbackOrigin(\"example_custom_hostname_fallback_origin\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    origin=\"fallback.example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomHostnameFallbackOrigin = new Cloudflare.Index.CustomHostnameFallbackOrigin(\"example_custom_hostname_fallback_origin\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Origin = \"fallback.example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCustomHostnameFallbackOrigin(ctx, \"example_custom_hostname_fallback_origin\", \u0026cloudflare.CustomHostnameFallbackOriginArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOrigin: pulumi.String(\"fallback.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CustomHostnameFallbackOrigin;\nimport com.pulumi.cloudflare.CustomHostnameFallbackOriginArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCustomHostnameFallbackOrigin = new CustomHostnameFallbackOrigin(\"exampleCustomHostnameFallbackOrigin\", CustomHostnameFallbackOriginArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .origin(\"fallback.example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCustomHostnameFallbackOrigin:\n    type: cloudflare:CustomHostnameFallbackOrigin\n    name: example_custom_hostname_fallback_origin\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      origin: fallback.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/customHostnameFallbackOrigin:CustomHostnameFallbackOrigin example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "This is the time the fallback origin was created.\n"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "These are errors that were encountered while trying to activate a fallback origin.\n"
                },
                "origin": {
                    "type": "string",
                    "description": "Your origin hostname that requests to your custom hostnames will be sent to.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the fallback origin's activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "This is the time the fallback origin was updated.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdAt",
                "errors",
                "origin",
                "status",
                "updatedAt",
                "zoneId"
            ],
            "inputProperties": {
                "origin": {
                    "type": "string",
                    "description": "Your origin hostname that requests to your custom hostnames will be sent to.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "origin",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomHostnameFallbackOrigin resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "This is the time the fallback origin was created.\n"
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "These are errors that were encountered while trying to activate a fallback origin.\n"
                    },
                    "origin": {
                        "type": "string",
                        "description": "Your origin hostname that requests to your custom hostnames will be sent to.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the fallback origin's activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deployment*timed*out\", \"deletion*timed*out\".\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "This is the time the fallback origin was updated.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/customOriginTrustStore:CustomOriginTrustStore": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomOriginTrustStore = new cloudflare.CustomOriginTrustStore(\"example_custom_origin_trust_store\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n  -----END CERTIFICATE-----\n\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_origin_trust_store = cloudflare.CustomOriginTrustStore(\"example_custom_origin_trust_store\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n  -----END CERTIFICATE-----\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomOriginTrustStore = new Cloudflare.Index.CustomOriginTrustStore(\"example_custom_origin_trust_store\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n  -----END CERTIFICATE-----\n\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCustomOriginTrustStore(ctx, \"example_custom_origin_trust_store\", \u0026cloudflare.CustomOriginTrustStoreArgs{\n\t\t\tZoneId:      pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificate: pulumi.String(\"  -----BEGIN CERTIFICATE-----\\n  MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\\n  -----END CERTIFICATE-----\\n\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CustomOriginTrustStore;\nimport com.pulumi.cloudflare.CustomOriginTrustStoreArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCustomOriginTrustStore = new CustomOriginTrustStore(\"exampleCustomOriginTrustStore\", CustomOriginTrustStoreArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n  -----END CERTIFICATE-----\n\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCustomOriginTrustStore:\n    type: cloudflare:CustomOriginTrustStore\n    name: example_custom_origin_trust_store\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      certificate: |2+\n          -----BEGIN CERTIFICATE-----\n          MIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n          -----END CERTIFICATE-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/customOriginTrustStore:CustomOriginTrustStore example '\u003czone_id\u003e/\u003ccustom_origin_trust_store_id\u003e'\n```\n\n",
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate expires.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the zone's custom SSL.\nAvailable values: \"initializing\", \"pending*deployment\", \"active\", \"pending*deletion\", \"deleted\", \"expired\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "certificate",
                "expiresOn",
                "issuer",
                "signature",
                "status",
                "updatedAt",
                "uploadedOn"
            ],
            "inputProperties": {
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "certificate"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomOriginTrustStore resources.\n",
                "properties": {
                    "certificate": {
                        "type": "string",
                        "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "When the certificate expires.\n"
                    },
                    "issuer": {
                        "type": "string",
                        "description": "The certificate authority that issued the certificate.\n"
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the certificate.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the zone's custom SSL.\nAvailable values: \"initializing\", \"pending*deployment\", \"active\", \"pending*deletion\", \"deleted\", \"expired\".\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "When the certificate was last modified.\n"
                    },
                    "uploadedOn": {
                        "type": "string",
                        "description": "When the certificate was uploaded to Cloudflare.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/customPageAsset:CustomPageAsset": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomPageAsset = new cloudflare.CustomPageAsset(\"example_custom_page_asset\", {\n    description: \"Custom 500 error page\",\n    name: \"my_custom_error_page\",\n    url: \"https://example.com/error.html\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_page_asset = cloudflare.CustomPageAsset(\"example_custom_page_asset\",\n    description=\"Custom 500 error page\",\n    name=\"my_custom_error_page\",\n    url=\"https://example.com/error.html\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomPageAsset = new Cloudflare.Index.CustomPageAsset(\"example_custom_page_asset\", new()\n    {\n        Description = \"Custom 500 error page\",\n        Name = \"my_custom_error_page\",\n        Url = \"https://example.com/error.html\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCustomPageAsset(ctx, \"example_custom_page_asset\", \u0026cloudflare.CustomPageAssetArgs{\n\t\t\tDescription: pulumi.String(\"Custom 500 error page\"),\n\t\t\tName:        pulumi.String(\"my_custom_error_page\"),\n\t\t\tUrl:         pulumi.String(\"https://example.com/error.html\"),\n\t\t\tZoneId:      pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CustomPageAsset;\nimport com.pulumi.cloudflare.CustomPageAssetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCustomPageAsset = new CustomPageAsset(\"exampleCustomPageAsset\", CustomPageAssetArgs.builder()\n            .description(\"Custom 500 error page\")\n            .name(\"my_custom_error_page\")\n            .url(\"https://example.com/error.html\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCustomPageAsset:\n    type: cloudflare:CustomPageAsset\n    name: example_custom_page_asset\n    properties:\n      description: Custom 500 error page\n      name: my_custom_error_page\n      url: https://example.com/error.html\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/customPageAsset:CustomPageAsset example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003casset_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A short description of the custom asset.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n"
                },
                "sizeBytes": {
                    "type": "integer",
                    "description": "The size of the asset content in bytes.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL where the asset content is fetched from.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "description",
                "lastUpdated",
                "name",
                "sizeBytes",
                "url"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A short description of the custom asset.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL where the asset content is fetched from.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "description",
                "name",
                "url"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomPageAsset resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A short description of the custom asset.\n"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n"
                    },
                    "sizeBytes": {
                        "type": "integer",
                        "description": "The size of the asset content in bytes.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The URL where the asset content is fetched from.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/customPages:CustomPages": {
            "description": "Accepted Permissions\n\n- `Account Custom Pages Read`\n- `Account Custom Pages Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomPages = new cloudflare.CustomPages(\"example_custom_pages\", {\n    identifier: \"ratelimit_block\",\n    state: \"default\",\n    url: \"http://www.example.com\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_pages = cloudflare.CustomPages(\"example_custom_pages\",\n    identifier=\"ratelimit_block\",\n    state=\"default\",\n    url=\"http://www.example.com\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomPages = new Cloudflare.Index.CustomPages(\"example_custom_pages\", new()\n    {\n        Identifier = \"ratelimit_block\",\n        State = \"default\",\n        Url = \"http://www.example.com\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCustomPages(ctx, \"example_custom_pages\", \u0026cloudflare.CustomPagesArgs{\n\t\t\tIdentifier: pulumi.String(\"ratelimit_block\"),\n\t\t\tState:      pulumi.String(\"default\"),\n\t\t\tUrl:        pulumi.String(\"http://www.example.com\"),\n\t\t\tZoneId:     pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CustomPages;\nimport com.pulumi.cloudflare.CustomPagesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCustomPages = new CustomPages(\"exampleCustomPages\", CustomPagesArgs.builder()\n            .identifier(\"ratelimit_block\")\n            .state(\"default\")\n            .url(\"http://www.example.com\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCustomPages:\n    type: cloudflare:CustomPages\n    name: example_custom_pages\n    properties:\n      identifier: ratelimit_block\n      state: default\n      url: http://www.example.com\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/customPages:CustomPages example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cidentifier\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "identifier": {
                    "type": "string",
                    "description": "Error Page Types\nAvailable values: \"1000*errors\", \"500*errors\", \"basic*challenge\", \"country*challenge\", \"ip*block\", \"managed*challenge\", \"ratelimit*block\", \"under*attack\", \"waf*block\", \"waf*challenge\".\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "previewTarget": {
                    "type": "string"
                },
                "requiredTokens": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "state": {
                    "type": "string",
                    "description": "The custom page state.\nAvailable values: \"default\", \"customized\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL associated with the custom page.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "createdOn",
                "description",
                "identifier",
                "modifiedOn",
                "previewTarget",
                "requiredTokens",
                "state",
                "url"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "Error Page Types\nAvailable values: \"1000*errors\", \"500*errors\", \"basic*challenge\", \"country*challenge\", \"ip*block\", \"managed*challenge\", \"ratelimit*block\", \"under*attack\", \"waf*block\", \"waf*challenge\".\n"
                },
                "state": {
                    "type": "string",
                    "description": "The custom page state.\nAvailable values: \"default\", \"customized\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL associated with the custom page.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "identifier",
                "state"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomPages resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "Error Page Types\nAvailable values: \"1000*errors\", \"500*errors\", \"basic*challenge\", \"country*challenge\", \"ip*block\", \"managed*challenge\", \"ratelimit*block\", \"under*attack\", \"waf*block\", \"waf*challenge\".\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "previewTarget": {
                        "type": "string"
                    },
                    "requiredTokens": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "state": {
                        "type": "string",
                        "description": "The custom page state.\nAvailable values: \"default\", \"customized\".\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The URL associated with the custom page.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/customSsl:CustomSsl": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomSsl = new cloudflare.CustomSsl(\"example_custom_ssl\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n`,\n    privateKey: `  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n`,\n    bundleMethod: \"ubiquitous\",\n    customCsrId: \"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\",\n    deploy: \"staging\",\n    geoRestrictions: {\n        label: \"us\",\n    },\n    policy: \"(country: US) or (region: EU)\",\n    type: \"sni_custom\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_ssl = cloudflare.CustomSsl(\"example_custom_ssl\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n\"\"\",\n    private_key=\"\"\"  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n\"\"\",\n    bundle_method=\"ubiquitous\",\n    custom_csr_id=\"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\",\n    deploy=\"staging\",\n    geo_restrictions={\n        \"label\": \"us\",\n    },\n    policy=\"(country: US) or (region: EU)\",\n    type=\"sni_custom\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomSsl = new Cloudflare.Index.CustomSsl(\"example_custom_ssl\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n\",\n        PrivateKey = @\"  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n\",\n        BundleMethod = \"ubiquitous\",\n        CustomCsrId = \"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\",\n        Deploy = \"staging\",\n        GeoRestrictions = new Cloudflare.Inputs.CustomSslGeoRestrictionsArgs\n        {\n            Label = \"us\",\n        },\n        Policy = \"(country: US) or (region: EU)\",\n        Type = \"sni_custom\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewCustomSsl(ctx, \"example_custom_ssl\", \u0026cloudflare.CustomSslArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificate: pulumi.String(`  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n`),\n\t\t\tPrivateKey: pulumi.String(`  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n`),\n\t\t\tBundleMethod: pulumi.String(\"ubiquitous\"),\n\t\t\tCustomCsrId:  pulumi.String(\"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\"),\n\t\t\tDeploy:       pulumi.String(\"staging\"),\n\t\t\tGeoRestrictions: \u0026cloudflare.CustomSslGeoRestrictionsArgs{\n\t\t\t\tLabel: pulumi.String(\"us\"),\n\t\t\t},\n\t\t\tPolicy: pulumi.String(\"(country: US) or (region: EU)\"),\n\t\t\tType:   pulumi.String(\"sni_custom\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CustomSsl;\nimport com.pulumi.cloudflare.CustomSslArgs;\nimport com.pulumi.cloudflare.inputs.CustomSslGeoRestrictionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCustomSsl = new CustomSsl(\"exampleCustomSsl\", CustomSslArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n  BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n  MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n  CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n  KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n  0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n  dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n  izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n  9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n  GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n  2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n  Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n  SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n  2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n  YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n  -----END CERTIFICATE-----\n\n            \"\"\")\n            .privateKey(\"\"\"\n  -----BEGIN RSA PRIVATE KEY-----\n  MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n  dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n  abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n  tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n  FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n  ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n  HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n  axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n  +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n  +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n  KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n  9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n  /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n  iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n  N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n  VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n  vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n  lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n  9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n  mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n  dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n  PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n  fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n  qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n  lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n  -----END RSA PRIVATE KEY-----\n\n            \"\"\")\n            .bundleMethod(\"ubiquitous\")\n            .customCsrId(\"7b163417-1d2b-4c84-a38a-2fb7a0cd7752\")\n            .deploy(\"staging\")\n            .geoRestrictions(CustomSslGeoRestrictionsArgs.builder()\n                .label(\"us\")\n                .build())\n            .policy(\"(country: US) or (region: EU)\")\n            .type(\"sni_custom\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCustomSsl:\n    type: cloudflare:CustomSsl\n    name: example_custom_ssl\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      certificate: |2+\n          -----BEGIN CERTIFICATE-----\n          MIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\n          BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n          aWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\n          MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n          ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n          CgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\n          CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\n          KwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n          0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\n          dZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\n          izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n          9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\n          GKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n          BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\n          MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n          2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\n          Mlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\n          SvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n          2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\n          YbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n          -----END CERTIFICATE-----\n\n      privateKey: |2+\n          -----BEGIN RSA PRIVATE KEY-----\n          MIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\n          dtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\n          abIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\n          tnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\n          FxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\n          ewooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\n          HBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\n          axiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n          +ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n          +j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\n          KLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n          9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n          /WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\n          iacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\n          N2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\n          VAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\n          vULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\n          lySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n          9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\n          mEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\n          dFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\n          PG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\n          fhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\n          qu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\n          lv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n          -----END RSA PRIVATE KEY-----\n\n      bundleMethod: ubiquitous\n      customCsrId: 7b163417-1d2b-4c84-a38a-2fb7a0cd7752\n      deploy: staging\n      geoRestrictions:\n        label: us\n      policy: '(country: US) or (region: EU)'\n      type: sni_custom\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/customSsl:CustomSsl example '\u003czone_id\u003e/\u003ccustom_certificate_id\u003e'\n```\n\n",
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                },
                "customCsrId": {
                    "type": "string",
                    "description": "The identifier for the Custom CSR that was used.\n"
                },
                "deploy": {
                    "type": "string",
                    "description": "The environment to deploy the certificate to.\nAvailable values: \"staging\", \"production\".\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate from the authority expires.\n"
                },
                "geoRestrictions": {
                    "$ref": "#/types/cloudflare:index/CustomSslGeoRestrictions:CustomSslGeoRestrictions",
                    "description": "Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance.\n"
                },
                "hosts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "keylessServer": {
                    "$ref": "#/types/cloudflare:index/CustomSslKeylessServer:CustomSslKeylessServer"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the certificate was last modified.\n"
                },
                "policy": {
                    "type": "string",
                    "description": "Specify the policy that determines the region where your private key will be held locally. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Any combination of countries, specified by their two letter country code (https://en.wikipedia.org/wiki/ISO*3166-1*alpha-2#Officially*assigned*code*elements) can be chosen, such as 'country: IN', as well as 'region: EU' which refers to the EU region. If there are too few data centers satisfying the policy, it will be rejected.\nNote: The API accepts this field as either \"policy\" or \"policy*restrictions\" in requests. Responses return this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e.\n"
                },
                "policyRestrictions": {
                    "type": "string",
                    "description": "The policy restrictions returned by the API. This field is returned in responses\nwhen a policy has been set. The API accepts the \"policy\" field in requests but\nreturns this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e in responses.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The order/priority in which the certificate will be used in a request. The higher priority will break ties across overlapping 'legacy_custom' certificates, but 'legacy_custom' certificates will always supercede 'sni_custom' certificates."
                },
                "privateKey": {
                    "type": "string",
                    "description": "The zone's private key.\n",
                    "secret": true
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate."
                },
                "status": {
                    "type": "string",
                    "description": "Status of the zone's custom SSL.\nAvailable values: \"active\", \"expired\", \"deleted\", \"pending\", \"initializing\"."
                },
                "type": {
                    "type": "string",
                    "description": "The type 'legacy*custom' enables support for legacy clients which do not include SNI in the TLS handshake.\nAvailable values: \"legacy*custom\", \u003cspan pulumi-lang-nodejs=\"\"sniCustom\"\" pulumi-lang-dotnet=\"\"SniCustom\"\" pulumi-lang-go=\"\"sniCustom\"\" pulumi-lang-python=\"\"sni_custom\"\" pulumi-lang-yaml=\"\"sniCustom\"\" pulumi-lang-java=\"\"sniCustom\"\"\u003e\"sniCustom\"\u003c/span\u003e.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "When the certificate was uploaded to Cloudflare."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "bundleMethod",
                "certificate",
                "expiresOn",
                "hosts",
                "issuer",
                "keylessServer",
                "modifiedOn",
                "policyRestrictions",
                "priority",
                "privateKey",
                "signature",
                "status",
                "type",
                "uploadedOn"
            ],
            "inputProperties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                },
                "customCsrId": {
                    "type": "string",
                    "description": "The identifier for the Custom CSR that was used.\n"
                },
                "deploy": {
                    "type": "string",
                    "description": "The environment to deploy the certificate to.\nAvailable values: \"staging\", \"production\".\n"
                },
                "geoRestrictions": {
                    "$ref": "#/types/cloudflare:index/CustomSslGeoRestrictions:CustomSslGeoRestrictions",
                    "description": "Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance.\n"
                },
                "policy": {
                    "type": "string",
                    "description": "Specify the policy that determines the region where your private key will be held locally. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Any combination of countries, specified by their two letter country code (https://en.wikipedia.org/wiki/ISO*3166-1*alpha-2#Officially*assigned*code*elements) can be chosen, such as 'country: IN', as well as 'region: EU' which refers to the EU region. If there are too few data centers satisfying the policy, it will be rejected.\nNote: The API accepts this field as either \"policy\" or \"policy*restrictions\" in requests. Responses return this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The zone's private key.\n",
                    "secret": true
                },
                "type": {
                    "type": "string",
                    "description": "The type 'legacy*custom' enables support for legacy clients which do not include SNI in the TLS handshake.\nAvailable values: \"legacy*custom\", \u003cspan pulumi-lang-nodejs=\"\"sniCustom\"\" pulumi-lang-dotnet=\"\"SniCustom\"\" pulumi-lang-go=\"\"sniCustom\"\" pulumi-lang-python=\"\"sni_custom\"\" pulumi-lang-yaml=\"\"sniCustom\"\" pulumi-lang-java=\"\"sniCustom\"\"\u003e\"sniCustom\"\u003c/span\u003e.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "certificate",
                "privateKey"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomSsl resources.\n",
                "properties": {
                    "bundleMethod": {
                        "type": "string",
                        "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                    },
                    "certificate": {
                        "type": "string",
                        "description": "The zone's SSL certificate or certificate and the intermediate(s).\n"
                    },
                    "customCsrId": {
                        "type": "string",
                        "description": "The identifier for the Custom CSR that was used.\n"
                    },
                    "deploy": {
                        "type": "string",
                        "description": "The environment to deploy the certificate to.\nAvailable values: \"staging\", \"production\".\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "When the certificate from the authority expires.\n"
                    },
                    "geoRestrictions": {
                        "$ref": "#/types/cloudflare:index/CustomSslGeoRestrictions:CustomSslGeoRestrictions",
                        "description": "Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance.\n"
                    },
                    "hosts": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "issuer": {
                        "type": "string",
                        "description": "The certificate authority that issued the certificate.\n"
                    },
                    "keylessServer": {
                        "$ref": "#/types/cloudflare:index/CustomSslKeylessServer:CustomSslKeylessServer"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the certificate was last modified.\n"
                    },
                    "policy": {
                        "type": "string",
                        "description": "Specify the policy that determines the region where your private key will be held locally. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Any combination of countries, specified by their two letter country code (https://en.wikipedia.org/wiki/ISO*3166-1*alpha-2#Officially*assigned*code*elements) can be chosen, such as 'country: IN', as well as 'region: EU' which refers to the EU region. If there are too few data centers satisfying the policy, it will be rejected.\nNote: The API accepts this field as either \"policy\" or \"policy*restrictions\" in requests. Responses return this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e.\n"
                    },
                    "policyRestrictions": {
                        "type": "string",
                        "description": "The policy restrictions returned by the API. This field is returned in responses\nwhen a policy has been set. The API accepts the \"policy\" field in requests but\nreturns this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e in responses.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "The order/priority in which the certificate will be used in a request. The higher priority will break ties across overlapping 'legacy_custom' certificates, but 'legacy_custom' certificates will always supercede 'sni_custom' certificates."
                    },
                    "privateKey": {
                        "type": "string",
                        "description": "The zone's private key.\n",
                        "secret": true
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the certificate."
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the zone's custom SSL.\nAvailable values: \"active\", \"expired\", \"deleted\", \"pending\", \"initializing\"."
                    },
                    "type": {
                        "type": "string",
                        "description": "The type 'legacy*custom' enables support for legacy clients which do not include SNI in the TLS handshake.\nAvailable values: \"legacy*custom\", \u003cspan pulumi-lang-nodejs=\"\"sniCustom\"\" pulumi-lang-dotnet=\"\"SniCustom\"\" pulumi-lang-go=\"\"sniCustom\"\" pulumi-lang-python=\"\"sni_custom\"\" pulumi-lang-yaml=\"\"sniCustom\"\" pulumi-lang-java=\"\"sniCustom\"\"\u003e\"sniCustom\"\u003c/span\u003e.\n"
                    },
                    "uploadedOn": {
                        "type": "string",
                        "description": "When the certificate was uploaded to Cloudflare."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/d1Database:D1Database": {
            "description": "Accepted Permissions\n\n- `D1 Read`\n- `D1 Write`\n\n!\u003e When a D1 Database is replaced all the data is lost. Please ensure you have a\n   backup of your data before replacing a D1 Database.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleD1Database = new cloudflare.D1Database(\"example_d1_database\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my-database\",\n    jurisdiction: \"eu\",\n    primaryLocationHint: \"wnam\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_d1_database = cloudflare.D1Database(\"example_d1_database\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my-database\",\n    jurisdiction=\"eu\",\n    primary_location_hint=\"wnam\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleD1Database = new Cloudflare.Index.D1Database(\"example_d1_database\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my-database\",\n        Jurisdiction = \"eu\",\n        PrimaryLocationHint = \"wnam\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewD1Database(ctx, \"example_d1_database\", \u0026cloudflare.D1DatabaseArgs{\n\t\t\tAccountId:           pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:                pulumi.String(\"my-database\"),\n\t\t\tJurisdiction:        pulumi.String(\"eu\"),\n\t\t\tPrimaryLocationHint: pulumi.String(\"wnam\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.D1Database;\nimport com.pulumi.cloudflare.D1DatabaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleD1Database = new D1Database(\"exampleD1Database\", D1DatabaseArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my-database\")\n            .jurisdiction(\"eu\")\n            .primaryLocationHint(\"wnam\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleD1Database:\n    type: cloudflare:D1Database\n    name: example_d1_database\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my-database\n      jurisdiction: eu\n      primaryLocationHint: wnam\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/d1Database:D1Database example '\u003caccount_id\u003e/\u003cdatabase_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Specifies the timestamp the resource was created as an ISO8601 string.\n"
                },
                "fileSize": {
                    "type": "number",
                    "description": "The D1 database's size, in bytes.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.\nAvailable values: \"eu\", \"fedramp\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "D1 database name.\n"
                },
                "numTables": {
                    "type": "number"
                },
                "primaryLocationHint": {
                    "type": "string",
                    "description": "Specify the region to create the D1 primary, if available. If this option is omitted, the D1 will be created as close as possible to the current user.\nAvailable values: \"wnam\", \"enam\", \"weur\", \"eeur\", \"apac\", \"oc\".\n"
                },
                "readReplication": {
                    "$ref": "#/types/cloudflare:index/D1DatabaseReadReplication:D1DatabaseReadReplication",
                    "description": "Configuration for D1 read replication.\n"
                },
                "uuid": {
                    "type": "string",
                    "description": "D1 database identifier (UUID).\n"
                },
                "version": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "fileSize",
                "name",
                "numTables",
                "uuid",
                "version"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.\nAvailable values: \"eu\", \"fedramp\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "D1 database name.\n"
                },
                "primaryLocationHint": {
                    "type": "string",
                    "description": "Specify the region to create the D1 primary, if available. If this option is omitted, the D1 will be created as close as possible to the current user.\nAvailable values: \"wnam\", \"enam\", \"weur\", \"eeur\", \"apac\", \"oc\".\n"
                },
                "readReplication": {
                    "$ref": "#/types/cloudflare:index/D1DatabaseReadReplication:D1DatabaseReadReplication",
                    "description": "Configuration for D1 read replication.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering D1Database resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Specifies the timestamp the resource was created as an ISO8601 string.\n"
                    },
                    "fileSize": {
                        "type": "number",
                        "description": "The D1 database's size, in bytes.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.\nAvailable values: \"eu\", \"fedramp\".\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "D1 database name.\n"
                    },
                    "numTables": {
                        "type": "number"
                    },
                    "primaryLocationHint": {
                        "type": "string",
                        "description": "Specify the region to create the D1 primary, if available. If this option is omitted, the D1 will be created as close as possible to the current user.\nAvailable values: \"wnam\", \"enam\", \"weur\", \"eeur\", \"apac\", \"oc\".\n"
                    },
                    "readReplication": {
                        "$ref": "#/types/cloudflare:index/D1DatabaseReadReplication:D1DatabaseReadReplication",
                        "description": "Configuration for D1 read replication.\n"
                    },
                    "uuid": {
                        "type": "string",
                        "description": "D1 database identifier (UUID).\n"
                    },
                    "version": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/deviceManagedNetworks:DeviceManagedNetworks": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceManagedNetworks = new cloudflare.ZeroTrustDeviceManagedNetworks(\"example_zero_trust_device_managed_networks\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    config: {\n        tlsSockaddr: \"foo.bar:1234\",\n        sha256: \"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\",\n    },\n    name: \"managed-network-1\",\n    type: \"tls\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_managed_networks = cloudflare.ZeroTrustDeviceManagedNetworks(\"example_zero_trust_device_managed_networks\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    config={\n        \"tls_sockaddr\": \"foo.bar:1234\",\n        \"sha256\": \"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\",\n    },\n    name=\"managed-network-1\",\n    type=\"tls\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceManagedNetworks = new Cloudflare.Index.ZeroTrustDeviceManagedNetworks(\"example_zero_trust_device_managed_networks\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Config = new Cloudflare.Inputs.ZeroTrustDeviceManagedNetworksConfigArgs\n        {\n            TlsSockaddr = \"foo.bar:1234\",\n            Sha256 = \"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\",\n        },\n        Name = \"managed-network-1\",\n        Type = \"tls\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceManagedNetworks(ctx, \"example_zero_trust_device_managed_networks\", \u0026cloudflare.ZeroTrustDeviceManagedNetworksArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tConfig: \u0026cloudflare.ZeroTrustDeviceManagedNetworksConfigArgs{\n\t\t\t\tTlsSockaddr: pulumi.String(\"foo.bar:1234\"),\n\t\t\t\tSha256:      pulumi.String(\"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"managed-network-1\"),\n\t\t\tType: pulumi.String(\"tls\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceManagedNetworks;\nimport com.pulumi.cloudflare.ZeroTrustDeviceManagedNetworksArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceManagedNetworksConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceManagedNetworks = new ZeroTrustDeviceManagedNetworks(\"exampleZeroTrustDeviceManagedNetworks\", ZeroTrustDeviceManagedNetworksArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .config(ZeroTrustDeviceManagedNetworksConfigArgs.builder()\n                .tlsSockaddr(\"foo.bar:1234\")\n                .sha256(\"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\")\n                .build())\n            .name(\"managed-network-1\")\n            .type(\"tls\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceManagedNetworks:\n    type: cloudflare:ZeroTrustDeviceManagedNetworks\n    name: example_zero_trust_device_managed_networks\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      config:\n        tlsSockaddr: foo.bar:1234\n        sha256: b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\n      name: managed-network-1\n      type: tls\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/deviceManagedNetworks:DeviceManagedNetworks example '\u003caccount_id\u003e/\u003cnetwork_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/DeviceManagedNetworksConfig:DeviceManagedNetworksConfig",
                    "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device managed network. This name must be unique.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "API UUID.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                }
            },
            "required": [
                "config",
                "name",
                "networkId",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/DeviceManagedNetworksConfig:DeviceManagedNetworksConfig",
                    "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device managed network. This name must be unique.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                }
            },
            "requiredInputs": [
                "config",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DeviceManagedNetworks resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/DeviceManagedNetworksConfig:DeviceManagedNetworksConfig",
                        "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device managed network. This name must be unique.\n"
                    },
                    "networkId": {
                        "type": "string",
                        "description": "API UUID.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/deviceManagedNetworks:DeviceManagedNetworks"
                }
            ],
            "deprecationMessage": "cloudflare.index/devicemanagednetworks.DeviceManagedNetworks has been deprecated in favor of cloudflare.index/zerotrustdevicemanagednetworks.ZeroTrustDeviceManagedNetworks"
        },
        "cloudflare:index/devicePostureIntegration:DevicePostureIntegration": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureIntegration = new cloudflare.ZeroTrustDevicePostureIntegration(\"example_zero_trust_device_posture_integration\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    config: {\n        apiUrl: \"https://as123.awmdm.com/API\",\n        authUrl: \"https://na.uemauth.workspaceone.com/connect/token\",\n        clientId: \"example client id\",\n        clientSecret: \"example client secret\",\n    },\n    interval: \"10m\",\n    name: \"My Workspace One Integration\",\n    type: \"workspace_one\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_integration = cloudflare.ZeroTrustDevicePostureIntegration(\"example_zero_trust_device_posture_integration\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    config={\n        \"api_url\": \"https://as123.awmdm.com/API\",\n        \"auth_url\": \"https://na.uemauth.workspaceone.com/connect/token\",\n        \"client_id\": \"example client id\",\n        \"client_secret\": \"example client secret\",\n    },\n    interval=\"10m\",\n    name=\"My Workspace One Integration\",\n    type=\"workspace_one\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureIntegration = new Cloudflare.Index.ZeroTrustDevicePostureIntegration(\"example_zero_trust_device_posture_integration\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Config = new Cloudflare.Inputs.ZeroTrustDevicePostureIntegrationConfigArgs\n        {\n            ApiUrl = \"https://as123.awmdm.com/API\",\n            AuthUrl = \"https://na.uemauth.workspaceone.com/connect/token\",\n            ClientId = \"example client id\",\n            ClientSecret = \"example client secret\",\n        },\n        Interval = \"10m\",\n        Name = \"My Workspace One Integration\",\n        Type = \"workspace_one\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDevicePostureIntegration(ctx, \"example_zero_trust_device_posture_integration\", \u0026cloudflare.ZeroTrustDevicePostureIntegrationArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tConfig: \u0026cloudflare.ZeroTrustDevicePostureIntegrationConfigArgs{\n\t\t\t\tApiUrl:       pulumi.String(\"https://as123.awmdm.com/API\"),\n\t\t\t\tAuthUrl:      pulumi.String(\"https://na.uemauth.workspaceone.com/connect/token\"),\n\t\t\t\tClientId:     pulumi.String(\"example client id\"),\n\t\t\t\tClientSecret: pulumi.String(\"example client secret\"),\n\t\t\t},\n\t\t\tInterval: pulumi.String(\"10m\"),\n\t\t\tName:     pulumi.String(\"My Workspace One Integration\"),\n\t\t\tType:     pulumi.String(\"workspace_one\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureIntegration;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureIntegrationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDevicePostureIntegrationConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDevicePostureIntegration = new ZeroTrustDevicePostureIntegration(\"exampleZeroTrustDevicePostureIntegration\", ZeroTrustDevicePostureIntegrationArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .config(ZeroTrustDevicePostureIntegrationConfigArgs.builder()\n                .apiUrl(\"https://as123.awmdm.com/API\")\n                .authUrl(\"https://na.uemauth.workspaceone.com/connect/token\")\n                .clientId(\"example client id\")\n                .clientSecret(\"example client secret\")\n                .build())\n            .interval(\"10m\")\n            .name(\"My Workspace One Integration\")\n            .type(\"workspace_one\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDevicePostureIntegration:\n    type: cloudflare:ZeroTrustDevicePostureIntegration\n    name: example_zero_trust_device_posture_integration\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      config:\n        apiUrl: https://as123.awmdm.com/API\n        authUrl: https://na.uemauth.workspaceone.com/connect/token\n        clientId: example client id\n        clientSecret: example client secret\n      interval: 10m\n      name: My Workspace One Integration\n      type: workspace_one\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/devicePostureIntegration:DevicePostureIntegration example '\u003caccount_id\u003e/\u003cintegration_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/DevicePostureIntegrationConfig:DevicePostureIntegrationConfig",
                    "description": "The configuration object containing third-party integration information.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture integration.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                }
            },
            "required": [
                "config",
                "interval",
                "name",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/DevicePostureIntegrationConfig:DevicePostureIntegrationConfig",
                    "description": "The configuration object containing third-party integration information.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture integration.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "config",
                "interval",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DevicePostureIntegration resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/DevicePostureIntegrationConfig:DevicePostureIntegrationConfig",
                        "description": "The configuration object containing third-party integration information.\n"
                    },
                    "interval": {
                        "type": "string",
                        "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device posture integration.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/devicePostureIntegration:DevicePostureIntegration"
                }
            ],
            "deprecationMessage": "cloudflare.index/devicepostureintegration.DevicePostureIntegration has been deprecated in favor of cloudflare.index/zerotrustdevicepostureintegration.ZeroTrustDevicePostureIntegration"
        },
        "cloudflare:index/devicePostureRule:DevicePostureRule": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureRule = new cloudflare.ZeroTrustDevicePostureRule(\"example_zero_trust_device_posture_rule\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Admin Serial Numbers\",\n    type: \"file\",\n    description: \"The rule for admin serial numbers\",\n    expiration: \"1h\",\n    input: {\n        operatingSystem: \"linux\",\n        path: \"/bin/cat\",\n        exists: true,\n        sha256: \"https://api.us-2.crowdstrike.com\",\n        thumbprint: \"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\",\n    },\n    matches: [{\n        platform: \"windows\",\n    }],\n    schedule: \"1h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_rule = cloudflare.ZeroTrustDevicePostureRule(\"example_zero_trust_device_posture_rule\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Admin Serial Numbers\",\n    type=\"file\",\n    description=\"The rule for admin serial numbers\",\n    expiration=\"1h\",\n    input={\n        \"operating_system\": \"linux\",\n        \"path\": \"/bin/cat\",\n        \"exists\": True,\n        \"sha256\": \"https://api.us-2.crowdstrike.com\",\n        \"thumbprint\": \"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\",\n    },\n    matches=[{\n        \"platform\": \"windows\",\n    }],\n    schedule=\"1h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureRule = new Cloudflare.Index.ZeroTrustDevicePostureRule(\"example_zero_trust_device_posture_rule\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Admin Serial Numbers\",\n        Type = \"file\",\n        Description = \"The rule for admin serial numbers\",\n        Expiration = \"1h\",\n        Input = new Cloudflare.Inputs.ZeroTrustDevicePostureRuleInputArgs\n        {\n            OperatingSystem = \"linux\",\n            Path = \"/bin/cat\",\n            Exists = true,\n            Sha256 = \"https://api.us-2.crowdstrike.com\",\n            Thumbprint = \"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\",\n        },\n        Matches = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDevicePostureRuleMatchArgs\n            {\n                Platform = \"windows\",\n            },\n        },\n        Schedule = \"1h\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDevicePostureRule(ctx, \"example_zero_trust_device_posture_rule\", \u0026cloudflare.ZeroTrustDevicePostureRuleArgs{\n\t\t\tAccountId:   pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:        pulumi.String(\"Admin Serial Numbers\"),\n\t\t\tType:        pulumi.String(\"file\"),\n\t\t\tDescription: pulumi.String(\"The rule for admin serial numbers\"),\n\t\t\tExpiration:  pulumi.String(\"1h\"),\n\t\t\tInput: \u0026cloudflare.ZeroTrustDevicePostureRuleInputTypeArgs{\n\t\t\t\tOperatingSystem: pulumi.String(\"linux\"),\n\t\t\t\tPath:            pulumi.String(\"/bin/cat\"),\n\t\t\t\tExists:          pulumi.Bool(true),\n\t\t\t\tSha256:          pulumi.String(\"https://api.us-2.crowdstrike.com\"),\n\t\t\t\tThumbprint:      pulumi.String(\"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\"),\n\t\t\t},\n\t\t\tMatches: cloudflare.ZeroTrustDevicePostureRuleMatchArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDevicePostureRuleMatchArgs{\n\t\t\t\t\tPlatform: pulumi.String(\"windows\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSchedule: pulumi.String(\"1h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureRule;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureRuleArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDevicePostureRuleInputArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDevicePostureRuleMatchArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDevicePostureRule = new ZeroTrustDevicePostureRule(\"exampleZeroTrustDevicePostureRule\", ZeroTrustDevicePostureRuleArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Admin Serial Numbers\")\n            .type(\"file\")\n            .description(\"The rule for admin serial numbers\")\n            .expiration(\"1h\")\n            .input(ZeroTrustDevicePostureRuleInputArgs.builder()\n                .operatingSystem(\"linux\")\n                .path(\"/bin/cat\")\n                .exists(true)\n                .sha256(\"https://api.us-2.crowdstrike.com\")\n                .thumbprint(\"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\")\n                .build())\n            .matches(ZeroTrustDevicePostureRuleMatchArgs.builder()\n                .platform(\"windows\")\n                .build())\n            .schedule(\"1h\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDevicePostureRule:\n    type: cloudflare:ZeroTrustDevicePostureRule\n    name: example_zero_trust_device_posture_rule\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Admin Serial Numbers\n      type: file\n      description: The rule for admin serial numbers\n      expiration: 1h\n      input:\n        operatingSystem: linux\n        path: /bin/cat\n        exists: true\n        sha256: https://api.us-2.crowdstrike.com\n        thumbprint: 0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\n      matches:\n        - platform: windows\n      schedule: 1h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/devicePostureRule:DevicePostureRule example '\u003caccount_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the device posture rule.\n"
                },
                "expiration": {
                    "type": "string",
                    "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/DevicePostureRuleInput:DevicePostureRuleInput",
                    "description": "The value to be checked against.\n"
                },
                "matches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DevicePostureRuleMatch:DevicePostureRuleMatch"
                    },
                    "description": "The conditions that the client must match to run the rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture rule.\n"
                },
                "schedule": {
                    "type": "string",
                    "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                }
            },
            "required": [
                "description",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the device posture rule.\n"
                },
                "expiration": {
                    "type": "string",
                    "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/DevicePostureRuleInput:DevicePostureRuleInput",
                    "description": "The value to be checked against.\n"
                },
                "matches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DevicePostureRuleMatch:DevicePostureRuleMatch"
                    },
                    "description": "The conditions that the client must match to run the rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture rule.\n"
                },
                "schedule": {
                    "type": "string",
                    "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                }
            },
            "requiredInputs": [
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DevicePostureRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the device posture rule.\n"
                    },
                    "expiration": {
                        "type": "string",
                        "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                    },
                    "input": {
                        "$ref": "#/types/cloudflare:index/DevicePostureRuleInput:DevicePostureRuleInput",
                        "description": "The value to be checked against.\n"
                    },
                    "matches": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/DevicePostureRuleMatch:DevicePostureRuleMatch"
                        },
                        "description": "The conditions that the client must match to run the rule.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device posture rule.\n"
                    },
                    "schedule": {
                        "type": "string",
                        "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/devicePostureRule:DevicePostureRule"
                }
            ],
            "deprecationMessage": "cloudflare.index/deviceposturerule.DevicePostureRule has been deprecated in favor of cloudflare.index/zerotrustdeviceposturerule.ZeroTrustDevicePostureRule"
        },
        "cloudflare:index/dlpCustomProfile:DlpCustomProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpCustomProfile = new cloudflare.ZeroTrustDlpCustomProfile(\"example_zero_trust_dlp_custom_profile\", {\n    name: \"name\",\n    accountId: \"account_id\",\n    description: \"Custom profile with entries\",\n    sharedEntries: [{\n        entryId: \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        entryType: \"predefined\",\n        enabled: true,\n    }],\n});\n// Custom entry that is a part of this new profile\nconst exampleCustomEntry = new cloudflare.ZeroTrustDlpCustomEntry(\"example_custom_entry\", {\n    name: \"custom\",\n    accountId: \"account_id\",\n    profileId: exampleZeroTrustDlpCustomProfile.id,\n    pattern: {\n        regex: \"customentryregex\",\n    },\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_custom_profile = cloudflare.ZeroTrustDlpCustomProfile(\"example_zero_trust_dlp_custom_profile\",\n    name=\"name\",\n    account_id=\"account_id\",\n    description=\"Custom profile with entries\",\n    shared_entries=[{\n        \"entry_id\": \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        \"entry_type\": \"predefined\",\n        \"enabled\": True,\n    }])\n# Custom entry that is a part of this new profile\nexample_custom_entry = cloudflare.ZeroTrustDlpCustomEntry(\"example_custom_entry\",\n    name=\"custom\",\n    account_id=\"account_id\",\n    profile_id=example_zero_trust_dlp_custom_profile.id,\n    pattern={\n        \"regex\": \"customentryregex\",\n    },\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpCustomProfile = new Cloudflare.Index.ZeroTrustDlpCustomProfile(\"example_zero_trust_dlp_custom_profile\", new()\n    {\n        Name = \"name\",\n        AccountId = \"account_id\",\n        Description = \"Custom profile with entries\",\n        SharedEntries = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDlpCustomProfileSharedEntryArgs\n            {\n                EntryId = \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n                EntryType = \"predefined\",\n                Enabled = true,\n            },\n        },\n    });\n\n    // Custom entry that is a part of this new profile\n    var exampleCustomEntry = new Cloudflare.Index.ZeroTrustDlpCustomEntry(\"example_custom_entry\", new()\n    {\n        Name = \"custom\",\n        AccountId = \"account_id\",\n        ProfileId = exampleZeroTrustDlpCustomProfile.Id,\n        Pattern = new Cloudflare.Inputs.ZeroTrustDlpCustomEntryPatternArgs\n        {\n            Regex = \"customentryregex\",\n        },\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleZeroTrustDlpCustomProfile, err := cloudflare.NewZeroTrustDlpCustomProfile(ctx, \"example_zero_trust_dlp_custom_profile\", \u0026cloudflare.ZeroTrustDlpCustomProfileArgs{\n\t\t\tName:        pulumi.String(\"name\"),\n\t\t\tAccountId:   pulumi.String(\"account_id\"),\n\t\t\tDescription: pulumi.String(\"Custom profile with entries\"),\n\t\t\tSharedEntries: cloudflare.ZeroTrustDlpCustomProfileSharedEntryArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDlpCustomProfileSharedEntryArgs{\n\t\t\t\t\tEntryId:   pulumi.String(\"56a8c060-01bb-4f89-ba1e-3ad42770a342\"),\n\t\t\t\t\tEntryType: pulumi.String(\"predefined\"),\n\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Custom entry that is a part of this new profile\n\t\t_, err = cloudflare.NewZeroTrustDlpCustomEntry(ctx, \"example_custom_entry\", \u0026cloudflare.ZeroTrustDlpCustomEntryArgs{\n\t\t\tName:      pulumi.String(\"custom\"),\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tProfileId: exampleZeroTrustDlpCustomProfile.ID(),\n\t\t\tPattern: \u0026cloudflare.ZeroTrustDlpCustomEntryPatternArgs{\n\t\t\t\tRegex: pulumi.String(\"customentryregex\"),\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomProfile;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomProfileArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpCustomProfileSharedEntryArgs;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomEntry;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomEntryArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpCustomEntryPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpCustomProfile = new ZeroTrustDlpCustomProfile(\"exampleZeroTrustDlpCustomProfile\", ZeroTrustDlpCustomProfileArgs.builder()\n            .name(\"name\")\n            .accountId(\"account_id\")\n            .description(\"Custom profile with entries\")\n            .sharedEntries(ZeroTrustDlpCustomProfileSharedEntryArgs.builder()\n                .entryId(\"56a8c060-01bb-4f89-ba1e-3ad42770a342\")\n                .entryType(\"predefined\")\n                .enabled(true)\n                .build())\n            .build());\n\n        // Custom entry that is a part of this new profile\n        var exampleCustomEntry = new ZeroTrustDlpCustomEntry(\"exampleCustomEntry\", ZeroTrustDlpCustomEntryArgs.builder()\n            .name(\"custom\")\n            .accountId(\"account_id\")\n            .profileId(exampleZeroTrustDlpCustomProfile.id())\n            .pattern(ZeroTrustDlpCustomEntryPatternArgs.builder()\n                .regex(\"customentryregex\")\n                .build())\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpCustomProfile:\n    type: cloudflare:ZeroTrustDlpCustomProfile\n    name: example_zero_trust_dlp_custom_profile\n    properties:\n      name: name\n      accountId: account_id\n      description: Custom profile with entries\n      sharedEntries:\n        - entryId: 56a8c060-01bb-4f89-ba1e-3ad42770a342\n          entryType: predefined\n          enabled: true\n  # Custom entry that is a part of this new profile\n  exampleCustomEntry:\n    type: cloudflare:ZeroTrustDlpCustomEntry\n    name: example_custom_entry\n    properties:\n      name: custom\n      accountId: account_id\n      profileId: ${exampleZeroTrustDlpCustomProfile.id}\n      pattern:\n        regex: customentryregex\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dlpCustomProfile:DlpCustomProfile example '\u003caccount_id\u003e/\u003cprofile_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer",
                    "description": "Related DLP policies will trigger when the match count exceeds the number set.\n"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "contextAwareness": {
                    "$ref": "#/types/cloudflare:index/DlpCustomProfileContextAwareness:DlpCustomProfileContextAwareness",
                    "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "createdAt": {
                    "type": "string",
                    "description": "When the profile was created.\n"
                },
                "dataClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data class IDs to associate with the profile.\n"
                },
                "dataTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data tag IDs to associate with the profile.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the profile.\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileEntry:DlpCustomProfileEntry"
                    },
                    "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed.\n",
                    "deprecationMessage": "This attribute will be sunset on 01/01/2026"
                },
                "name": {
                    "type": "string"
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "openAccess": {
                    "type": "boolean",
                    "description": "Whether this profile can be accessed by anyone.\n"
                },
                "sensitivityLevels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileSensitivityLevel:DlpCustomProfileSensitivityLevel"
                    },
                    "description": "Sensitivity levels to associate with the profile.\n"
                },
                "sharedEntries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileSharedEntry:DlpCustomProfileSharedEntry"
                    },
                    "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "When the profile was lasted updated.\n"
                }
            },
            "required": [
                "aiContextEnabled",
                "allowedMatchCount",
                "confidenceThreshold",
                "contextAwareness",
                "createdAt",
                "name",
                "ocrEnabled",
                "openAccess",
                "type",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer",
                    "description": "Related DLP policies will trigger when the match count exceeds the number set.\n"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "contextAwareness": {
                    "$ref": "#/types/cloudflare:index/DlpCustomProfileContextAwareness:DlpCustomProfileContextAwareness",
                    "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "dataClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data class IDs to associate with the profile.\n"
                },
                "dataTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data tag IDs to associate with the profile.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the profile.\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileEntry:DlpCustomProfileEntry"
                    },
                    "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed.\n",
                    "deprecationMessage": "This attribute will be sunset on 01/01/2026"
                },
                "name": {
                    "type": "string"
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "sensitivityLevels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileSensitivityLevel:DlpCustomProfileSensitivityLevel"
                    },
                    "description": "Sensitivity levels to associate with the profile.\n"
                },
                "sharedEntries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileSharedEntry:DlpCustomProfileSharedEntry"
                    },
                    "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DlpCustomProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextEnabled": {
                        "type": "boolean"
                    },
                    "allowedMatchCount": {
                        "type": "integer",
                        "description": "Related DLP policies will trigger when the match count exceeds the number set.\n"
                    },
                    "confidenceThreshold": {
                        "type": "string"
                    },
                    "contextAwareness": {
                        "$ref": "#/types/cloudflare:index/DlpCustomProfileContextAwareness:DlpCustomProfileContextAwareness",
                        "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "When the profile was created.\n"
                    },
                    "dataClasses": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Data class IDs to associate with the profile.\n"
                    },
                    "dataTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Data tag IDs to associate with the profile.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the profile.\n"
                    },
                    "entries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/DlpCustomProfileEntry:DlpCustomProfileEntry"
                        },
                        "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed.\n",
                        "deprecationMessage": "This attribute will be sunset on 01/01/2026"
                    },
                    "name": {
                        "type": "string"
                    },
                    "ocrEnabled": {
                        "type": "boolean"
                    },
                    "openAccess": {
                        "type": "boolean",
                        "description": "Whether this profile can be accessed by anyone.\n"
                    },
                    "sensitivityLevels": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/DlpCustomProfileSensitivityLevel:DlpCustomProfileSensitivityLevel"
                        },
                        "description": "Sensitivity levels to associate with the profile.\n"
                    },
                    "sharedEntries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/DlpCustomProfileSharedEntry:DlpCustomProfileSharedEntry"
                        },
                        "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "When the profile was lasted updated.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/dlpCustomProfile:DlpCustomProfile"
                }
            ],
            "deprecationMessage": "cloudflare.index/dlpcustomprofile.DlpCustomProfile has been deprecated in favor of cloudflare.index/zerotrustdlpcustomprofile.ZeroTrustDlpCustomProfile"
        },
        "cloudflare:index/dlpPredefinedProfile:DlpPredefinedProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpPredefinedProfile = new cloudflare.ZeroTrustDlpPredefinedProfile(\"example_zero_trust_dlp_predefined_profile\", {\n    profileId: \"e91a2360-da51-4fdf-9711-bcdecd462614\",\n    accountId: \"account_id\",\n    ocrEnabled: true,\n    enabledEntries: [\n        \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n        \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n        \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n        \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n        \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n        \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n        \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n        \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n        \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n        \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n        \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n        \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_predefined_profile = cloudflare.ZeroTrustDlpPredefinedProfile(\"example_zero_trust_dlp_predefined_profile\",\n    profile_id=\"e91a2360-da51-4fdf-9711-bcdecd462614\",\n    account_id=\"account_id\",\n    ocr_enabled=True,\n    enabled_entries=[\n        \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n        \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n        \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n        \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n        \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n        \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n        \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n        \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n        \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n        \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n        \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n        \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpPredefinedProfile = new Cloudflare.Index.ZeroTrustDlpPredefinedProfile(\"example_zero_trust_dlp_predefined_profile\", new()\n    {\n        ProfileId = \"e91a2360-da51-4fdf-9711-bcdecd462614\",\n        AccountId = \"account_id\",\n        OcrEnabled = true,\n        EnabledEntries = new[]\n        {\n            \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n            \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n            \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n            \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n            \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n            \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n            \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n            \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n            \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n            \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n            \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n            \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n            \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpPredefinedProfile(ctx, \"example_zero_trust_dlp_predefined_profile\", \u0026cloudflare.ZeroTrustDlpPredefinedProfileArgs{\n\t\t\tProfileId:  pulumi.String(\"e91a2360-da51-4fdf-9711-bcdecd462614\"),\n\t\t\tAccountId:  pulumi.String(\"account_id\"),\n\t\t\tOcrEnabled: pulumi.Bool(true),\n\t\t\tEnabledEntries: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"56a8c060-01bb-4f89-ba1e-3ad42770a342\"),\n\t\t\t\tpulumi.String(\"7f575e6d-039a-465e-85cf-175bda88d4f2\"),\n\t\t\t\tpulumi.String(\"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\"),\n\t\t\t\tpulumi.String(\"2d9c356d-b5a3-482a-b01e-0363e0de7458\"),\n\t\t\t\tpulumi.String(\"2f3657af-c39b-4899-9a98-22f7d187dd28\"),\n\t\t\t\tpulumi.String(\"753a16f9-f533-4208-a5b8-6319b201e9fb\"),\n\t\t\t\tpulumi.String(\"ebcea2c4-335a-457c-853b-f7ae7cc74e07\"),\n\t\t\t\tpulumi.String(\"3f5c4c83-f34c-4d17-81c7-3028385737b3\"),\n\t\t\t\tpulumi.String(\"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\"),\n\t\t\t\tpulumi.String(\"6dbe5604-d3a3-4c3e-905c-57985704bea7\"),\n\t\t\t\tpulumi.String(\"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\"),\n\t\t\t\tpulumi.String(\"5b1d5035-8c53-4bc9-a151-404eb32b34b4\"),\n\t\t\t\tpulumi.String(\"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpPredefinedProfile;\nimport com.pulumi.cloudflare.ZeroTrustDlpPredefinedProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpPredefinedProfile = new ZeroTrustDlpPredefinedProfile(\"exampleZeroTrustDlpPredefinedProfile\", ZeroTrustDlpPredefinedProfileArgs.builder()\n            .profileId(\"e91a2360-da51-4fdf-9711-bcdecd462614\")\n            .accountId(\"account_id\")\n            .ocrEnabled(true)\n            .enabledEntries(            \n                \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n                \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n                \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n                \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n                \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n                \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n                \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n                \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n                \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n                \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n                \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n                \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n                \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpPredefinedProfile:\n    type: cloudflare:ZeroTrustDlpPredefinedProfile\n    name: example_zero_trust_dlp_predefined_profile\n    properties:\n      profileId: e91a2360-da51-4fdf-9711-bcdecd462614\n      accountId: account_id\n      ocrEnabled: true # Entries in this predefined profile we want to enable. Any entries not included will be disabled\n      enabledEntries:\n        - 56a8c060-01bb-4f89-ba1e-3ad42770a342\n        - 7f575e6d-039a-465e-85cf-175bda88d4f2\n        - 03ebabfd-ce7e-45ed-8061-65e28f0a6e53\n        - 2d9c356d-b5a3-482a-b01e-0363e0de7458\n        - 2f3657af-c39b-4899-9a98-22f7d187dd28\n        - 753a16f9-f533-4208-a5b8-6319b201e9fb\n        - ebcea2c4-335a-457c-853b-f7ae7cc74e07\n        - 3f5c4c83-f34c-4d17-81c7-3028385737b3\n        - d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\n        - 6dbe5604-d3a3-4c3e-905c-57985704bea7\n        - 55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\n        - 5b1d5035-8c53-4bc9-a151-404eb32b34b4\n        - acf28d88-2daf-4bc4-aa36-5ac1fac0540a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dlpPredefinedProfile:DlpPredefinedProfile example '\u003caccount_id\u003e/\u003cprofile_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "enabledEntries": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpPredefinedProfileEntry:DlpPredefinedProfileEntry"
                    },
                    "deprecationMessage": "This attribute is deprecated. Use\u003cspan pulumi-lang-nodejs=\" enabledEntries \" pulumi-lang-dotnet=\" EnabledEntries \" pulumi-lang-go=\" enabledEntries \" pulumi-lang-python=\" enabled_entries \" pulumi-lang-yaml=\" enabledEntries \" pulumi-lang-java=\" enabledEntries \"\u003e enabledEntries \u003c/span\u003einstead."
                },
                "name": {
                    "type": "string",
                    "description": "The name of the predefined profile.\n"
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "openAccess": {
                    "type": "boolean",
                    "description": "Whether this profile can be accessed by anyone.\n"
                },
                "profileId": {
                    "type": "string"
                }
            },
            "required": [
                "aiContextEnabled",
                "allowedMatchCount",
                "confidenceThreshold",
                "entries",
                "name",
                "ocrEnabled",
                "openAccess",
                "profileId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "enabledEntries": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/DlpPredefinedProfileEntry:DlpPredefinedProfileEntry"
                    },
                    "deprecationMessage": "This attribute is deprecated. Use\u003cspan pulumi-lang-nodejs=\" enabledEntries \" pulumi-lang-dotnet=\" EnabledEntries \" pulumi-lang-go=\" enabledEntries \" pulumi-lang-python=\" enabled_entries \" pulumi-lang-yaml=\" enabledEntries \" pulumi-lang-java=\" enabledEntries \"\u003e enabledEntries \u003c/span\u003einstead."
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "profileId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "profileId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DlpPredefinedProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextEnabled": {
                        "type": "boolean"
                    },
                    "allowedMatchCount": {
                        "type": "integer"
                    },
                    "confidenceThreshold": {
                        "type": "string"
                    },
                    "enabledEntries": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "entries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/DlpPredefinedProfileEntry:DlpPredefinedProfileEntry"
                        },
                        "deprecationMessage": "This attribute is deprecated. Use\u003cspan pulumi-lang-nodejs=\" enabledEntries \" pulumi-lang-dotnet=\" EnabledEntries \" pulumi-lang-go=\" enabledEntries \" pulumi-lang-python=\" enabled_entries \" pulumi-lang-yaml=\" enabledEntries \" pulumi-lang-java=\" enabledEntries \"\u003e enabledEntries \u003c/span\u003einstead."
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the predefined profile.\n"
                    },
                    "ocrEnabled": {
                        "type": "boolean"
                    },
                    "openAccess": {
                        "type": "boolean",
                        "description": "Whether this profile can be accessed by anyone.\n"
                    },
                    "profileId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/dlpPredefinedProfile:DlpPredefinedProfile"
                }
            ],
            "deprecationMessage": "cloudflare.index/dlppredefinedprofile.DlpPredefinedProfile has been deprecated in favor of cloudflare.index/zerotrustdlppredefinedprofile.ZeroTrustDlpPredefinedProfile"
        },
        "cloudflare:index/dnsFirewall:DnsFirewall": {
            "description": "Accepted Permissions\n\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsFirewall = new cloudflare.DnsFirewall(\"example_dns_firewall\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"My Awesome DNS Firewall cluster\",\n    upstreamIps: [\n        \"192.0.2.1\",\n        \"198.51.100.1\",\n        \"2001:DB8:100::CF\",\n    ],\n    attackMitigation: {\n        enabled: true,\n        onlyWhenUpstreamUnhealthy: false,\n    },\n    deprecateAnyRequests: true,\n    ecsFallback: false,\n    maximumCacheTtl: 900,\n    minimumCacheTtl: 60,\n    negativeCacheTtl: 900,\n    ratelimit: 600,\n    retries: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_firewall = cloudflare.DnsFirewall(\"example_dns_firewall\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"My Awesome DNS Firewall cluster\",\n    upstream_ips=[\n        \"192.0.2.1\",\n        \"198.51.100.1\",\n        \"2001:DB8:100::CF\",\n    ],\n    attack_mitigation={\n        \"enabled\": True,\n        \"only_when_upstream_unhealthy\": False,\n    },\n    deprecate_any_requests=True,\n    ecs_fallback=False,\n    maximum_cache_ttl=900,\n    minimum_cache_ttl=60,\n    negative_cache_ttl=900,\n    ratelimit=600,\n    retries=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsFirewall = new Cloudflare.Index.DnsFirewall(\"example_dns_firewall\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"My Awesome DNS Firewall cluster\",\n        UpstreamIps = new[]\n        {\n            \"192.0.2.1\",\n            \"198.51.100.1\",\n            \"2001:DB8:100::CF\",\n        },\n        AttackMitigation = new Cloudflare.Inputs.DnsFirewallAttackMitigationArgs\n        {\n            Enabled = true,\n            OnlyWhenUpstreamUnhealthy = false,\n        },\n        DeprecateAnyRequests = true,\n        EcsFallback = false,\n        MaximumCacheTtl = 900,\n        MinimumCacheTtl = 60,\n        NegativeCacheTtl = 900,\n        Ratelimit = 600,\n        Retries = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsFirewall(ctx, \"example_dns_firewall\", \u0026cloudflare.DnsFirewallArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"My Awesome DNS Firewall cluster\"),\n\t\t\tUpstreamIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"192.0.2.1\"),\n\t\t\t\tpulumi.String(\"198.51.100.1\"),\n\t\t\t\tpulumi.String(\"2001:DB8:100::CF\"),\n\t\t\t},\n\t\t\tAttackMitigation: \u0026cloudflare.DnsFirewallAttackMitigationArgs{\n\t\t\t\tEnabled:                   pulumi.Bool(true),\n\t\t\t\tOnlyWhenUpstreamUnhealthy: pulumi.Bool(false),\n\t\t\t},\n\t\t\tDeprecateAnyRequests: pulumi.Bool(true),\n\t\t\tEcsFallback:          pulumi.Bool(false),\n\t\t\tMaximumCacheTtl:      pulumi.Float64(900),\n\t\t\tMinimumCacheTtl:      pulumi.Float64(60),\n\t\t\tNegativeCacheTtl:     pulumi.Float64(900),\n\t\t\tRatelimit:            pulumi.Float64(600),\n\t\t\tRetries:              pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsFirewall;\nimport com.pulumi.cloudflare.DnsFirewallArgs;\nimport com.pulumi.cloudflare.inputs.DnsFirewallAttackMitigationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsFirewall = new DnsFirewall(\"exampleDnsFirewall\", DnsFirewallArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"My Awesome DNS Firewall cluster\")\n            .upstreamIps(            \n                \"192.0.2.1\",\n                \"198.51.100.1\",\n                \"2001:DB8:100::CF\")\n            .attackMitigation(DnsFirewallAttackMitigationArgs.builder()\n                .enabled(true)\n                .onlyWhenUpstreamUnhealthy(false)\n                .build())\n            .deprecateAnyRequests(true)\n            .ecsFallback(false)\n            .maximumCacheTtl(900.0)\n            .minimumCacheTtl(60.0)\n            .negativeCacheTtl(900.0)\n            .ratelimit(600.0)\n            .retries(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsFirewall:\n    type: cloudflare:DnsFirewall\n    name: example_dns_firewall\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: My Awesome DNS Firewall cluster\n      upstreamIps:\n        - 192.0.2.1\n        - 198.51.100.1\n        - 2001:DB8:100::CF\n      attackMitigation:\n        enabled: true\n        onlyWhenUpstreamUnhealthy: false\n      deprecateAnyRequests: true\n      ecsFallback: false\n      maximumCacheTtl: 900\n      minimumCacheTtl: 60\n      negativeCacheTtl: 900\n      ratelimit: 600\n      retries: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsFirewall:DnsFirewall example '\u003caccount_id\u003e/\u003cdns_firewall_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "attackMitigation": {
                    "$ref": "#/types/cloudflare:index/DnsFirewallAttackMitigation:DnsFirewallAttackMitigation",
                    "description": "Attack mitigation settings\n"
                },
                "deprecateAnyRequests": {
                    "type": "boolean",
                    "description": "Whether to refuse to answer queries for the ANY type\n"
                },
                "dnsFirewallIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ecsFallback": {
                    "type": "boolean",
                    "description": "Whether to forward client IP (resolver) subnet if no EDNS Client Subnet is sent\n"
                },
                "maximumCacheTtl": {
                    "type": "number",
                    "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets an upper bound on this duration. For caching purposes, higher TTLs\nwill be decreased to the maximum value defined by this setting.\n"
                },
                "minimumCacheTtl": {
                    "type": "number",
                    "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets a lower bound on this duration. For caching purposes, lower TTLs\nwill be increased to the minimum value defined by this setting.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n\nNote that, even with this setting, there is no guarantee that a\nresponse will be cached for at least the specified duration. Cached\nresponses may be removed earlier for capacity or other operational\nreasons."
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last modification of DNS Firewall cluster"
                },
                "name": {
                    "type": "string",
                    "description": "DNS Firewall cluster name\n"
                },
                "negativeCacheTtl": {
                    "type": "number",
                    "description": "This setting controls how long DNS Firewall should cache negative\nresponses (e.g., NXDOMAIN) from the upstream servers.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers."
                },
                "ratelimit": {
                    "type": "number",
                    "description": "Ratelimit in queries per second per datacenter (applies to DNS queries sent to the upstream nameservers configured on the cluster)"
                },
                "retries": {
                    "type": "number",
                    "description": "Number of retries for fetching DNS responses from upstream nameservers (not counting the initial attempt)"
                },
                "upstreamIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "required": [
                "attackMitigation",
                "dnsFirewallIps",
                "maximumCacheTtl",
                "minimumCacheTtl",
                "modifiedOn",
                "name",
                "retries",
                "upstreamIps"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "attackMitigation": {
                    "$ref": "#/types/cloudflare:index/DnsFirewallAttackMitigation:DnsFirewallAttackMitigation",
                    "description": "Attack mitigation settings\n"
                },
                "deprecateAnyRequests": {
                    "type": "boolean",
                    "description": "Whether to refuse to answer queries for the ANY type\n"
                },
                "ecsFallback": {
                    "type": "boolean",
                    "description": "Whether to forward client IP (resolver) subnet if no EDNS Client Subnet is sent\n"
                },
                "maximumCacheTtl": {
                    "type": "number",
                    "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets an upper bound on this duration. For caching purposes, higher TTLs\nwill be decreased to the maximum value defined by this setting.\n"
                },
                "minimumCacheTtl": {
                    "type": "number",
                    "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets a lower bound on this duration. For caching purposes, lower TTLs\nwill be increased to the minimum value defined by this setting.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n\nNote that, even with this setting, there is no guarantee that a\nresponse will be cached for at least the specified duration. Cached\nresponses may be removed earlier for capacity or other operational\nreasons."
                },
                "name": {
                    "type": "string",
                    "description": "DNS Firewall cluster name\n"
                },
                "negativeCacheTtl": {
                    "type": "number",
                    "description": "This setting controls how long DNS Firewall should cache negative\nresponses (e.g., NXDOMAIN) from the upstream servers.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers."
                },
                "ratelimit": {
                    "type": "number",
                    "description": "Ratelimit in queries per second per datacenter (applies to DNS queries sent to the upstream nameservers configured on the cluster)"
                },
                "retries": {
                    "type": "number",
                    "description": "Number of retries for fetching DNS responses from upstream nameservers (not counting the initial attempt)"
                },
                "upstreamIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "requiredInputs": [
                "name",
                "upstreamIps"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsFirewall resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "attackMitigation": {
                        "$ref": "#/types/cloudflare:index/DnsFirewallAttackMitigation:DnsFirewallAttackMitigation",
                        "description": "Attack mitigation settings\n"
                    },
                    "deprecateAnyRequests": {
                        "type": "boolean",
                        "description": "Whether to refuse to answer queries for the ANY type\n"
                    },
                    "dnsFirewallIps": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ecsFallback": {
                        "type": "boolean",
                        "description": "Whether to forward client IP (resolver) subnet if no EDNS Client Subnet is sent\n"
                    },
                    "maximumCacheTtl": {
                        "type": "number",
                        "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets an upper bound on this duration. For caching purposes, higher TTLs\nwill be decreased to the maximum value defined by this setting.\n"
                    },
                    "minimumCacheTtl": {
                        "type": "number",
                        "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets a lower bound on this duration. For caching purposes, lower TTLs\nwill be increased to the minimum value defined by this setting.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n\nNote that, even with this setting, there is no guarantee that a\nresponse will be cached for at least the specified duration. Cached\nresponses may be removed earlier for capacity or other operational\nreasons."
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last modification of DNS Firewall cluster"
                    },
                    "name": {
                        "type": "string",
                        "description": "DNS Firewall cluster name\n"
                    },
                    "negativeCacheTtl": {
                        "type": "number",
                        "description": "This setting controls how long DNS Firewall should cache negative\nresponses (e.g., NXDOMAIN) from the upstream servers.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers."
                    },
                    "ratelimit": {
                        "type": "number",
                        "description": "Ratelimit in queries per second per datacenter (applies to DNS queries sent to the upstream nameservers configured on the cluster)"
                    },
                    "retries": {
                        "type": "number",
                        "description": "Number of retries for fetching DNS responses from upstream nameservers (not counting the initial attempt)"
                    },
                    "upstreamIps": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/dnsRecord:DnsRecord": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsRecord = new cloudflare.DnsRecord(\"example_dns_record\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"example.com\",\n    ttl: 3600,\n    type: \"A\",\n    comment: \"Domain verification record\",\n    content: \"198.51.100.4\",\n    privateRouting: true,\n    proxied: true,\n    settings: {\n        ipv4Only: true,\n        ipv6Only: true,\n    },\n    tags: [\"owner:dns-team\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_record = cloudflare.DnsRecord(\"example_dns_record\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"example.com\",\n    ttl=3600,\n    type=\"A\",\n    comment=\"Domain verification record\",\n    content=\"198.51.100.4\",\n    private_routing=True,\n    proxied=True,\n    settings={\n        \"ipv4_only\": True,\n        \"ipv6_only\": True,\n    },\n    tags=[\"owner:dns-team\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsRecord = new Cloudflare.Index.DnsRecord(\"example_dns_record\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"example.com\",\n        Ttl = 3600,\n        Type = \"A\",\n        Comment = \"Domain verification record\",\n        Content = \"198.51.100.4\",\n        PrivateRouting = true,\n        Proxied = true,\n        Settings = new Cloudflare.Inputs.DnsRecordSettingsArgs\n        {\n            Ipv4Only = true,\n            Ipv6Only = true,\n        },\n        Tags = new[]\n        {\n            \"owner:dns-team\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsRecord(ctx, \"example_dns_record\", \u0026cloudflare.DnsRecordArgs{\n\t\t\tZoneId:         pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:           pulumi.String(\"example.com\"),\n\t\t\tTtl:            pulumi.Float64(3600),\n\t\t\tType:           pulumi.String(\"A\"),\n\t\t\tComment:        pulumi.String(\"Domain verification record\"),\n\t\t\tContent:        pulumi.String(\"198.51.100.4\"),\n\t\t\tPrivateRouting: pulumi.Bool(true),\n\t\t\tProxied:        pulumi.Bool(true),\n\t\t\tSettings: \u0026cloudflare.DnsRecordSettingsArgs{\n\t\t\t\tIpv4Only: pulumi.Bool(true),\n\t\t\t\tIpv6Only: pulumi.Bool(true),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"owner:dns-team\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsRecord;\nimport com.pulumi.cloudflare.DnsRecordArgs;\nimport com.pulumi.cloudflare.inputs.DnsRecordSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsRecord = new DnsRecord(\"exampleDnsRecord\", DnsRecordArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"example.com\")\n            .ttl(3600.0)\n            .type(\"A\")\n            .comment(\"Domain verification record\")\n            .content(\"198.51.100.4\")\n            .privateRouting(true)\n            .proxied(true)\n            .settings(DnsRecordSettingsArgs.builder()\n                .ipv4Only(true)\n                .ipv6Only(true)\n                .build())\n            .tags(\"owner:dns-team\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsRecord:\n    type: cloudflare:DnsRecord\n    name: example_dns_record\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: example.com\n      ttl: 3600\n      type: A\n      comment: Domain verification record\n      content: 198.51.100.4\n      privateRouting: true\n      proxied: true\n      settings:\n        ipv4Only: true\n        ipv6Only: true\n      tags:\n        - owner:dns-team\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsRecord:DnsRecord example '\u003czone_id\u003e/\u003cdns_record_id\u003e'\n```\n\n",
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                },
                "commentModifiedOn": {
                    "type": "string",
                    "description": "When the record comment was last modified. Omitted if there is no comment.\n"
                },
                "content": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the record was created.\n"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/DnsRecordData:DnsRecordData",
                    "description": "Components of a CAA record.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "Extra Cloudflare-specific information about the record.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the record was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex) in Punycode.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records; unused by other record types. Records with lower priorities are preferred.\n"
                },
                "privateRouting": {
                    "type": "boolean",
                    "description": "Enables private network routing to the origin.\n"
                },
                "proxiable": {
                    "type": "boolean",
                    "description": "Whether the record can be proxied by Cloudflare or not.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/DnsRecordSettings:DnsRecordSettings",
                    "description": "Settings for the DNS record.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                },
                "tagsModifiedOn": {
                    "type": "string",
                    "description": "When the record tags were last modified. Omitted if there are no tags.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "commentModifiedOn",
                "content",
                "createdOn",
                "meta",
                "modifiedOn",
                "name",
                "proxiable",
                "proxied",
                "settings",
                "tags",
                "tagsModifiedOn",
                "ttl",
                "type"
            ],
            "inputProperties": {
                "comment": {
                    "type": "string",
                    "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                },
                "content": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/DnsRecordData:DnsRecordData",
                    "description": "Components of a CAA record.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex) in Punycode.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records; unused by other record types. Records with lower priorities are preferred.\n"
                },
                "privateRouting": {
                    "type": "boolean",
                    "description": "Enables private network routing to the origin.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/DnsRecordSettings:DnsRecordSettings",
                    "description": "Settings for the DNS record.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "name",
                "ttl",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsRecord resources.\n",
                "properties": {
                    "comment": {
                        "type": "string",
                        "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                    },
                    "commentModifiedOn": {
                        "type": "string",
                        "description": "When the record comment was last modified. Omitted if there is no comment.\n"
                    },
                    "content": {
                        "type": "string",
                        "description": "A valid IPv4 address.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the record was created.\n"
                    },
                    "data": {
                        "$ref": "#/types/cloudflare:index/DnsRecordData:DnsRecordData",
                        "description": "Components of a CAA record.\n"
                    },
                    "meta": {
                        "type": "string",
                        "description": "Extra Cloudflare-specific information about the record.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the record was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "DNS record name (or @ for the zone apex) in Punycode.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "Required for MX, SRV and URI records; unused by other record types. Records with lower priorities are preferred.\n"
                    },
                    "privateRouting": {
                        "type": "boolean",
                        "description": "Enables private network routing to the origin.\n"
                    },
                    "proxiable": {
                        "type": "boolean",
                        "description": "Whether the record can be proxied by Cloudflare or not.\n"
                    },
                    "proxied": {
                        "type": "boolean",
                        "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/DnsRecordSettings:DnsRecordSettings",
                        "description": "Settings for the DNS record.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                    },
                    "tagsModifiedOn": {
                        "type": "string",
                        "description": "When the record tags were last modified. Omitted if there are no tags.\n"
                    },
                    "ttl": {
                        "type": "number",
                        "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/record:Record"
                }
            ]
        },
        "cloudflare:index/dnsZoneTransfersAcl:DnsZoneTransfersAcl": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersAcl = new cloudflare.DnsZoneTransfersAcl(\"example_dns_zone_transfers_acl\", {\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    ipRange: \"192.0.2.53/28\",\n    name: \"my-acl-1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_acl = cloudflare.DnsZoneTransfersAcl(\"example_dns_zone_transfers_acl\",\n    account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    ip_range=\"192.0.2.53/28\",\n    name=\"my-acl-1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersAcl = new Cloudflare.Index.DnsZoneTransfersAcl(\"example_dns_zone_transfers_acl\", new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        IpRange = \"192.0.2.53/28\",\n        Name = \"my-acl-1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsZoneTransfersAcl(ctx, \"example_dns_zone_transfers_acl\", \u0026cloudflare.DnsZoneTransfersAclArgs{\n\t\t\tAccountId: pulumi.String(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tIpRange:   pulumi.String(\"192.0.2.53/28\"),\n\t\t\tName:      pulumi.String(\"my-acl-1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsZoneTransfersAcl;\nimport com.pulumi.cloudflare.DnsZoneTransfersAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsZoneTransfersAcl = new DnsZoneTransfersAcl(\"exampleDnsZoneTransfersAcl\", DnsZoneTransfersAclArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .ipRange(\"192.0.2.53/28\")\n            .name(\"my-acl-1\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsZoneTransfersAcl:\n    type: cloudflare:DnsZoneTransfersAcl\n    name: example_dns_zone_transfers_acl\n    properties:\n      accountId: 01a7362d577a6c3019a474fd6f485823\n      ipRange: 192.0.2.53/28\n      name: my-acl-1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsZoneTransfersAcl:DnsZoneTransfersAcl example '\u003caccount_id\u003e/\u003cacl_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "ipRange": {
                    "type": "string",
                    "description": "Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the acl.\n"
                }
            },
            "required": [
                "ipRange",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "ipRange": {
                    "type": "string",
                    "description": "Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the acl.\n"
                }
            },
            "requiredInputs": [
                "ipRange",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsZoneTransfersAcl resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "ipRange": {
                        "type": "string",
                        "description": "Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the acl.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/dnsZoneTransfersIncoming:DnsZoneTransfersIncoming": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersIncoming = new cloudflare.DnsZoneTransfersIncoming(\"example_dns_zone_transfers_incoming\", {\n    zoneId: \"269d8f4853475ca241c4e730be286b20\",\n    autoRefreshSeconds: 86400,\n    name: \"www.example.com.\",\n    peers: [\n        \"23ff594956f20c2a721606e94745a8aa\",\n        \"00920f38ce07c2e2f4df50b1f61d4194\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_incoming = cloudflare.DnsZoneTransfersIncoming(\"example_dns_zone_transfers_incoming\",\n    zone_id=\"269d8f4853475ca241c4e730be286b20\",\n    auto_refresh_seconds=86400,\n    name=\"www.example.com.\",\n    peers=[\n        \"23ff594956f20c2a721606e94745a8aa\",\n        \"00920f38ce07c2e2f4df50b1f61d4194\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersIncoming = new Cloudflare.Index.DnsZoneTransfersIncoming(\"example_dns_zone_transfers_incoming\", new()\n    {\n        ZoneId = \"269d8f4853475ca241c4e730be286b20\",\n        AutoRefreshSeconds = 86400,\n        Name = \"www.example.com.\",\n        Peers = new[]\n        {\n            \"23ff594956f20c2a721606e94745a8aa\",\n            \"00920f38ce07c2e2f4df50b1f61d4194\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsZoneTransfersIncoming(ctx, \"example_dns_zone_transfers_incoming\", \u0026cloudflare.DnsZoneTransfersIncomingArgs{\n\t\t\tZoneId:             pulumi.String(\"269d8f4853475ca241c4e730be286b20\"),\n\t\t\tAutoRefreshSeconds: pulumi.Float64(86400),\n\t\t\tName:               pulumi.String(\"www.example.com.\"),\n\t\t\tPeers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"23ff594956f20c2a721606e94745a8aa\"),\n\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsZoneTransfersIncoming;\nimport com.pulumi.cloudflare.DnsZoneTransfersIncomingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsZoneTransfersIncoming = new DnsZoneTransfersIncoming(\"exampleDnsZoneTransfersIncoming\", DnsZoneTransfersIncomingArgs.builder()\n            .zoneId(\"269d8f4853475ca241c4e730be286b20\")\n            .autoRefreshSeconds(86400.0)\n            .name(\"www.example.com.\")\n            .peers(            \n                \"23ff594956f20c2a721606e94745a8aa\",\n                \"00920f38ce07c2e2f4df50b1f61d4194\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsZoneTransfersIncoming:\n    type: cloudflare:DnsZoneTransfersIncoming\n    name: example_dns_zone_transfers_incoming\n    properties:\n      zoneId: 269d8f4853475ca241c4e730be286b20\n      autoRefreshSeconds: 86400\n      name: www.example.com.\n      peers:\n        - 23ff594956f20c2a721606e94745a8aa\n        - 00920f38ce07c2e2f4df50b1f61d4194\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsZoneTransfersIncoming:DnsZoneTransfersIncoming example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "autoRefreshSeconds": {
                    "type": "number",
                    "description": "How often should a secondary zone auto refresh regardless of DNS NOTIFY.\nNot applicable for primary zones.\n"
                },
                "checkedTime": {
                    "type": "string",
                    "description": "The time for a specific event.\n"
                },
                "createdTime": {
                    "type": "string",
                    "description": "The time for a specific event.\n"
                },
                "modifiedTime": {
                    "type": "string",
                    "description": "The time for a specific event.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Zone name.\n"
                },
                "peers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of peer tags.\n"
                },
                "soaSerial": {
                    "type": "number",
                    "description": "The serial number of the SOA for the given zone.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "required": [
                "autoRefreshSeconds",
                "checkedTime",
                "createdTime",
                "modifiedTime",
                "name",
                "peers",
                "soaSerial"
            ],
            "inputProperties": {
                "autoRefreshSeconds": {
                    "type": "number",
                    "description": "How often should a secondary zone auto refresh regardless of DNS NOTIFY.\nNot applicable for primary zones.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Zone name.\n"
                },
                "peers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of peer tags.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "name",
                "peers"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsZoneTransfersIncoming resources.\n",
                "properties": {
                    "autoRefreshSeconds": {
                        "type": "number",
                        "description": "How often should a secondary zone auto refresh regardless of DNS NOTIFY.\nNot applicable for primary zones.\n"
                    },
                    "checkedTime": {
                        "type": "string",
                        "description": "The time for a specific event.\n"
                    },
                    "createdTime": {
                        "type": "string",
                        "description": "The time for a specific event.\n"
                    },
                    "modifiedTime": {
                        "type": "string",
                        "description": "The time for a specific event.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Zone name.\n"
                    },
                    "peers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of peer tags.\n"
                    },
                    "soaSerial": {
                        "type": "number",
                        "description": "The serial number of the SOA for the given zone.\n"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/dnsZoneTransfersOutgoing:DnsZoneTransfersOutgoing": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersOutgoing = new cloudflare.DnsZoneTransfersOutgoing(\"example_dns_zone_transfers_outgoing\", {\n    zoneId: \"269d8f4853475ca241c4e730be286b20\",\n    name: \"www.example.com.\",\n    peers: [\n        \"23ff594956f20c2a721606e94745a8aa\",\n        \"00920f38ce07c2e2f4df50b1f61d4194\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_outgoing = cloudflare.DnsZoneTransfersOutgoing(\"example_dns_zone_transfers_outgoing\",\n    zone_id=\"269d8f4853475ca241c4e730be286b20\",\n    name=\"www.example.com.\",\n    peers=[\n        \"23ff594956f20c2a721606e94745a8aa\",\n        \"00920f38ce07c2e2f4df50b1f61d4194\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersOutgoing = new Cloudflare.Index.DnsZoneTransfersOutgoing(\"example_dns_zone_transfers_outgoing\", new()\n    {\n        ZoneId = \"269d8f4853475ca241c4e730be286b20\",\n        Name = \"www.example.com.\",\n        Peers = new[]\n        {\n            \"23ff594956f20c2a721606e94745a8aa\",\n            \"00920f38ce07c2e2f4df50b1f61d4194\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsZoneTransfersOutgoing(ctx, \"example_dns_zone_transfers_outgoing\", \u0026cloudflare.DnsZoneTransfersOutgoingArgs{\n\t\t\tZoneId: pulumi.String(\"269d8f4853475ca241c4e730be286b20\"),\n\t\t\tName:   pulumi.String(\"www.example.com.\"),\n\t\t\tPeers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"23ff594956f20c2a721606e94745a8aa\"),\n\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsZoneTransfersOutgoing;\nimport com.pulumi.cloudflare.DnsZoneTransfersOutgoingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsZoneTransfersOutgoing = new DnsZoneTransfersOutgoing(\"exampleDnsZoneTransfersOutgoing\", DnsZoneTransfersOutgoingArgs.builder()\n            .zoneId(\"269d8f4853475ca241c4e730be286b20\")\n            .name(\"www.example.com.\")\n            .peers(            \n                \"23ff594956f20c2a721606e94745a8aa\",\n                \"00920f38ce07c2e2f4df50b1f61d4194\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsZoneTransfersOutgoing:\n    type: cloudflare:DnsZoneTransfersOutgoing\n    name: example_dns_zone_transfers_outgoing\n    properties:\n      zoneId: 269d8f4853475ca241c4e730be286b20\n      name: www.example.com.\n      peers:\n        - 23ff594956f20c2a721606e94745a8aa\n        - 00920f38ce07c2e2f4df50b1f61d4194\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsZoneTransfersOutgoing:DnsZoneTransfersOutgoing example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "checkedTime": {
                    "type": "string",
                    "description": "The time for a specific event.\n"
                },
                "createdTime": {
                    "type": "string",
                    "description": "The time for a specific event.\n"
                },
                "lastTransferredTime": {
                    "type": "string",
                    "description": "The time for a specific event.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Zone name.\n"
                },
                "peers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of peer tags.\n"
                },
                "soaSerial": {
                    "type": "number",
                    "description": "The serial number of the SOA for the given zone.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "required": [
                "checkedTime",
                "createdTime",
                "lastTransferredTime",
                "name",
                "peers",
                "soaSerial"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Zone name.\n"
                },
                "peers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of peer tags.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "name",
                "peers"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsZoneTransfersOutgoing resources.\n",
                "properties": {
                    "checkedTime": {
                        "type": "string",
                        "description": "The time for a specific event.\n"
                    },
                    "createdTime": {
                        "type": "string",
                        "description": "The time for a specific event.\n"
                    },
                    "lastTransferredTime": {
                        "type": "string",
                        "description": "The time for a specific event.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Zone name.\n"
                    },
                    "peers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of peer tags.\n"
                    },
                    "soaSerial": {
                        "type": "number",
                        "description": "The serial number of the SOA for the given zone.\n"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/dnsZoneTransfersPeer:DnsZoneTransfersPeer": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersPeer = new cloudflare.DnsZoneTransfersPeer(\"example_dns_zone_transfers_peer\", {\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    name: \"my-peer-1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_peer = cloudflare.DnsZoneTransfersPeer(\"example_dns_zone_transfers_peer\",\n    account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    name=\"my-peer-1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersPeer = new Cloudflare.Index.DnsZoneTransfersPeer(\"example_dns_zone_transfers_peer\", new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        Name = \"my-peer-1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsZoneTransfersPeer(ctx, \"example_dns_zone_transfers_peer\", \u0026cloudflare.DnsZoneTransfersPeerArgs{\n\t\t\tAccountId: pulumi.String(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tName:      pulumi.String(\"my-peer-1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsZoneTransfersPeer;\nimport com.pulumi.cloudflare.DnsZoneTransfersPeerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsZoneTransfersPeer = new DnsZoneTransfersPeer(\"exampleDnsZoneTransfersPeer\", DnsZoneTransfersPeerArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .name(\"my-peer-1\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsZoneTransfersPeer:\n    type: cloudflare:DnsZoneTransfersPeer\n    name: example_dns_zone_transfers_peer\n    properties:\n      accountId: 01a7362d577a6c3019a474fd6f485823\n      name: my-peer-1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsZoneTransfersPeer:DnsZoneTransfersPeer example '\u003caccount_id\u003e/\u003cpeer_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "ip": {
                    "type": "string",
                    "description": "IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to.\n"
                },
                "ixfrEnable": {
                    "type": "boolean",
                    "description": "Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the peer.\n"
                },
                "port": {
                    "type": "number",
                    "description": "DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.\n"
                },
                "tsigId": {
                    "type": "string",
                    "description": "TSIG authentication will be used for zone transfer if configured.\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "ip": {
                    "type": "string",
                    "description": "IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to.\n"
                },
                "ixfrEnable": {
                    "type": "boolean",
                    "description": "Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the peer.\n"
                },
                "port": {
                    "type": "number",
                    "description": "DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.\n"
                },
                "tsigId": {
                    "type": "string",
                    "description": "TSIG authentication will be used for zone transfer if configured.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsZoneTransfersPeer resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "ip": {
                        "type": "string",
                        "description": "IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to.\n"
                    },
                    "ixfrEnable": {
                        "type": "boolean",
                        "description": "Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the peer.\n"
                    },
                    "port": {
                        "type": "number",
                        "description": "DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.\n"
                    },
                    "tsigId": {
                        "type": "string",
                        "description": "TSIG authentication will be used for zone transfer if configured.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/dnsZoneTransfersTsig:DnsZoneTransfersTsig": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersTsig = new cloudflare.DnsZoneTransfersTsig(\"example_dns_zone_transfers_tsig\", {\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    algo: \"hmac-sha512.\",\n    name: \"tsig.customer.cf.\",\n    secret: \"caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_tsig = cloudflare.DnsZoneTransfersTsig(\"example_dns_zone_transfers_tsig\",\n    account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    algo=\"hmac-sha512.\",\n    name=\"tsig.customer.cf.\",\n    secret=\"caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersTsig = new Cloudflare.Index.DnsZoneTransfersTsig(\"example_dns_zone_transfers_tsig\", new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        Algo = \"hmac-sha512.\",\n        Name = \"tsig.customer.cf.\",\n        Secret = \"caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsZoneTransfersTsig(ctx, \"example_dns_zone_transfers_tsig\", \u0026cloudflare.DnsZoneTransfersTsigArgs{\n\t\t\tAccountId: pulumi.String(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tAlgo:      pulumi.String(\"hmac-sha512.\"),\n\t\t\tName:      pulumi.String(\"tsig.customer.cf.\"),\n\t\t\tSecret:    pulumi.String(\"caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsZoneTransfersTsig;\nimport com.pulumi.cloudflare.DnsZoneTransfersTsigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsZoneTransfersTsig = new DnsZoneTransfersTsig(\"exampleDnsZoneTransfersTsig\", DnsZoneTransfersTsigArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .algo(\"hmac-sha512.\")\n            .name(\"tsig.customer.cf.\")\n            .secret(\"caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsZoneTransfersTsig:\n    type: cloudflare:DnsZoneTransfersTsig\n    name: example_dns_zone_transfers_tsig\n    properties:\n      accountId: 01a7362d577a6c3019a474fd6f485823\n      algo: hmac-sha512.\n      name: tsig.customer.cf.\n      secret: caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/dnsZoneTransfersTsig:DnsZoneTransfersTsig example '\u003caccount_id\u003e/\u003ctsig_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "algo": {
                    "type": "string",
                    "description": "TSIG algorithm.\n"
                },
                "name": {
                    "type": "string",
                    "description": "TSIG key name.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "TSIG secret.\n",
                    "secret": true
                }
            },
            "required": [
                "algo",
                "name",
                "secret"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "algo": {
                    "type": "string",
                    "description": "TSIG algorithm.\n"
                },
                "name": {
                    "type": "string",
                    "description": "TSIG key name.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "TSIG secret.\n",
                    "secret": true
                }
            },
            "requiredInputs": [
                "algo",
                "name",
                "secret"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DnsZoneTransfersTsig resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "algo": {
                        "type": "string",
                        "description": "TSIG algorithm.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "TSIG key name.\n"
                    },
                    "secret": {
                        "type": "string",
                        "description": "TSIG secret.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailRoutingAddress:EmailRoutingAddress": {
            "description": "Accepted Permissions\n\n- `Email Routing Addresses Read`\n- `Email Routing Addresses Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingAddress = new cloudflare.EmailRoutingAddress(\"example_email_routing_address\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    email: \"user@example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_address = cloudflare.EmailRoutingAddress(\"example_email_routing_address\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    email=\"user@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingAddress = new Cloudflare.Index.EmailRoutingAddress(\"example_email_routing_address\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Email = \"user@example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailRoutingAddress(ctx, \"example_email_routing_address\", \u0026cloudflare.EmailRoutingAddressArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEmail:     pulumi.String(\"user@example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailRoutingAddress;\nimport com.pulumi.cloudflare.EmailRoutingAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailRoutingAddress = new EmailRoutingAddress(\"exampleEmailRoutingAddress\", EmailRoutingAddressArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .email(\"user@example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailRoutingAddress:\n    type: cloudflare:EmailRoutingAddress\n    name: example_email_routing_address\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      email: user@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailRoutingAddress:EmailRoutingAddress example '\u003caccount_id\u003e/\u003cdestination_address_identifier\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time the destination address has been created.\n"
                },
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the destination address was last modified.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Destination address tag. (Deprecated, replaced by destination address identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "verified": {
                    "type": "string",
                    "description": "The date and time the destination address has been verified. Null means not verified yet.\n"
                }
            },
            "required": [
                "created",
                "email",
                "modified",
                "tag",
                "verified"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "email": {
                    "type": "string",
                    "description": "The contact email address of the user.\n"
                }
            },
            "requiredInputs": [
                "email"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailRoutingAddress resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and time the destination address has been created.\n"
                    },
                    "email": {
                        "type": "string",
                        "description": "The contact email address of the user.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the destination address was last modified.\n"
                    },
                    "tag": {
                        "type": "string",
                        "description": "Destination address tag. (Deprecated, replaced by destination address identifier)\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "verified": {
                        "type": "string",
                        "description": "The date and time the destination address has been verified. Null means not verified yet.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailRoutingCatchAll:EmailRoutingCatchAll": {
            "description": "Accepted Permissions\n\n- `Email Routing Rules Read`\n- `Email Routing Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingCatchAll = new cloudflare.EmailRoutingCatchAll(\"example_email_routing_catch_all\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    actions: [{\n        type: \"forward\",\n        value: [\"destinationaddress@example.net\"],\n    }],\n    matchers: [{\n        type: \"all\",\n    }],\n    enabled: true,\n    name: \"Send to user@example.net rule.\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_catch_all = cloudflare.EmailRoutingCatchAll(\"example_email_routing_catch_all\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    actions=[{\n        \"type\": \"forward\",\n        \"value\": [\"destinationaddress@example.net\"],\n    }],\n    matchers=[{\n        \"type\": \"all\",\n    }],\n    enabled=True,\n    name=\"Send to user@example.net rule.\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingCatchAll = new Cloudflare.Index.EmailRoutingCatchAll(\"example_email_routing_catch_all\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Actions = new[]\n        {\n            new Cloudflare.Inputs.EmailRoutingCatchAllActionArgs\n            {\n                Type = \"forward\",\n                Value = new[]\n                {\n                    \"destinationaddress@example.net\",\n                },\n            },\n        },\n        Matchers = new[]\n        {\n            new Cloudflare.Inputs.EmailRoutingCatchAllMatcherArgs\n            {\n                Type = \"all\",\n            },\n        },\n        Enabled = true,\n        Name = \"Send to user@example.net rule.\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailRoutingCatchAll(ctx, \"example_email_routing_catch_all\", \u0026cloudflare.EmailRoutingCatchAllArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tActions: cloudflare.EmailRoutingCatchAllActionArray{\n\t\t\t\t\u0026cloudflare.EmailRoutingCatchAllActionArgs{\n\t\t\t\t\tType: pulumi.String(\"forward\"),\n\t\t\t\t\tValue: []string{\n\t\t\t\t\t\t\"destinationaddress@example.net\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tMatchers: cloudflare.EmailRoutingCatchAllMatcherArray{\n\t\t\t\t\u0026cloudflare.EmailRoutingCatchAllMatcherArgs{\n\t\t\t\t\tType: pulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tName:    pulumi.String(\"Send to user@example.net rule.\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailRoutingCatchAll;\nimport com.pulumi.cloudflare.EmailRoutingCatchAllArgs;\nimport com.pulumi.cloudflare.inputs.EmailRoutingCatchAllActionArgs;\nimport com.pulumi.cloudflare.inputs.EmailRoutingCatchAllMatcherArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailRoutingCatchAll = new EmailRoutingCatchAll(\"exampleEmailRoutingCatchAll\", EmailRoutingCatchAllArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .actions(EmailRoutingCatchAllActionArgs.builder()\n                .type(\"forward\")\n                .value(List.of(\"destinationaddress@example.net\"))\n                .build())\n            .matchers(EmailRoutingCatchAllMatcherArgs.builder()\n                .type(\"all\")\n                .build())\n            .enabled(true)\n            .name(\"Send to user@example.net rule.\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailRoutingCatchAll:\n    type: cloudflare:EmailRoutingCatchAll\n    name: example_email_routing_catch_all\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      actions:\n        - type: forward\n          value:\n            - destinationaddress@example.net\n      matchers:\n        - type: all\n      enabled: true\n      name: Send to user@example.net rule.\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailRoutingCatchAll:EmailRoutingCatchAll example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingCatchAllAction:EmailRoutingCatchAllAction"
                    },
                    "description": "List actions for the catch-all routing rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Routing rule status.\n"
                },
                "matchers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingCatchAllMatcher:EmailRoutingCatchAllMatcher"
                    },
                    "description": "List of matchers for the catch-all routing rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Routing rule name.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "actions",
                "enabled",
                "matchers",
                "tag",
                "zoneId"
            ],
            "inputProperties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingCatchAllAction:EmailRoutingCatchAllAction"
                    },
                    "description": "List actions for the catch-all routing rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Routing rule status.\n"
                },
                "matchers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingCatchAllMatcher:EmailRoutingCatchAllMatcher"
                    },
                    "description": "List of matchers for the catch-all routing rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Routing rule name.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "actions",
                "matchers",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailRoutingCatchAll resources.\n",
                "properties": {
                    "actions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailRoutingCatchAllAction:EmailRoutingCatchAllAction"
                        },
                        "description": "List actions for the catch-all routing rule.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Routing rule status.\n"
                    },
                    "matchers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailRoutingCatchAllMatcher:EmailRoutingCatchAllMatcher"
                        },
                        "description": "List of matchers for the catch-all routing rule.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Routing rule name.\n"
                    },
                    "tag": {
                        "type": "string",
                        "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailRoutingDns:EmailRoutingDns": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingDns = new cloudflare.EmailRoutingDns(\"example_email_routing_dns\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"example.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_dns = cloudflare.EmailRoutingDns(\"example_email_routing_dns\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"example.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingDns = new Cloudflare.Index.EmailRoutingDns(\"example_email_routing_dns\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"example.net\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailRoutingDns(ctx, \"example_email_routing_dns\", \u0026cloudflare.EmailRoutingDnsArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:   pulumi.String(\"example.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailRoutingDns;\nimport com.pulumi.cloudflare.EmailRoutingDnsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailRoutingDns = new EmailRoutingDns(\"exampleEmailRoutingDns\", EmailRoutingDnsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"example.net\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailRoutingDns:\n    type: cloudflare:EmailRoutingDns\n    name: example_email_routing_dns\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: example.net\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailRoutingDns:EmailRoutingDns example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and time the settings have been created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "State of the zone settings for Email Routing.\n"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingDnsError:EmailRoutingDnsError"
                    }
                },
                "messages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingDnsMessage:EmailRoutingDnsMessage"
                    }
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the settings have been modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Domain of your zone.\n"
                },
                "result": {
                    "$ref": "#/types/cloudflare:index/EmailRoutingDnsResult:EmailRoutingDnsResult"
                },
                "resultInfo": {
                    "$ref": "#/types/cloudflare:index/EmailRoutingDnsResultInfo:EmailRoutingDnsResultInfo"
                },
                "skipWizard": {
                    "type": "boolean",
                    "description": "Flag to check if the user skipped the configuration wizard.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Show the state of your account, and the type or configuration error.\nAvailable values: \"ready\", \"unconfigured\", \"misconfigured\", \"misconfigured/locked\", \"unlocked\".\n"
                },
                "success": {
                    "type": "boolean",
                    "description": "Whether the API call was successful.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Email Routing settings tag. (Deprecated, replaced by Email Routing settings identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "created",
                "enabled",
                "errors",
                "messages",
                "modified",
                "result",
                "resultInfo",
                "skipWizard",
                "status",
                "success",
                "tag",
                "zoneId"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Domain of your zone.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailRoutingDns resources.\n",
                "properties": {
                    "created": {
                        "type": "string",
                        "description": "The date and time the settings have been created.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "State of the zone settings for Email Routing.\n"
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailRoutingDnsError:EmailRoutingDnsError"
                        }
                    },
                    "messages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailRoutingDnsMessage:EmailRoutingDnsMessage"
                        }
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the settings have been modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Domain of your zone.\n"
                    },
                    "result": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingDnsResult:EmailRoutingDnsResult"
                    },
                    "resultInfo": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingDnsResultInfo:EmailRoutingDnsResultInfo"
                    },
                    "skipWizard": {
                        "type": "boolean",
                        "description": "Flag to check if the user skipped the configuration wizard.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Show the state of your account, and the type or configuration error.\nAvailable values: \"ready\", \"unconfigured\", \"misconfigured\", \"misconfigured/locked\", \"unlocked\".\n"
                    },
                    "success": {
                        "type": "boolean",
                        "description": "Whether the API call was successful.\n"
                    },
                    "tag": {
                        "type": "string",
                        "description": "Email Routing settings tag. (Deprecated, replaced by Email Routing settings identifier)\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailRoutingRule:EmailRoutingRule": {
            "description": "Accepted Permissions\n\n- `Email Routing Rules Read`\n- `Email Routing Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingRule = new cloudflare.EmailRoutingRule(\"example_email_routing_rule\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    actions: [{\n        type: \"forward\",\n        value: [\"destinationaddress@example.net\"],\n    }],\n    matchers: [{\n        type: \"literal\",\n        field: \"to\",\n        value: \"test@example.com\",\n    }],\n    enabled: true,\n    name: \"Send to user@example.net rule.\",\n    priority: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_rule = cloudflare.EmailRoutingRule(\"example_email_routing_rule\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    actions=[{\n        \"type\": \"forward\",\n        \"value\": [\"destinationaddress@example.net\"],\n    }],\n    matchers=[{\n        \"type\": \"literal\",\n        \"field\": \"to\",\n        \"value\": \"test@example.com\",\n    }],\n    enabled=True,\n    name=\"Send to user@example.net rule.\",\n    priority=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingRule = new Cloudflare.Index.EmailRoutingRule(\"example_email_routing_rule\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Actions = new[]\n        {\n            new Cloudflare.Inputs.EmailRoutingRuleActionArgs\n            {\n                Type = \"forward\",\n                Value = new[]\n                {\n                    \"destinationaddress@example.net\",\n                },\n            },\n        },\n        Matchers = new[]\n        {\n            new Cloudflare.Inputs.EmailRoutingRuleMatcherArgs\n            {\n                Type = \"literal\",\n                Field = \"to\",\n                Value = \"test@example.com\",\n            },\n        },\n        Enabled = true,\n        Name = \"Send to user@example.net rule.\",\n        Priority = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailRoutingRule(ctx, \"example_email_routing_rule\", \u0026cloudflare.EmailRoutingRuleArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tActions: cloudflare.EmailRoutingRuleActionArray{\n\t\t\t\t\u0026cloudflare.EmailRoutingRuleActionArgs{\n\t\t\t\t\tType: pulumi.String(\"forward\"),\n\t\t\t\t\tValue: []string{\n\t\t\t\t\t\t\"destinationaddress@example.net\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tMatchers: cloudflare.EmailRoutingRuleMatcherArray{\n\t\t\t\t\u0026cloudflare.EmailRoutingRuleMatcherArgs{\n\t\t\t\t\tType:  pulumi.String(\"literal\"),\n\t\t\t\t\tField: pulumi.String(\"to\"),\n\t\t\t\t\tValue: pulumi.String(\"test@example.com\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled:  pulumi.Bool(true),\n\t\t\tName:     pulumi.String(\"Send to user@example.net rule.\"),\n\t\t\tPriority: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailRoutingRule;\nimport com.pulumi.cloudflare.EmailRoutingRuleArgs;\nimport com.pulumi.cloudflare.inputs.EmailRoutingRuleActionArgs;\nimport com.pulumi.cloudflare.inputs.EmailRoutingRuleMatcherArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailRoutingRule = new EmailRoutingRule(\"exampleEmailRoutingRule\", EmailRoutingRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .actions(EmailRoutingRuleActionArgs.builder()\n                .type(\"forward\")\n                .value(List.of(\"destinationaddress@example.net\"))\n                .build())\n            .matchers(EmailRoutingRuleMatcherArgs.builder()\n                .type(\"literal\")\n                .field(\"to\")\n                .value(\"test@example.com\")\n                .build())\n            .enabled(true)\n            .name(\"Send to user@example.net rule.\")\n            .priority(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailRoutingRule:\n    type: cloudflare:EmailRoutingRule\n    name: example_email_routing_rule\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      actions:\n        - type: forward\n          value:\n            - destinationaddress@example.net\n      matchers:\n        - type: literal\n          field: to\n          value: test@example.com\n      enabled: true\n      name: Send to user@example.net rule.\n      priority: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailRoutingRule:EmailRoutingRule example '\u003czone_id\u003e/\u003crule_identifier\u003e'\n```\n\n",
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingRuleAction:EmailRoutingRuleAction"
                    },
                    "description": "List actions patterns.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Routing rule status.\n"
                },
                "matchers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingRuleMatcher:EmailRoutingRuleMatcher"
                    },
                    "description": "Matching patterns to forward to your actions.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Routing rule name.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority of the routing rule.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "actions",
                "enabled",
                "matchers",
                "priority",
                "tag"
            ],
            "inputProperties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingRuleAction:EmailRoutingRuleAction"
                    },
                    "description": "List actions patterns.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Routing rule status.\n"
                },
                "matchers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailRoutingRuleMatcher:EmailRoutingRuleMatcher"
                    },
                    "description": "Matching patterns to forward to your actions.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Routing rule name.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Priority of the routing rule.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "actions",
                "matchers"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailRoutingRule resources.\n",
                "properties": {
                    "actions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailRoutingRuleAction:EmailRoutingRuleAction"
                        },
                        "description": "List actions patterns.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Routing rule status.\n"
                    },
                    "matchers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailRoutingRuleMatcher:EmailRoutingRuleMatcher"
                        },
                        "description": "Matching patterns to forward to your actions.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Routing rule name.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "Priority of the routing rule.\n"
                    },
                    "tag": {
                        "type": "string",
                        "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailRoutingSettings:EmailRoutingSettings": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingSettings = new cloudflare.EmailRoutingSettings(\"example_email_routing_settings\", {zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\"});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_settings = cloudflare.EmailRoutingSettings(\"example_email_routing_settings\", zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingSettings = new Cloudflare.Index.EmailRoutingSettings(\"example_email_routing_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailRoutingSettings(ctx, \"example_email_routing_settings\", \u0026cloudflare.EmailRoutingSettingsArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailRoutingSettings;\nimport com.pulumi.cloudflare.EmailRoutingSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailRoutingSettings = new EmailRoutingSettings(\"exampleEmailRoutingSettings\", EmailRoutingSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailRoutingSettings:\n    type: cloudflare:EmailRoutingSettings\n    name: example_email_routing_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailRoutingSettings:EmailRoutingSettings example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "created": {
                    "type": "string",
                    "description": "The date and time the settings have been created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "State of the zone settings for Email Routing.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the settings have been modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Domain of your zone.\n"
                },
                "skipWizard": {
                    "type": "boolean",
                    "description": "Flag to check if the user skipped the configuration wizard.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Show the state of your account, and the type or configuration error.\nAvailable values: \"ready\", \"unconfigured\", \"misconfigured\", \"misconfigured/locked\", \"unlocked\".\n"
                },
                "tag": {
                    "type": "string",
                    "description": "Email Routing settings tag. (Deprecated, replaced by Email Routing settings identifier)\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "created",
                "enabled",
                "modified",
                "name",
                "skipWizard",
                "status",
                "tag"
            ],
            "inputProperties": {
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailRoutingSettings resources.\n",
                "properties": {
                    "created": {
                        "type": "string",
                        "description": "The date and time the settings have been created.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "State of the zone settings for Email Routing.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the settings have been modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Domain of your zone.\n"
                    },
                    "skipWizard": {
                        "type": "boolean",
                        "description": "Flag to check if the user skipped the configuration wizard.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Show the state of your account, and the type or configuration error.\nAvailable values: \"ready\", \"unconfigured\", \"misconfigured\", \"misconfigured/locked\", \"unlocked\".\n"
                    },
                    "tag": {
                        "type": "string",
                        "description": "Email Routing settings tag. (Deprecated, replaced by Email Routing settings identifier)\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailSecurityBlockSender:EmailSecurityBlockSender": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityBlockSender = new cloudflare.EmailSecurityBlockSender(\"example_email_security_block_sender\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    isRegex: false,\n    pattern: \"test@example.com\",\n    patternType: \"EMAIL\",\n    comments: \"block sender with email test@example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_block_sender = cloudflare.EmailSecurityBlockSender(\"example_email_security_block_sender\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    is_regex=False,\n    pattern=\"test@example.com\",\n    pattern_type=\"EMAIL\",\n    comments=\"block sender with email test@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityBlockSender = new Cloudflare.Index.EmailSecurityBlockSender(\"example_email_security_block_sender\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        IsRegex = false,\n        Pattern = \"test@example.com\",\n        PatternType = \"EMAIL\",\n        Comments = \"block sender with email test@example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailSecurityBlockSender(ctx, \"example_email_security_block_sender\", \u0026cloudflare.EmailSecurityBlockSenderArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIsRegex:     pulumi.Bool(false),\n\t\t\tPattern:     pulumi.String(\"test@example.com\"),\n\t\t\tPatternType: pulumi.String(\"EMAIL\"),\n\t\t\tComments:    pulumi.String(\"block sender with email test@example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailSecurityBlockSender;\nimport com.pulumi.cloudflare.EmailSecurityBlockSenderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailSecurityBlockSender = new EmailSecurityBlockSender(\"exampleEmailSecurityBlockSender\", EmailSecurityBlockSenderArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .isRegex(false)\n            .pattern(\"test@example.com\")\n            .patternType(\"EMAIL\")\n            .comments(\"block sender with email test@example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailSecurityBlockSender:\n    type: cloudflare:EmailSecurityBlockSender\n    name: example_email_security_block_sender\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      isRegex: false\n      pattern: test@example.com\n      patternType: EMAIL\n      comments: block sender with email test@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailSecurityBlockSender:EmailSecurityBlockSender example '\u003caccount_id\u003e/\u003cpattern_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account Identifier\n"
                },
                "comments": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "lastModified": {
                    "type": "string"
                },
                "pattern": {
                    "type": "string"
                },
                "patternType": {
                    "type": "string",
                    "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n"
                }
            },
            "required": [
                "createdAt",
                "isRegex",
                "lastModified",
                "pattern",
                "patternType"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account Identifier\n"
                },
                "comments": {
                    "type": "string"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "pattern": {
                    "type": "string"
                },
                "patternType": {
                    "type": "string",
                    "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n"
                }
            },
            "requiredInputs": [
                "isRegex",
                "pattern",
                "patternType"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailSecurityBlockSender resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "comments": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "isRegex": {
                        "type": "boolean"
                    },
                    "lastModified": {
                        "type": "string"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "patternType": {
                        "type": "string",
                        "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailSecurityImpersonationRegistry:EmailSecurityImpersonationRegistry": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityImpersonationRegistry = new cloudflare.EmailSecurityImpersonationRegistry(\"example_email_security_impersonation_registry\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    email: \"email\",\n    isEmailRegex: true,\n    name: \"name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_impersonation_registry = cloudflare.EmailSecurityImpersonationRegistry(\"example_email_security_impersonation_registry\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    email=\"email\",\n    is_email_regex=True,\n    name=\"name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityImpersonationRegistry = new Cloudflare.Index.EmailSecurityImpersonationRegistry(\"example_email_security_impersonation_registry\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Email = \"email\",\n        IsEmailRegex = true,\n        Name = \"name\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailSecurityImpersonationRegistry(ctx, \"example_email_security_impersonation_registry\", \u0026cloudflare.EmailSecurityImpersonationRegistryArgs{\n\t\t\tAccountId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEmail:        pulumi.String(\"email\"),\n\t\t\tIsEmailRegex: pulumi.Bool(true),\n\t\t\tName:         pulumi.String(\"name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailSecurityImpersonationRegistry;\nimport com.pulumi.cloudflare.EmailSecurityImpersonationRegistryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailSecurityImpersonationRegistry = new EmailSecurityImpersonationRegistry(\"exampleEmailSecurityImpersonationRegistry\", EmailSecurityImpersonationRegistryArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .email(\"email\")\n            .isEmailRegex(true)\n            .name(\"name\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailSecurityImpersonationRegistry:\n    type: cloudflare:EmailSecurityImpersonationRegistry\n    name: example_email_security_impersonation_registry\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      email: email\n      isEmailRegex: true\n      name: name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailSecurityImpersonationRegistry:EmailSecurityImpersonationRegistry example '\u003caccount_id\u003e/\u003cdisplay_name_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account Identifier\n"
                },
                "comments": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "directoryId": {
                    "type": "integer"
                },
                "directoryNodeId": {
                    "type": "integer"
                },
                "email": {
                    "type": "string"
                },
                "externalDirectoryNodeId": {
                    "type": "string",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "isEmailRegex": {
                    "type": "boolean"
                },
                "lastModified": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "provenance": {
                    "type": "string"
                }
            },
            "required": [
                "comments",
                "createdAt",
                "directoryId",
                "directoryNodeId",
                "email",
                "externalDirectoryNodeId",
                "isEmailRegex",
                "lastModified",
                "name",
                "provenance"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account Identifier\n"
                },
                "email": {
                    "type": "string"
                },
                "isEmailRegex": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "email",
                "isEmailRegex",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailSecurityImpersonationRegistry resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "comments": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "directoryId": {
                        "type": "integer"
                    },
                    "directoryNodeId": {
                        "type": "integer"
                    },
                    "email": {
                        "type": "string"
                    },
                    "externalDirectoryNodeId": {
                        "type": "string",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "isEmailRegex": {
                        "type": "boolean"
                    },
                    "lastModified": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "provenance": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/emailSecurityTrustedDomains:EmailSecurityTrustedDomains": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityTrustedDomains = new cloudflare.EmailSecurityTrustedDomains(\"example_email_security_trusted_domains\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    isRecent: true,\n    isRegex: false,\n    isSimilarity: false,\n    pattern: \"example.com\",\n    comments: null,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_trusted_domains = cloudflare.EmailSecurityTrustedDomains(\"example_email_security_trusted_domains\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    is_recent=True,\n    is_regex=False,\n    is_similarity=False,\n    pattern=\"example.com\",\n    comments=None)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityTrustedDomains = new Cloudflare.Index.EmailSecurityTrustedDomains(\"example_email_security_trusted_domains\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        IsRecent = true,\n        IsRegex = false,\n        IsSimilarity = false,\n        Pattern = \"example.com\",\n        Comments = null,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewEmailSecurityTrustedDomains(ctx, \"example_email_security_trusted_domains\", \u0026cloudflare.EmailSecurityTrustedDomainsArgs{\n\t\t\tAccountId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIsRecent:     pulumi.Bool(true),\n\t\t\tIsRegex:      pulumi.Bool(false),\n\t\t\tIsSimilarity: pulumi.Bool(false),\n\t\t\tPattern:      pulumi.String(\"example.com\"),\n\t\t\tComments:     nil,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.EmailSecurityTrustedDomains;\nimport com.pulumi.cloudflare.EmailSecurityTrustedDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleEmailSecurityTrustedDomains = new EmailSecurityTrustedDomains(\"exampleEmailSecurityTrustedDomains\", EmailSecurityTrustedDomainsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .isRecent(true)\n            .isRegex(false)\n            .isSimilarity(false)\n            .pattern(\"example.com\")\n            .comments(null)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleEmailSecurityTrustedDomains:\n    type: cloudflare:EmailSecurityTrustedDomains\n    name: example_email_security_trusted_domains\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      isRecent: true\n      isRegex: false\n      isSimilarity: false\n      pattern: example.com\n      comments: null\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/emailSecurityTrustedDomains:EmailSecurityTrustedDomains example '\u003caccount_id\u003e/\u003ctrusted_domain_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account Identifier\n"
                },
                "bodies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailSecurityTrustedDomainsBody:EmailSecurityTrustedDomainsBody"
                    }
                },
                "comments": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "isRecent": {
                    "type": "boolean",
                    "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.\n"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "isSimilarity": {
                    "type": "boolean",
                    "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.\n"
                },
                "lastModified": {
                    "type": "string"
                },
                "pattern": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "lastModified"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account Identifier\n"
                },
                "bodies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/EmailSecurityTrustedDomainsBody:EmailSecurityTrustedDomainsBody"
                    }
                },
                "comments": {
                    "type": "string"
                },
                "isRecent": {
                    "type": "boolean",
                    "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.\n"
                },
                "isRegex": {
                    "type": "boolean"
                },
                "isSimilarity": {
                    "type": "boolean",
                    "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.\n"
                },
                "pattern": {
                    "type": "string"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering EmailSecurityTrustedDomains resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "bodies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/EmailSecurityTrustedDomainsBody:EmailSecurityTrustedDomainsBody"
                        }
                    },
                    "comments": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "isRecent": {
                        "type": "boolean",
                        "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.\n"
                    },
                    "isRegex": {
                        "type": "boolean"
                    },
                    "isSimilarity": {
                        "type": "boolean",
                        "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.\n"
                    },
                    "lastModified": {
                        "type": "string"
                    },
                    "pattern": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/filter:Filter": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n\u003e \u003cspan pulumi-lang-nodejs=\"`cloudflare.Filter`\" pulumi-lang-dotnet=\"`cloudflare.Filter`\" pulumi-lang-go=\"`Filter`\" pulumi-lang-python=\"`Filter`\" pulumi-lang-yaml=\"`cloudflare.Filter`\" pulumi-lang-java=\"`cloudflare.Filter`\"\u003e`cloudflare.Filter`\u003c/span\u003e is in a deprecation phase until June 15th, 2025.\n  During this time period, this resource is still fully\n  supported but you are strongly advised to move to the\n  \u003cspan pulumi-lang-nodejs=\"`cloudflare.Ruleset`\" pulumi-lang-dotnet=\"`cloudflare.Ruleset`\" pulumi-lang-go=\"`Ruleset`\" pulumi-lang-python=\"`Ruleset`\" pulumi-lang-yaml=\"`cloudflare.Ruleset`\" pulumi-lang-java=\"`cloudflare.Ruleset`\"\u003e`cloudflare.Ruleset`\u003c/span\u003e resource. Full details can be found in the\n  developer documentation.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleFilter = new cloudflare.Filter(\"example_filter\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bodies: [{\n        description: \"Restrict access from these browsers on this address range.\",\n        expression: \"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\",\n        paused: false,\n        ref: \"FIL-100\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_filter = cloudflare.Filter(\"example_filter\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bodies=[{\n        \"description\": \"Restrict access from these browsers on this address range.\",\n        \"expression\": \"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\",\n        \"paused\": False,\n        \"ref\": \"FIL-100\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleFilter = new Cloudflare.Index.Filter(\"example_filter\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Bodies = new[]\n        {\n            new Cloudflare.Inputs.FilterBodyArgs\n            {\n                Description = \"Restrict access from these browsers on this address range.\",\n                Expression = \"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\",\n                Paused = false,\n                Ref = \"FIL-100\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewFilter(ctx, \"example_filter\", \u0026cloudflare.FilterArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBodies: cloudflare.FilterBodyArray{\n\t\t\t\t\u0026cloudflare.FilterBodyArgs{\n\t\t\t\t\tDescription: pulumi.String(\"Restrict access from these browsers on this address range.\"),\n\t\t\t\t\tExpression:  pulumi.String(\"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\"),\n\t\t\t\t\tPaused:      pulumi.Bool(false),\n\t\t\t\t\tRef:         pulumi.String(\"FIL-100\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Filter;\nimport com.pulumi.cloudflare.FilterArgs;\nimport com.pulumi.cloudflare.inputs.FilterBodyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleFilter = new Filter(\"exampleFilter\", FilterArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bodies(FilterBodyArgs.builder()\n                .description(\"Restrict access from these browsers on this address range.\")\n                .expression(\"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\")\n                .paused(false)\n                .ref(\"FIL-100\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleFilter:\n    type: cloudflare:Filter\n    name: example_filter\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      bodies:\n        - description: Restrict access from these browsers on this address range.\n          expression: (http.request.uri.path ~ \".*wp-login.php\" or http.request.uri.path ~ \".*xmlrpc.php\") and ip.addr ne 172.16.22.155\n          paused: false\n          ref: FIL-100\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/filter:Filter example '\u003czone_id\u003e/\u003cfilter_id\u003e'\n```\n\n",
            "properties": {
                "bodies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/FilterBody:FilterBody"
                    }
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the filter.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related filters.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "bodies"
            ],
            "inputProperties": {
                "bodies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/FilterBody:FilterBody"
                    }
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the filter.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the filter is currently paused.\n"
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related filters.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "bodies"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Filter resources.\n",
                "properties": {
                    "bodies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/FilterBody:FilterBody"
                        }
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative summary of the filter.\n"
                    },
                    "expression": {
                        "type": "string",
                        "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the filter is currently paused.\n"
                    },
                    "ref": {
                        "type": "string",
                        "description": "A short reference tag. Allows you to select related filters.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/firewallRule:FirewallRule": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n\u003e \u003cspan pulumi-lang-nodejs=\"`cloudflare.FirewallRule`\" pulumi-lang-dotnet=\"`cloudflare.FirewallRule`\" pulumi-lang-go=\"`FirewallRule`\" pulumi-lang-python=\"`FirewallRule`\" pulumi-lang-yaml=\"`cloudflare.FirewallRule`\" pulumi-lang-java=\"`cloudflare.FirewallRule`\"\u003e`cloudflare.FirewallRule`\u003c/span\u003e is in a deprecation phase until June 15th, 2025.\n  During this time period, this resource is still\n  fully supported but you are strongly advised  to move to the\n  \u003cspan pulumi-lang-nodejs=\"`cloudflare.Ruleset`\" pulumi-lang-dotnet=\"`cloudflare.Ruleset`\" pulumi-lang-go=\"`Ruleset`\" pulumi-lang-python=\"`Ruleset`\" pulumi-lang-yaml=\"`cloudflare.Ruleset`\" pulumi-lang-java=\"`cloudflare.Ruleset`\"\u003e`cloudflare.Ruleset`\u003c/span\u003e resource. Full details can be found in the\n  developer documentation.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleFirewallRule = new cloudflare.FirewallRule(\"example_firewall_rule\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    action: {\n        mode: \"challenge\",\n        response: {\n            body: \"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\",\n            contentType: \"text/xml\",\n        },\n        timeout: 86400,\n    },\n    filter: {\n        description: \"Restrict access from these browsers on this address range.\",\n        expression: \"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\",\n        paused: false,\n        ref: \"FIL-100\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_firewall_rule = cloudflare.FirewallRule(\"example_firewall_rule\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    action={\n        \"mode\": \"challenge\",\n        \"response\": {\n            \"body\": \"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\",\n            \"content_type\": \"text/xml\",\n        },\n        \"timeout\": 86400,\n    },\n    filter={\n        \"description\": \"Restrict access from these browsers on this address range.\",\n        \"expression\": \"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\",\n        \"paused\": False,\n        \"ref\": \"FIL-100\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleFirewallRule = new Cloudflare.Index.FirewallRule(\"example_firewall_rule\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Action = new Cloudflare.Inputs.FirewallRuleActionArgs\n        {\n            Mode = \"challenge\",\n            Response = new Cloudflare.Inputs.FirewallRuleActionResponseArgs\n            {\n                Body = \"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\",\n                ContentType = \"text/xml\",\n            },\n            Timeout = 86400,\n        },\n        Filter = new Cloudflare.Inputs.FirewallRuleFilterArgs\n        {\n            Description = \"Restrict access from these browsers on this address range.\",\n            Expression = \"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\",\n            Paused = false,\n            Ref = \"FIL-100\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewFirewallRule(ctx, \"example_firewall_rule\", \u0026cloudflare.FirewallRuleArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAction: \u0026cloudflare.FirewallRuleActionArgs{\n\t\t\t\tMode: pulumi.String(\"challenge\"),\n\t\t\t\tResponse: \u0026cloudflare.FirewallRuleActionResponseArgs{\n\t\t\t\t\tBody:        pulumi.String(\"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\"),\n\t\t\t\t\tContentType: pulumi.String(\"text/xml\"),\n\t\t\t\t},\n\t\t\t\tTimeout: pulumi.Float64(86400),\n\t\t\t},\n\t\t\tFilter: \u0026cloudflare.FirewallRuleFilterArgs{\n\t\t\t\tDescription: pulumi.String(\"Restrict access from these browsers on this address range.\"),\n\t\t\t\tExpression:  pulumi.String(\"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\"),\n\t\t\t\tPaused:      pulumi.Bool(false),\n\t\t\t\tRef:         pulumi.String(\"FIL-100\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.FirewallRule;\nimport com.pulumi.cloudflare.FirewallRuleArgs;\nimport com.pulumi.cloudflare.inputs.FirewallRuleActionArgs;\nimport com.pulumi.cloudflare.inputs.FirewallRuleActionResponseArgs;\nimport com.pulumi.cloudflare.inputs.FirewallRuleFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleFirewallRule = new FirewallRule(\"exampleFirewallRule\", FirewallRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .action(FirewallRuleActionArgs.builder()\n                .mode(\"challenge\")\n                .response(FirewallRuleActionResponseArgs.builder()\n                    .body(\"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\")\n                    .contentType(\"text/xml\")\n                    .build())\n                .timeout(86400.0)\n                .build())\n            .filter(FirewallRuleFilterArgs.builder()\n                .description(\"Restrict access from these browsers on this address range.\")\n                .expression(\"(http.request.uri.path ~ \\\".*wp-login.php\\\" or http.request.uri.path ~ \\\".*xmlrpc.php\\\") and ip.addr ne 172.16.22.155\")\n                .paused(false)\n                .ref(\"FIL-100\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleFirewallRule:\n    type: cloudflare:FirewallRule\n    name: example_firewall_rule\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      action:\n        mode: challenge\n        response:\n          body: \u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\n          contentType: text/xml\n        timeout: 86400\n      filter:\n        description: Restrict access from these browsers on this address range.\n        expression: (http.request.uri.path ~ \".*wp-login.php\" or http.request.uri.path ~ \".*xmlrpc.php\") and ip.addr ne 172.16.22.155\n        paused: false\n        ref: FIL-100\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/firewallRule:FirewallRule example '\u003czone_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "action": {
                    "$ref": "#/types/cloudflare:index/FirewallRuleAction:FirewallRuleAction",
                    "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the firewall rule.\n"
                },
                "filter": {
                    "$ref": "#/types/cloudflare:index/FirewallRuleFilter:FirewallRuleFilter"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the firewall rule is currently paused.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The priority of the rule. Optional value used to define the processing order. A lower number indicates a higher priority. If not provided, rules with a defined priority will be processed before rules without a priority.\n"
                },
                "products": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ref": {
                    "type": "string",
                    "description": "A short reference tag. Allows you to select related firewall rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "action",
                "description",
                "filter",
                "paused",
                "priority",
                "products",
                "ref"
            ],
            "inputProperties": {
                "action": {
                    "$ref": "#/types/cloudflare:index/FirewallRuleAction:FirewallRuleAction",
                    "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                },
                "filter": {
                    "$ref": "#/types/cloudflare:index/FirewallRuleFilter:FirewallRuleFilter"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "action",
                "filter"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering FirewallRule resources.\n",
                "properties": {
                    "action": {
                        "$ref": "#/types/cloudflare:index/FirewallRuleAction:FirewallRuleAction",
                        "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative summary of the firewall rule.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/FirewallRuleFilter:FirewallRuleFilter"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the firewall rule is currently paused.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "The priority of the rule. Optional value used to define the processing order. A lower number indicates a higher priority. If not provided, rules with a defined priority will be processed before rules without a priority.\n"
                    },
                    "products": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ref": {
                        "type": "string",
                        "description": "A short reference tag. Allows you to select related firewall rules.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/healthcheck:Healthcheck": {
            "description": "Accepted Permissions\n\n- `Health Checks Read`\n- `Health Checks Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHealthcheck = new cloudflare.Healthcheck(\"example_healthcheck\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    address: \"www.example.com\",\n    name: \"server-1\",\n    checkRegions: [\n        \"WEU\",\n        \"ENAM\",\n    ],\n    consecutiveFails: 0,\n    consecutiveSuccesses: 0,\n    description: \"Health check for www.example.com\",\n    httpConfig: {\n        allowInsecure: true,\n        expectedBody: \"success\",\n        expectedCodes: [\n            \"2xx\",\n            \"302\",\n        ],\n        followRedirects: true,\n        header: {\n            Host: [\"example.com\"],\n            \"X-App-ID\": [\"abc123\"],\n        },\n        method: \"GET\",\n        path: \"/health\",\n        port: 0,\n    },\n    interval: 0,\n    retries: 0,\n    suspended: true,\n    tcpConfig: {\n        method: \"connection_established\",\n        port: 0,\n    },\n    timeout: 0,\n    type: \"HTTPS\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_healthcheck = cloudflare.Healthcheck(\"example_healthcheck\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    address=\"www.example.com\",\n    name=\"server-1\",\n    check_regions=[\n        \"WEU\",\n        \"ENAM\",\n    ],\n    consecutive_fails=0,\n    consecutive_successes=0,\n    description=\"Health check for www.example.com\",\n    http_config={\n        \"allow_insecure\": True,\n        \"expected_body\": \"success\",\n        \"expected_codes\": [\n            \"2xx\",\n            \"302\",\n        ],\n        \"follow_redirects\": True,\n        \"header\": {\n            \"Host\": [\"example.com\"],\n            \"X-App-ID\": [\"abc123\"],\n        },\n        \"method\": \"GET\",\n        \"path\": \"/health\",\n        \"port\": 0,\n    },\n    interval=0,\n    retries=0,\n    suspended=True,\n    tcp_config={\n        \"method\": \"connection_established\",\n        \"port\": 0,\n    },\n    timeout=0,\n    type=\"HTTPS\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHealthcheck = new Cloudflare.Index.Healthcheck(\"example_healthcheck\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Address = \"www.example.com\",\n        Name = \"server-1\",\n        CheckRegions = new[]\n        {\n            \"WEU\",\n            \"ENAM\",\n        },\n        ConsecutiveFails = 0,\n        ConsecutiveSuccesses = 0,\n        Description = \"Health check for www.example.com\",\n        HttpConfig = new Cloudflare.Inputs.HealthcheckHttpConfigArgs\n        {\n            AllowInsecure = true,\n            ExpectedBody = \"success\",\n            ExpectedCodes = new[]\n            {\n                \"2xx\",\n                \"302\",\n            },\n            FollowRedirects = true,\n            Header = \n            {\n                { \"Host\", new[]\n                {\n                    \"example.com\",\n                } },\n                { \"X-App-ID\", new[]\n                {\n                    \"abc123\",\n                } },\n            },\n            Method = \"GET\",\n            Path = \"/health\",\n            Port = 0,\n        },\n        Interval = 0,\n        Retries = 0,\n        Suspended = true,\n        TcpConfig = new Cloudflare.Inputs.HealthcheckTcpConfigArgs\n        {\n            Method = \"connection_established\",\n            Port = 0,\n        },\n        Timeout = 0,\n        Type = \"HTTPS\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewHealthcheck(ctx, \"example_healthcheck\", \u0026cloudflare.HealthcheckArgs{\n\t\t\tZoneId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAddress: pulumi.String(\"www.example.com\"),\n\t\t\tName:    pulumi.String(\"server-1\"),\n\t\t\tCheckRegions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"WEU\"),\n\t\t\t\tpulumi.String(\"ENAM\"),\n\t\t\t},\n\t\t\tConsecutiveFails:     pulumi.Int(0),\n\t\t\tConsecutiveSuccesses: pulumi.Int(0),\n\t\t\tDescription:          pulumi.String(\"Health check for www.example.com\"),\n\t\t\tHttpConfig: \u0026cloudflare.HealthcheckHttpConfigArgs{\n\t\t\t\tAllowInsecure: pulumi.Bool(true),\n\t\t\t\tExpectedBody:  pulumi.String(\"success\"),\n\t\t\t\tExpectedCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"2xx\"),\n\t\t\t\t\tpulumi.String(\"302\"),\n\t\t\t\t},\n\t\t\t\tFollowRedirects: pulumi.Bool(true),\n\t\t\t\tHeader: pulumi.StringArrayMap{\n\t\t\t\t\t\"Host\": pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\t\t},\n\t\t\t\t\t\"X-App-ID\": pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"abc123\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath:   pulumi.String(\"/health\"),\n\t\t\t\tPort:   pulumi.Int(0),\n\t\t\t},\n\t\t\tInterval:  pulumi.Int(0),\n\t\t\tRetries:   pulumi.Int(0),\n\t\t\tSuspended: pulumi.Bool(true),\n\t\t\tTcpConfig: \u0026cloudflare.HealthcheckTcpConfigArgs{\n\t\t\t\tMethod: pulumi.String(\"connection_established\"),\n\t\t\t\tPort:   pulumi.Int(0),\n\t\t\t},\n\t\t\tTimeout: pulumi.Int(0),\n\t\t\tType:    pulumi.String(\"HTTPS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Healthcheck;\nimport com.pulumi.cloudflare.HealthcheckArgs;\nimport com.pulumi.cloudflare.inputs.HealthcheckHttpConfigArgs;\nimport com.pulumi.cloudflare.inputs.HealthcheckTcpConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleHealthcheck = new Healthcheck(\"exampleHealthcheck\", HealthcheckArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .address(\"www.example.com\")\n            .name(\"server-1\")\n            .checkRegions(            \n                \"WEU\",\n                \"ENAM\")\n            .consecutiveFails(0)\n            .consecutiveSuccesses(0)\n            .description(\"Health check for www.example.com\")\n            .httpConfig(HealthcheckHttpConfigArgs.builder()\n                .allowInsecure(true)\n                .expectedBody(\"success\")\n                .expectedCodes(                \n                    \"2xx\",\n                    \"302\")\n                .followRedirects(true)\n                .header(Map.ofEntries(\n                    Map.entry(\"Host\", \"example.com\"),\n                    Map.entry(\"X-App-ID\", \"abc123\")\n                ))\n                .method(\"GET\")\n                .path(\"/health\")\n                .port(0)\n                .build())\n            .interval(0)\n            .retries(0)\n            .suspended(true)\n            .tcpConfig(HealthcheckTcpConfigArgs.builder()\n                .method(\"connection_established\")\n                .port(0)\n                .build())\n            .timeout(0)\n            .type(\"HTTPS\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleHealthcheck:\n    type: cloudflare:Healthcheck\n    name: example_healthcheck\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      address: www.example.com\n      name: server-1\n      checkRegions:\n        - WEU\n        - ENAM\n      consecutiveFails: 0\n      consecutiveSuccesses: 0\n      description: Health check for www.example.com\n      httpConfig:\n        allowInsecure: true\n        expectedBody: success\n        expectedCodes:\n          - 2xx\n          - '302'\n        followRedirects: true\n        header:\n          Host:\n            - example.com\n          X-App-ID:\n            - abc123\n        method: GET\n        path: /health\n        port: 0\n      interval: 0\n      retries: 0\n      suspended: true\n      tcpConfig:\n        method: connection_established\n        port: 0\n      timeout: 0\n      type: HTTPS\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/healthcheck:Healthcheck example '\u003czone_id\u003e/\u003chealthcheck_id\u003e'\n```\n\n",
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The hostname or IP address of the origin server to run health checks on.\n"
                },
                "checkRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.\n"
                },
                "consecutiveFails": {
                    "type": "integer",
                    "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.\n"
                },
                "consecutiveSuccesses": {
                    "type": "integer",
                    "description": "The number of consecutive successes required from a health check before changing the health to healthy.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description of the health check.\n"
                },
                "failureReason": {
                    "type": "string",
                    "description": "The current failure reason if status is unhealthy.\n"
                },
                "httpConfig": {
                    "$ref": "#/types/cloudflare:index/HealthcheckHttpConfig:HealthcheckHttpConfig",
                    "description": "Parameters specific to an HTTP or HTTPS health check.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The current status of the origin server according to the health check.\nAvailable values: \"unknown\", \"healthy\", \"unhealthy\", \"suspended\".\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "If suspended, no health checks are sent to the origin.\n"
                },
                "tcpConfig": {
                    "$ref": "#/types/cloudflare:index/HealthcheckTcpConfig:HealthcheckTcpConfig",
                    "description": "Parameters specific to TCP health check.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The timeout (in seconds) before marking the health check as failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "required": [
                "address",
                "consecutiveFails",
                "consecutiveSuccesses",
                "createdOn",
                "description",
                "failureReason",
                "httpConfig",
                "interval",
                "modifiedOn",
                "name",
                "retries",
                "status",
                "suspended",
                "tcpConfig",
                "timeout",
                "type"
            ],
            "inputProperties": {
                "address": {
                    "type": "string",
                    "description": "The hostname or IP address of the origin server to run health checks on.\n"
                },
                "checkRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.\n"
                },
                "consecutiveFails": {
                    "type": "integer",
                    "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.\n"
                },
                "consecutiveSuccesses": {
                    "type": "integer",
                    "description": "The number of consecutive successes required from a health check before changing the health to healthy.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description of the health check.\n"
                },
                "httpConfig": {
                    "$ref": "#/types/cloudflare:index/HealthcheckHttpConfig:HealthcheckHttpConfig",
                    "description": "Parameters specific to an HTTP or HTTPS health check.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "If suspended, no health checks are sent to the origin.\n"
                },
                "tcpConfig": {
                    "$ref": "#/types/cloudflare:index/HealthcheckTcpConfig:HealthcheckTcpConfig",
                    "description": "Parameters specific to TCP health check.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The timeout (in seconds) before marking the health check as failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "requiredInputs": [
                "address",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Healthcheck resources.\n",
                "properties": {
                    "address": {
                        "type": "string",
                        "description": "The hostname or IP address of the origin server to run health checks on.\n"
                    },
                    "checkRegions": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.\n"
                    },
                    "consecutiveFails": {
                        "type": "integer",
                        "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.\n"
                    },
                    "consecutiveSuccesses": {
                        "type": "integer",
                        "description": "The number of consecutive successes required from a health check before changing the health to healthy.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "A human-readable description of the health check.\n"
                    },
                    "failureReason": {
                        "type": "string",
                        "description": "The current failure reason if status is unhealthy.\n"
                    },
                    "httpConfig": {
                        "$ref": "#/types/cloudflare:index/HealthcheckHttpConfig:HealthcheckHttpConfig",
                        "description": "Parameters specific to an HTTP or HTTPS health check.\n"
                    },
                    "interval": {
                        "type": "integer",
                        "description": "The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                    },
                    "retries": {
                        "type": "integer",
                        "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The current status of the origin server according to the health check.\nAvailable values: \"unknown\", \"healthy\", \"unhealthy\", \"suspended\".\n"
                    },
                    "suspended": {
                        "type": "boolean",
                        "description": "If suspended, no health checks are sent to the origin.\n"
                    },
                    "tcpConfig": {
                        "$ref": "#/types/cloudflare:index/HealthcheckTcpConfig:HealthcheckTcpConfig",
                        "description": "Parameters specific to TCP health check.\n"
                    },
                    "timeout": {
                        "type": "integer",
                        "description": "The timeout (in seconds) before marking the health check as failed.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/hostnameTlsSetting:HostnameTlsSetting": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHostnameTlsSetting = new cloudflare.HostnameTlsSetting(\"example_hostname_tls_setting\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"ciphers\",\n    hostname: \"app.example.com\",\n    value: [\n        \"ECDHE-RSA-AES128-GCM-SHA256\",\n        \"AES128-GCM-SHA256\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_hostname_tls_setting = cloudflare.HostnameTlsSetting(\"example_hostname_tls_setting\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"ciphers\",\n    hostname=\"app.example.com\",\n    value=[\n        \"ECDHE-RSA-AES128-GCM-SHA256\",\n        \"AES128-GCM-SHA256\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHostnameTlsSetting = new Cloudflare.Index.HostnameTlsSetting(\"example_hostname_tls_setting\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"ciphers\",\n        Hostname = \"app.example.com\",\n        Value = new[]\n        {\n            \"ECDHE-RSA-AES128-GCM-SHA256\",\n            \"AES128-GCM-SHA256\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewHostnameTlsSetting(ctx, \"example_hostname_tls_setting\", \u0026cloudflare.HostnameTlsSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"ciphers\"),\n\t\t\tHostname:  pulumi.String(\"app.example.com\"),\n\t\t\tValue: pulumi.Any{\n\t\t\t\t\"ECDHE-RSA-AES128-GCM-SHA256\",\n\t\t\t\t\"AES128-GCM-SHA256\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.HostnameTlsSetting;\nimport com.pulumi.cloudflare.HostnameTlsSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleHostnameTlsSetting = new HostnameTlsSetting(\"exampleHostnameTlsSetting\", HostnameTlsSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"ciphers\")\n            .hostname(\"app.example.com\")\n            .value(            \n                \"ECDHE-RSA-AES128-GCM-SHA256\",\n                \"AES128-GCM-SHA256\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleHostnameTlsSetting:\n    type: cloudflare:HostnameTlsSetting\n    name: example_hostname_tls_setting\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: ciphers\n      hostname: app.example.com\n      value:\n        - ECDHE-RSA-AES128-GCM-SHA256\n        - AES128-GCM-SHA256\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/hostnameTlsSetting:HostnameTlsSetting example '\u003czone_id\u003e/\u003csetting_id\u003e'\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "This is the time the tls setting was originally created for this hostname.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname for which the tls settings are set.\n"
                },
                "settingId": {
                    "type": "string",
                    "description": "The TLS Setting name. The value type depends on the setting:\n"
                },
                "status": {
                    "type": "string",
                    "description": "Deployment status for the given tls setting.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "This is the time the tls setting was updated.\n"
                },
                "value": {
                    "$ref": "pulumi.json#/Any",
                    "description": "The TLS setting value. The type depends on the \u003cspan pulumi-lang-nodejs=\"`settingId`\" pulumi-lang-dotnet=\"`SettingId`\" pulumi-lang-go=\"`settingId`\" pulumi-lang-python=\"`setting_id`\" pulumi-lang-yaml=\"`settingId`\" pulumi-lang-java=\"`settingId`\"\u003e`settingId`\u003c/span\u003e used in the request path:\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdAt",
                "hostname",
                "settingId",
                "status",
                "updatedAt",
                "value"
            ],
            "inputProperties": {
                "hostname": {
                    "type": "string",
                    "description": "The hostname for which the tls settings are set.\n"
                },
                "settingId": {
                    "type": "string",
                    "description": "The TLS Setting name. The value type depends on the setting:\n"
                },
                "value": {
                    "$ref": "pulumi.json#/Any",
                    "description": "The TLS setting value. The type depends on the \u003cspan pulumi-lang-nodejs=\"`settingId`\" pulumi-lang-dotnet=\"`SettingId`\" pulumi-lang-go=\"`settingId`\" pulumi-lang-python=\"`setting_id`\" pulumi-lang-yaml=\"`settingId`\" pulumi-lang-java=\"`settingId`\"\u003e`settingId`\u003c/span\u003e used in the request path:\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "hostname",
                "settingId",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering HostnameTlsSetting resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "This is the time the tls setting was originally created for this hostname.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "The hostname for which the tls settings are set.\n"
                    },
                    "settingId": {
                        "type": "string",
                        "description": "The TLS Setting name. The value type depends on the setting:\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Deployment status for the given tls setting.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "This is the time the tls setting was updated.\n"
                    },
                    "value": {
                        "$ref": "pulumi.json#/Any",
                        "description": "The TLS setting value. The type depends on the \u003cspan pulumi-lang-nodejs=\"`settingId`\" pulumi-lang-dotnet=\"`SettingId`\" pulumi-lang-go=\"`settingId`\" pulumi-lang-python=\"`setting_id`\" pulumi-lang-yaml=\"`settingId`\" pulumi-lang-java=\"`settingId`\"\u003e`settingId`\u003c/span\u003e used in the request path:\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/hyperdriveConfig:HyperdriveConfig": {
            "description": "Accepted Permissions\n\n- `Hyperdrive Read`\n- `Hyperdrive Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHyperdriveConfig = new cloudflare.HyperdriveConfig(\"example_hyperdrive_config\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"example-hyperdrive\",\n    origin: {\n        database: \"postgres\",\n        host: \"database.example.com\",\n        password: \"password\",\n        port: 5432,\n        scheme: \"postgres\",\n        user: \"postgres\",\n    },\n    caching: {\n        disabled: true,\n    },\n    mtls: {\n        caCertificateId: \"00000000-0000-0000-0000-0000000000\",\n        mtlsCertificateId: \"00000000-0000-0000-0000-0000000000\",\n        sslmode: \"verify-full\",\n    },\n    originConnectionLimit: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_hyperdrive_config = cloudflare.HyperdriveConfig(\"example_hyperdrive_config\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"example-hyperdrive\",\n    origin={\n        \"database\": \"postgres\",\n        \"host\": \"database.example.com\",\n        \"password\": \"password\",\n        \"port\": 5432,\n        \"scheme\": \"postgres\",\n        \"user\": \"postgres\",\n    },\n    caching={\n        \"disabled\": True,\n    },\n    mtls={\n        \"ca_certificate_id\": \"00000000-0000-0000-0000-0000000000\",\n        \"mtls_certificate_id\": \"00000000-0000-0000-0000-0000000000\",\n        \"sslmode\": \"verify-full\",\n    },\n    origin_connection_limit=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHyperdriveConfig = new Cloudflare.Index.HyperdriveConfig(\"example_hyperdrive_config\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"example-hyperdrive\",\n        Origin = new Cloudflare.Inputs.HyperdriveConfigOriginArgs\n        {\n            Database = \"postgres\",\n            Host = \"database.example.com\",\n            Password = \"password\",\n            Port = 5432,\n            Scheme = \"postgres\",\n            User = \"postgres\",\n        },\n        Caching = new Cloudflare.Inputs.HyperdriveConfigCachingArgs\n        {\n            Disabled = true,\n        },\n        Mtls = new Cloudflare.Inputs.HyperdriveConfigMtlsArgs\n        {\n            CaCertificateId = \"00000000-0000-0000-0000-0000000000\",\n            MtlsCertificateId = \"00000000-0000-0000-0000-0000000000\",\n            Sslmode = \"verify-full\",\n        },\n        OriginConnectionLimit = 60,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewHyperdriveConfig(ctx, \"example_hyperdrive_config\", \u0026cloudflare.HyperdriveConfigArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"example-hyperdrive\"),\n\t\t\tOrigin: \u0026cloudflare.HyperdriveConfigOriginArgs{\n\t\t\t\tDatabase: pulumi.String(\"postgres\"),\n\t\t\t\tHost:     pulumi.String(\"database.example.com\"),\n\t\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\t\tPort:     pulumi.Int(5432),\n\t\t\t\tScheme:   pulumi.String(\"postgres\"),\n\t\t\t\tUser:     pulumi.String(\"postgres\"),\n\t\t\t},\n\t\t\tCaching: \u0026cloudflare.HyperdriveConfigCachingArgs{\n\t\t\t\tDisabled: pulumi.Bool(true),\n\t\t\t},\n\t\t\tMtls: \u0026cloudflare.HyperdriveConfigMtlsArgs{\n\t\t\t\tCaCertificateId:   pulumi.String(\"00000000-0000-0000-0000-0000000000\"),\n\t\t\t\tMtlsCertificateId: pulumi.String(\"00000000-0000-0000-0000-0000000000\"),\n\t\t\t\tSslmode:           pulumi.String(\"verify-full\"),\n\t\t\t},\n\t\t\tOriginConnectionLimit: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.HyperdriveConfig;\nimport com.pulumi.cloudflare.HyperdriveConfigArgs;\nimport com.pulumi.cloudflare.inputs.HyperdriveConfigOriginArgs;\nimport com.pulumi.cloudflare.inputs.HyperdriveConfigCachingArgs;\nimport com.pulumi.cloudflare.inputs.HyperdriveConfigMtlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleHyperdriveConfig = new HyperdriveConfig(\"exampleHyperdriveConfig\", HyperdriveConfigArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"example-hyperdrive\")\n            .origin(HyperdriveConfigOriginArgs.builder()\n                .database(\"postgres\")\n                .host(\"database.example.com\")\n                .password(\"password\")\n                .port(5432)\n                .scheme(\"postgres\")\n                .user(\"postgres\")\n                .build())\n            .caching(HyperdriveConfigCachingArgs.builder()\n                .disabled(true)\n                .build())\n            .mtls(HyperdriveConfigMtlsArgs.builder()\n                .caCertificateId(\"00000000-0000-0000-0000-0000000000\")\n                .mtlsCertificateId(\"00000000-0000-0000-0000-0000000000\")\n                .sslmode(\"verify-full\")\n                .build())\n            .originConnectionLimit(60)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleHyperdriveConfig:\n    type: cloudflare:HyperdriveConfig\n    name: example_hyperdrive_config\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: example-hyperdrive\n      origin:\n        database: postgres\n        host: database.example.com\n        password: password\n        port: 5432\n        scheme: postgres\n        user: postgres\n      caching:\n        disabled: true\n      mtls:\n        caCertificateId: 00000000-0000-0000-0000-0000000000\n        mtlsCertificateId: 00000000-0000-0000-0000-0000000000\n        sslmode: verify-full\n      originConnectionLimit: 60\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/hyperdriveConfig:HyperdriveConfig example '\u003caccount_id\u003e/\u003chyperdrive_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Define configurations using a unique string identifier.\n"
                },
                "caching": {
                    "$ref": "#/types/cloudflare:index/HyperdriveConfigCaching:HyperdriveConfigCaching"
                },
                "createdOn": {
                    "type": "string",
                    "description": "Defines the creation time of the Hyperdrive configuration."
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Defines the last modified time of the Hyperdrive configuration."
                },
                "mtls": {
                    "$ref": "#/types/cloudflare:index/HyperdriveConfigMtls:HyperdriveConfigMtls",
                    "description": "mTLS configuration for the origin connection. Cannot be used with VPC Service origins; TLS must be managed on the VPC Service.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API.\n"
                },
                "origin": {
                    "$ref": "#/types/cloudflare:index/HyperdriveConfigOrigin:HyperdriveConfigOrigin"
                },
                "originConnectionLimit": {
                    "type": "integer",
                    "description": "The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.\n"
                }
            },
            "required": [
                "createdOn",
                "modifiedOn",
                "name",
                "origin"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Define configurations using a unique string identifier.\n"
                },
                "caching": {
                    "$ref": "#/types/cloudflare:index/HyperdriveConfigCaching:HyperdriveConfigCaching"
                },
                "mtls": {
                    "$ref": "#/types/cloudflare:index/HyperdriveConfigMtls:HyperdriveConfigMtls",
                    "description": "mTLS configuration for the origin connection. Cannot be used with VPC Service origins; TLS must be managed on the VPC Service.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API.\n"
                },
                "origin": {
                    "$ref": "#/types/cloudflare:index/HyperdriveConfigOrigin:HyperdriveConfigOrigin"
                },
                "originConnectionLimit": {
                    "type": "integer",
                    "description": "The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.\n"
                }
            },
            "requiredInputs": [
                "name",
                "origin"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering HyperdriveConfig resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Define configurations using a unique string identifier.\n"
                    },
                    "caching": {
                        "$ref": "#/types/cloudflare:index/HyperdriveConfigCaching:HyperdriveConfigCaching"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "Defines the creation time of the Hyperdrive configuration."
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Defines the last modified time of the Hyperdrive configuration."
                    },
                    "mtls": {
                        "$ref": "#/types/cloudflare:index/HyperdriveConfigMtls:HyperdriveConfigMtls",
                        "description": "mTLS configuration for the origin connection. Cannot be used with VPC Service origins; TLS must be managed on the VPC Service.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API.\n"
                    },
                    "origin": {
                        "$ref": "#/types/cloudflare:index/HyperdriveConfigOrigin:HyperdriveConfigOrigin"
                    },
                    "originConnectionLimit": {
                        "type": "integer",
                        "description": "The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/image:Image": {
            "description": "Accepted Permissions\n\n- `Images Read`\n- `Images Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleImage = new cloudflare.Image(\"example_image\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    imageId: \"id\",\n    creator: \"creator\",\n    file: \"Example data\",\n    metadata: {},\n    requireSignedUrls: true,\n    url: \"https://example.com/path/to/logo.png\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_image = cloudflare.Image(\"example_image\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    image_id=\"id\",\n    creator=\"creator\",\n    file=\"Example data\",\n    metadata={},\n    require_signed_urls=True,\n    url=\"https://example.com/path/to/logo.png\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleImage = new Cloudflare.Index.Image(\"example_image\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ImageId = \"id\",\n        Creator = \"creator\",\n        File = \"Example data\",\n        Metadata = null,\n        RequireSignedUrls = true,\n        Url = \"https://example.com/path/to/logo.png\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewImage(ctx, \"example_image\", \u0026cloudflare.ImageArgs{\n\t\t\tAccountId:         pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tImageId:           pulumi.String(\"id\"),\n\t\t\tCreator:           pulumi.String(\"creator\"),\n\t\t\tFile:              pulumi.String(\"Example data\"),\n\t\t\tMetadata:          pulumi.String{},\n\t\t\tRequireSignedUrls: pulumi.Bool(true),\n\t\t\tUrl:               pulumi.String(\"https://example.com/path/to/logo.png\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Image;\nimport com.pulumi.cloudflare.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleImage = new Image(\"exampleImage\", ImageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .imageId(\"id\")\n            .creator(\"creator\")\n            .file(\"Example data\")\n            .metadata(Map.ofEntries(\n            ))\n            .requireSignedUrls(true)\n            .url(\"https://example.com/path/to/logo.png\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleImage:\n    type: cloudflare:Image\n    name: example_image\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      imageId: id\n      creator: creator\n      file: Example data\n      metadata: {}\n      requireSignedUrls: true\n      url: https://example.com/path/to/logo.png\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/image:Image example '\u003caccount_id\u003e/\u003cimage_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "creator": {
                    "type": "string",
                    "description": "Can set the creator field with an internal user ID.\n"
                },
                "file": {
                    "type": "string",
                    "description": "An image binary data. Only needed when type is uploading a file.\n"
                },
                "filename": {
                    "type": "string",
                    "description": "Image file name.\n"
                },
                "imageId": {
                    "type": "string",
                    "description": "An optional custom unique identifier for your image.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "User modifiable key-value store. Can be used for keeping references to another system of record for managing images. Metadata must not exceed 1024 bytes.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "User modifiable key-value store. Can use used for keeping references to another system of record for managing images.\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the image requires a signature token for the access.\n"
                },
                "uploaded": {
                    "type": "string",
                    "description": "When the media item was uploaded.\n"
                },
                "url": {
                    "type": "string",
                    "description": "A URL to fetch an image from origin. Only needed when type is uploading from a URL.\n"
                },
                "variants": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Object specifying available variants for an image.\n"
                }
            },
            "required": [
                "filename",
                "imageId",
                "meta",
                "requireSignedUrls",
                "uploaded",
                "variants"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "creator": {
                    "type": "string",
                    "description": "Can set the creator field with an internal user ID.\n"
                },
                "file": {
                    "type": "string",
                    "description": "An image binary data. Only needed when type is uploading a file.\n"
                },
                "imageId": {
                    "type": "string",
                    "description": "An optional custom unique identifier for your image.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "User modifiable key-value store. Can use used for keeping references to another system of record for managing images.\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the image requires a signature token for the access.\n"
                },
                "url": {
                    "type": "string",
                    "description": "A URL to fetch an image from origin. Only needed when type is uploading from a URL.\n"
                }
            },
            "requiredInputs": [
                "imageId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Image resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "creator": {
                        "type": "string",
                        "description": "Can set the creator field with an internal user ID.\n"
                    },
                    "file": {
                        "type": "string",
                        "description": "An image binary data. Only needed when type is uploading a file.\n"
                    },
                    "filename": {
                        "type": "string",
                        "description": "Image file name.\n"
                    },
                    "imageId": {
                        "type": "string",
                        "description": "An optional custom unique identifier for your image.\n"
                    },
                    "meta": {
                        "type": "string",
                        "description": "User modifiable key-value store. Can be used for keeping references to another system of record for managing images. Metadata must not exceed 1024 bytes.\n"
                    },
                    "metadata": {
                        "type": "string",
                        "description": "User modifiable key-value store. Can use used for keeping references to another system of record for managing images.\n"
                    },
                    "requireSignedUrls": {
                        "type": "boolean",
                        "description": "Indicates whether the image requires a signature token for the access.\n"
                    },
                    "uploaded": {
                        "type": "string",
                        "description": "When the media item was uploaded.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "A URL to fetch an image from origin. Only needed when type is uploading from a URL.\n"
                    },
                    "variants": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Object specifying available variants for an image.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/imageVariant:ImageVariant": {
            "description": "Accepted Permissions\n\n- `Images Read`\n- `Images Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleImageVariant = new cloudflare.ImageVariant(\"example_image_variant\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    imageVariantId: \"hero\",\n    options: {\n        fit: \"scale-down\",\n        height: 768,\n        metadata: \"none\",\n        width: 1366,\n    },\n    neverRequireSignedUrls: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_image_variant = cloudflare.ImageVariant(\"example_image_variant\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    image_variant_id=\"hero\",\n    options={\n        \"fit\": \"scale-down\",\n        \"height\": 768,\n        \"metadata\": \"none\",\n        \"width\": 1366,\n    },\n    never_require_signed_urls=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleImageVariant = new Cloudflare.Index.ImageVariant(\"example_image_variant\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ImageVariantId = \"hero\",\n        Options = new Cloudflare.Inputs.ImageVariantOptionsArgs\n        {\n            Fit = \"scale-down\",\n            Height = 768,\n            Metadata = \"none\",\n            Width = 1366,\n        },\n        NeverRequireSignedUrls = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewImageVariant(ctx, \"example_image_variant\", \u0026cloudflare.ImageVariantArgs{\n\t\t\tAccountId:      pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tImageVariantId: pulumi.String(\"hero\"),\n\t\t\tOptions: \u0026cloudflare.ImageVariantOptionsArgs{\n\t\t\t\tFit:      pulumi.String(\"scale-down\"),\n\t\t\t\tHeight:   pulumi.Float64(768),\n\t\t\t\tMetadata: pulumi.String(\"none\"),\n\t\t\t\tWidth:    pulumi.Float64(1366),\n\t\t\t},\n\t\t\tNeverRequireSignedUrls: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ImageVariant;\nimport com.pulumi.cloudflare.ImageVariantArgs;\nimport com.pulumi.cloudflare.inputs.ImageVariantOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleImageVariant = new ImageVariant(\"exampleImageVariant\", ImageVariantArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .imageVariantId(\"hero\")\n            .options(ImageVariantOptionsArgs.builder()\n                .fit(\"scale-down\")\n                .height(768.0)\n                .metadata(\"none\")\n                .width(1366.0)\n                .build())\n            .neverRequireSignedUrls(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleImageVariant:\n    type: cloudflare:ImageVariant\n    name: example_image_variant\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      imageVariantId: hero\n      options:\n        fit: scale-down\n        height: 768\n        metadata: none\n        width: 1366\n      neverRequireSignedUrls: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/imageVariant:ImageVariant example '\u003caccount_id\u003e/\u003cvariant_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "imageVariantId": {
                    "type": "string",
                    "description": "The ID of this resource.\n"
                },
                "neverRequireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the variant can access an image without a signature, regardless of image access control.\n"
                },
                "options": {
                    "$ref": "#/types/cloudflare:index/ImageVariantOptions:ImageVariantOptions",
                    "description": "Allows you to define image resizing sizes for different use cases.\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/ImageVariantVariant:ImageVariantVariant"
                }
            },
            "required": [
                "imageVariantId",
                "neverRequireSignedUrls",
                "options",
                "variant"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "imageVariantId": {
                    "type": "string",
                    "description": "The ID of this resource.\n"
                },
                "neverRequireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the variant can access an image without a signature, regardless of image access control.\n"
                },
                "options": {
                    "$ref": "#/types/cloudflare:index/ImageVariantOptions:ImageVariantOptions",
                    "description": "Allows you to define image resizing sizes for different use cases.\n"
                }
            },
            "requiredInputs": [
                "imageVariantId",
                "options"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ImageVariant resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "imageVariantId": {
                        "type": "string",
                        "description": "The ID of this resource.\n"
                    },
                    "neverRequireSignedUrls": {
                        "type": "boolean",
                        "description": "Indicates whether the variant can access an image without a signature, regardless of image access control.\n"
                    },
                    "options": {
                        "$ref": "#/types/cloudflare:index/ImageVariantOptions:ImageVariantOptions",
                        "description": "Allows you to define image resizing sizes for different use cases.\n"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/ImageVariantVariant:ImageVariantVariant"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/keylessCertificate:KeylessCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleKeylessCertificate = new cloudflare.KeylessCertificate(\"example_keyless_certificate\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\n  BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\n  MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\n  LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\n  nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\n  fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n  5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\n  qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\n  sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\n  RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\n  UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\n  vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\n  uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\n  ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n  /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n  -----END CERTIFICATE-----\n`,\n    host: \"example.com\",\n    port: 24008,\n    bundleMethod: \"ubiquitous\",\n    name: \"example.com Keyless SSL\",\n    tunnel: {\n        privateIp: \"10.0.0.1\",\n        vnetId: \"7365377a-85a4-4390-9480-531ef7dc7a3c\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_keyless_certificate = cloudflare.KeylessCertificate(\"example_keyless_certificate\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\n  BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\n  MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\n  LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\n  nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\n  fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n  5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\n  qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\n  sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\n  RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\n  UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\n  vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\n  uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\n  ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n  /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n  -----END CERTIFICATE-----\n\"\"\",\n    host=\"example.com\",\n    port=24008,\n    bundle_method=\"ubiquitous\",\n    name=\"example.com Keyless SSL\",\n    tunnel={\n        \"private_ip\": \"10.0.0.1\",\n        \"vnet_id\": \"7365377a-85a4-4390-9480-531ef7dc7a3c\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleKeylessCertificate = new Cloudflare.Index.KeylessCertificate(\"example_keyless_certificate\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\n  BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\n  MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\n  LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\n  nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\n  fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n  5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\n  qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\n  sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\n  RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\n  UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\n  vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\n  uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\n  ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n  /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n  -----END CERTIFICATE-----\n\",\n        Host = \"example.com\",\n        Port = 24008,\n        BundleMethod = \"ubiquitous\",\n        Name = \"example.com Keyless SSL\",\n        Tunnel = new Cloudflare.Inputs.KeylessCertificateTunnelArgs\n        {\n            PrivateIp = \"10.0.0.1\",\n            VnetId = \"7365377a-85a4-4390-9480-531ef7dc7a3c\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewKeylessCertificate(ctx, \"example_keyless_certificate\", \u0026cloudflare.KeylessCertificateArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificate: pulumi.String(`  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\n  BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\n  MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\n  LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\n  nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\n  fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n  5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\n  qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\n  sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\n  RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\n  UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\n  vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\n  uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\n  ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n  /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n  -----END CERTIFICATE-----\n`),\n\t\t\tHost:         pulumi.String(\"example.com\"),\n\t\t\tPort:         pulumi.Float64(24008),\n\t\t\tBundleMethod: pulumi.String(\"ubiquitous\"),\n\t\t\tName:         pulumi.String(\"example.com Keyless SSL\"),\n\t\t\tTunnel: \u0026cloudflare.KeylessCertificateTunnelArgs{\n\t\t\t\tPrivateIp: pulumi.String(\"10.0.0.1\"),\n\t\t\t\tVnetId:    pulumi.String(\"7365377a-85a4-4390-9480-531ef7dc7a3c\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.KeylessCertificate;\nimport com.pulumi.cloudflare.KeylessCertificateArgs;\nimport com.pulumi.cloudflare.inputs.KeylessCertificateTunnelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleKeylessCertificate = new KeylessCertificate(\"exampleKeylessCertificate\", KeylessCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\n  BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n  aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\n  MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n  ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n  CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\n  LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\n  nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\n  fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n  5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\n  qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\n  sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\n  RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n  BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\n  MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\n  UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\n  vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\n  uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\n  ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n  /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n  -----END CERTIFICATE-----\n            \"\"\")\n            .host(\"example.com\")\n            .port(24008.0)\n            .bundleMethod(\"ubiquitous\")\n            .name(\"example.com Keyless SSL\")\n            .tunnel(KeylessCertificateTunnelArgs.builder()\n                .privateIp(\"10.0.0.1\")\n                .vnetId(\"7365377a-85a4-4390-9480-531ef7dc7a3c\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleKeylessCertificate:\n    type: cloudflare:KeylessCertificate\n    name: example_keyless_certificate\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      certificate: |2\n          -----BEGIN CERTIFICATE-----\n          MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\n          BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\n          aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\n          MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\n          ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n          CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\n          LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\n          nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\n          fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n          5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\n          qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\n          sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\n          RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\n          BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\n          MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\n          UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\n          vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\n          uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\n          ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n          /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n          -----END CERTIFICATE-----\n      host: example.com\n      port: 24008\n      bundleMethod: ubiquitous\n      name: example.com Keyless SSL\n      tunnel:\n        privateIp: 10.0.0.1\n        vnetId: 7365377a-85a4-4390-9480-531ef7dc7a3c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/keylessCertificate:KeylessCertificate example '\u003czone_id\u003e/\u003ckeyless_certificate_id\u003e'\n```\n\n",
            "properties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or SSL certificate and intermediate(s).\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Keyless SSL is on or off.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "host": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Keyless SSL was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n"
                },
                "tunnel": {
                    "$ref": "#/types/cloudflare:index/KeylessCertificateTunnel:KeylessCertificateTunnel",
                    "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "bundleMethod",
                "certificate",
                "createdOn",
                "host",
                "modifiedOn",
                "permissions",
                "port",
                "status"
            ],
            "inputProperties": {
                "bundleMethod": {
                    "type": "string",
                    "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The zone's SSL certificate or SSL certificate and intermediate(s).\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Keyless SSL is on or off.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "host": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The keyless SSL name.\n"
                },
                "port": {
                    "type": "number",
                    "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                },
                "tunnel": {
                    "$ref": "#/types/cloudflare:index/KeylessCertificateTunnel:KeylessCertificateTunnel",
                    "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "certificate",
                "host"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering KeylessCertificate resources.\n",
                "properties": {
                    "bundleMethod": {
                        "type": "string",
                        "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n"
                    },
                    "certificate": {
                        "type": "string",
                        "description": "The zone's SSL certificate or SSL certificate and intermediate(s).\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the Keyless SSL was created.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether or not the Keyless SSL is on or off.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "host": {
                        "type": "string",
                        "description": "The keyless SSL name.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the Keyless SSL was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The keyless SSL name.\n"
                    },
                    "permissions": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n"
                    },
                    "port": {
                        "type": "number",
                        "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n"
                    },
                    "tunnel": {
                        "$ref": "#/types/cloudflare:index/KeylessCertificateTunnel:KeylessCertificateTunnel",
                        "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/leakedCredentialCheck:LeakedCredentialCheck": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLeakedCredentialCheck = new cloudflare.LeakedCredentialCheck(\"example_leaked_credential_check\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_leaked_credential_check = cloudflare.LeakedCredentialCheck(\"example_leaked_credential_check\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLeakedCredentialCheck = new Cloudflare.Index.LeakedCredentialCheck(\"example_leaked_credential_check\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLeakedCredentialCheck(ctx, \"example_leaked_credential_check\", \u0026cloudflare.LeakedCredentialCheckArgs{\n\t\t\tZoneId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LeakedCredentialCheck;\nimport com.pulumi.cloudflare.LeakedCredentialCheckArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLeakedCredentialCheck = new LeakedCredentialCheck(\"exampleLeakedCredentialCheck\", LeakedCredentialCheckArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLeakedCredentialCheck:\n    type: cloudflare:LeakedCredentialCheck\n    name: example_leaked_credential_check\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether or not Leaked Credential Checks are enabled.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether or not Leaked Credential Checks are enabled.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LeakedCredentialCheck resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Determines whether or not Leaked Credential Checks are enabled.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/leakedCredentialCheckRule:LeakedCredentialCheckRule": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLeakedCredentialCheckRule = new cloudflare.LeakedCredentialCheckRule(\"example_leaked_credential_check_rule\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    password: \"lookup_json_string(http.request.body.raw, \\\"secret\\\")\",\n    username: \"lookup_json_string(http.request.body.raw, \\\"user\\\")\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_leaked_credential_check_rule = cloudflare.LeakedCredentialCheckRule(\"example_leaked_credential_check_rule\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    password=\"lookup_json_string(http.request.body.raw, \\\"secret\\\")\",\n    username=\"lookup_json_string(http.request.body.raw, \\\"user\\\")\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLeakedCredentialCheckRule = new Cloudflare.Index.LeakedCredentialCheckRule(\"example_leaked_credential_check_rule\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Password = \"lookup_json_string(http.request.body.raw, \\\"secret\\\")\",\n        Username = \"lookup_json_string(http.request.body.raw, \\\"user\\\")\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLeakedCredentialCheckRule(ctx, \"example_leaked_credential_check_rule\", \u0026cloudflare.LeakedCredentialCheckRuleArgs{\n\t\t\tZoneId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPassword: pulumi.String(\"lookup_json_string(http.request.body.raw, \\\"secret\\\")\"),\n\t\t\tUsername: pulumi.String(\"lookup_json_string(http.request.body.raw, \\\"user\\\")\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LeakedCredentialCheckRule;\nimport com.pulumi.cloudflare.LeakedCredentialCheckRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLeakedCredentialCheckRule = new LeakedCredentialCheckRule(\"exampleLeakedCredentialCheckRule\", LeakedCredentialCheckRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .password(\"lookup_json_string(http.request.body.raw, \\\"secret\\\")\")\n            .username(\"lookup_json_string(http.request.body.raw, \\\"user\\\")\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLeakedCredentialCheckRule:\n    type: cloudflare:LeakedCredentialCheckRule\n    name: example_leaked_credential_check_rule\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      password: lookup_json_string(http.request.body.raw, \"secret\")\n      username: lookup_json_string(http.request.body.raw, \"user\")\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/leakedCredentialCheckRule:LeakedCredentialCheckRule example '\u003czone_id\u003e/\u003cdetection_id\u003e'\n```\n\n",
            "properties": {
                "password": {
                    "type": "string",
                    "description": "Defines ehe ruleset expression to use in matching the password in a request.\n"
                },
                "username": {
                    "type": "string",
                    "description": "Defines the ruleset expression to use in matching the username in a request.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "inputProperties": {
                "password": {
                    "type": "string",
                    "description": "Defines ehe ruleset expression to use in matching the password in a request.\n"
                },
                "username": {
                    "type": "string",
                    "description": "Defines the ruleset expression to use in matching the username in a request.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LeakedCredentialCheckRule resources.\n",
                "properties": {
                    "password": {
                        "type": "string",
                        "description": "Defines ehe ruleset expression to use in matching the password in a request.\n"
                    },
                    "username": {
                        "type": "string",
                        "description": "Defines the ruleset expression to use in matching the username in a request.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/list:List": {
            "description": "Accepted Permissions\n\n- `Account Filter Lists Edit`\n- `Account Filter Lists Read`\n\n\u003e The \u003cspan pulumi-lang-nodejs=\"`cloudflare.List`\" pulumi-lang-dotnet=\"`cloudflare.List`\" pulumi-lang-go=\"`List`\" pulumi-lang-python=\"`List`\" pulumi-lang-yaml=\"`cloudflare.List`\" pulumi-lang-java=\"`cloudflare.List`\"\u003e`cloudflare.List`\u003c/span\u003e resource supports defining list items in line with the\n  \u003cspan pulumi-lang-nodejs=\"`items`\" pulumi-lang-dotnet=\"`Items`\" pulumi-lang-go=\"`items`\" pulumi-lang-python=\"`items`\" pulumi-lang-yaml=\"`items`\" pulumi-lang-java=\"`items`\"\u003e`items`\u003c/span\u003e attribute. The provider also has a \u003cspan pulumi-lang-nodejs=\"`cloudflare.ListItem`\" pulumi-lang-dotnet=\"`cloudflare.ListItem`\" pulumi-lang-go=\"`ListItem`\" pulumi-lang-python=\"`ListItem`\" pulumi-lang-yaml=\"`cloudflare.ListItem`\" pulumi-lang-java=\"`cloudflare.ListItem`\"\u003e`cloudflare.ListItem`\u003c/span\u003e resource for\n  managing items as independent resources. Using both in line \u003cspan pulumi-lang-nodejs=\"`items`\" pulumi-lang-dotnet=\"`Items`\" pulumi-lang-go=\"`items`\" pulumi-lang-python=\"`items`\" pulumi-lang-yaml=\"`items`\" pulumi-lang-java=\"`items`\"\u003e`items`\u003c/span\u003e definitions\n  _and_ \u003cspan pulumi-lang-nodejs=\"`cloudflare.getListItems`\" pulumi-lang-dotnet=\"`cloudflare.getListItems`\" pulumi-lang-go=\"`getListItems`\" pulumi-lang-python=\"`get_list_items`\" pulumi-lang-yaml=\"`cloudflare.getListItems`\" pulumi-lang-java=\"`cloudflare.getListItems`\"\u003e`cloudflare.getListItems`\u003c/span\u003e on the same list is not supported and will cause\n  Terraform into an irreconcilable state.\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/list:List example '\u003caccount_id\u003e/\u003clist_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID for this resource.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the list was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the list.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ListItem:ListItem"
                    },
                    "description": "The items in the list. If set, this overwrites all items in the list. Do not use with \u003cspan pulumi-lang-nodejs=\"`cloudflare.ListItem`\" pulumi-lang-dotnet=\"`cloudflare.ListItem`\" pulumi-lang-go=\"`ListItem`\" pulumi-lang-python=\"`ListItem`\" pulumi-lang-yaml=\"`cloudflare.ListItem`\" pulumi-lang-java=\"`cloudflare.ListItem`\"\u003e`cloudflare.ListItem`\u003c/span\u003e.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects).\nAvailable values: \"ip\", \"redirect\", \"hostname\", \"asn\".\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the list was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "An informative name for the list. Use this name in filter and rule expressions.\n"
                },
                "numItems": {
                    "type": "number",
                    "description": "The number of items in the list.\n"
                },
                "numReferencingFilters": {
                    "type": "number",
                    "description": "The number of [filters](https://www.terraform.io/api/resources/filters/) referencing the list.\n"
                }
            },
            "required": [
                "createdOn",
                "kind",
                "modifiedOn",
                "name",
                "numItems",
                "numReferencingFilters"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID for this resource.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the list.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ListItem:ListItem"
                    },
                    "description": "The items in the list. If set, this overwrites all items in the list. Do not use with \u003cspan pulumi-lang-nodejs=\"`cloudflare.ListItem`\" pulumi-lang-dotnet=\"`cloudflare.ListItem`\" pulumi-lang-go=\"`ListItem`\" pulumi-lang-python=\"`ListItem`\" pulumi-lang-yaml=\"`cloudflare.ListItem`\" pulumi-lang-java=\"`cloudflare.ListItem`\"\u003e`cloudflare.ListItem`\u003c/span\u003e.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects).\nAvailable values: \"ip\", \"redirect\", \"hostname\", \"asn\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "An informative name for the list. Use this name in filter and rule expressions.\n"
                }
            },
            "requiredInputs": [
                "kind",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering List resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID for this resource.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The RFC 3339 timestamp of when the list was created.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative summary of the list.\n"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ListItem:ListItem"
                        },
                        "description": "The items in the list. If set, this overwrites all items in the list. Do not use with \u003cspan pulumi-lang-nodejs=\"`cloudflare.ListItem`\" pulumi-lang-dotnet=\"`cloudflare.ListItem`\" pulumi-lang-go=\"`ListItem`\" pulumi-lang-python=\"`ListItem`\" pulumi-lang-yaml=\"`cloudflare.ListItem`\" pulumi-lang-java=\"`cloudflare.ListItem`\"\u003e`cloudflare.ListItem`\u003c/span\u003e.\n"
                    },
                    "kind": {
                        "type": "string",
                        "description": "The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects).\nAvailable values: \"ip\", \"redirect\", \"hostname\", \"asn\".\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The RFC 3339 timestamp of when the list was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "An informative name for the list. Use this name in filter and rule expressions.\n"
                    },
                    "numItems": {
                        "type": "number",
                        "description": "The number of items in the list.\n"
                    },
                    "numReferencingFilters": {
                        "type": "number",
                        "description": "The number of [filters](https://www.terraform.io/api/resources/filters/) referencing the list.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/listItem:ListItem": {
            "description": "Accepted Permissions\n\n- `Account Filter Lists Edit`\n- `Account Filter Lists Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleListItem = new cloudflare.ListItem(\"example_list_item\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    listId: \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    ip: \"10.0.0.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_list_item = cloudflare.ListItem(\"example_list_item\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    list_id=\"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    ip=\"10.0.0.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleListItem = new Cloudflare.Index.ListItem(\"example_list_item\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ListId = \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n        Ip = \"10.0.0.1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewListItem(ctx, \"example_list_item\", \u0026cloudflare.ListItemArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tListId:    pulumi.String(\"2c0fc9fa937b11eaa1b71c4d701ab86e\"),\n\t\t\tIp:        pulumi.String(\"10.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ListItem;\nimport com.pulumi.cloudflare.ListItemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleListItem = new ListItem(\"exampleListItem\", ListItemArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .listId(\"2c0fc9fa937b11eaa1b71c4d701ab86e\")\n            .ip(\"10.0.0.1\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleListItem:\n    type: cloudflare:ListItem\n    name: example_list_item\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      listId: 2c0fc9fa937b11eaa1b71c4d701ab86e\n      ip: 10.0.0.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/listItem:ListItem example '\u003caccount_id\u003e/\u003clist_id\u003e/\u003citem_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID for this resource.\n"
                },
                "asn": {
                    "type": "integer",
                    "description": "A non-negative 32 bit integer\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An informative summary of the list item.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the item was created.\n"
                },
                "hostname": {
                    "$ref": "#/types/cloudflare:index/ListItemHostname:ListItemHostname",
                    "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                },
                "ip": {
                    "type": "string",
                    "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n"
                },
                "listId": {
                    "type": "string",
                    "description": "The unique ID of the list.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The RFC 3339 timestamp of when the item was last modified.\n"
                },
                "operationId": {
                    "type": "string",
                    "description": "The unique operation ID of the asynchronous action.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/ListItemRedirect:ListItemRedirect",
                    "description": "The definition of the redirect.\n"
                }
            },
            "required": [
                "createdOn",
                "listId",
                "modifiedOn",
                "operationId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID for this resource.\n"
                },
                "asn": {
                    "type": "integer",
                    "description": "A non-negative 32 bit integer\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An informative summary of the list item.\n"
                },
                "hostname": {
                    "$ref": "#/types/cloudflare:index/ListItemHostname:ListItemHostname",
                    "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                },
                "ip": {
                    "type": "string",
                    "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n"
                },
                "listId": {
                    "type": "string",
                    "description": "The unique ID of the list.\n"
                },
                "redirect": {
                    "$ref": "#/types/cloudflare:index/ListItemRedirect:ListItemRedirect",
                    "description": "The definition of the redirect.\n"
                }
            },
            "requiredInputs": [
                "listId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ListItem resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID for this resource.\n"
                    },
                    "asn": {
                        "type": "integer",
                        "description": "A non-negative 32 bit integer\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "An informative summary of the list item.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The RFC 3339 timestamp of when the item was created.\n"
                    },
                    "hostname": {
                        "$ref": "#/types/cloudflare:index/ListItemHostname:ListItemHostname",
                        "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                    },
                    "ip": {
                        "type": "string",
                        "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n"
                    },
                    "listId": {
                        "type": "string",
                        "description": "The unique ID of the list.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The RFC 3339 timestamp of when the item was last modified.\n"
                    },
                    "operationId": {
                        "type": "string",
                        "description": "The unique operation ID of the asynchronous action.\n"
                    },
                    "redirect": {
                        "$ref": "#/types/cloudflare:index/ListItemRedirect:ListItemRedirect",
                        "description": "The definition of the redirect.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/loadBalancer:LoadBalancer": {
            "description": "Accepted Permissions\n\n- `Load Balancers Read`\n- `Load Balancers Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancer = new cloudflare.LoadBalancer(\"example_load_balancer\", {\n    zoneId: \"699d98642c564d2e855e9661899b7252\",\n    defaultPools: [\n        \"17b5962d775c646f3f9725cbc7a53df4\",\n        \"9290f38c5d07c2e2f4df57b1f61d4196\",\n        \"00920f38ce07c2e2f4df50b1f61d4194\",\n    ],\n    fallbackPool: \"fallback_pool\",\n    name: \"www.example.com\",\n    adaptiveRouting: {\n        failoverAcrossPools: true,\n    },\n    countryPools: {\n        GB: [\"abd90f38ced07c2e2f4df50b1f61d4194\"],\n        US: [\n            \"de90f38ced07c2e2f4df50b1f61d4194\",\n            \"00920f38ce07c2e2f4df50b1f61d4194\",\n        ],\n    },\n    description: \"Load Balancer for www.example.com\",\n    locationStrategy: {\n        mode: \"resolver_ip\",\n        preferEcs: \"always\",\n    },\n    networks: [\"string\"],\n    popPools: {\n        LAX: [\n            \"de90f38ced07c2e2f4df50b1f61d4194\",\n            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n        ],\n        LHR: [\n            \"abd90f38ced07c2e2f4df50b1f61d4194\",\n            \"f9138c5d07c2e2f4df57b1f61d4196\",\n        ],\n        SJC: [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n    },\n    proxied: true,\n    randomSteering: {\n        defaultWeight: 0.2,\n        poolWeights: {\n            \"9290f38c5d07c2e2f4df57b1f61d4196\": 0.5,\n            de90f38ced07c2e2f4df50b1f61d4194: 0.3,\n        },\n    },\n    regionPools: {\n        ENAM: [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n        WNAM: [\n            \"de90f38ced07c2e2f4df50b1f61d4194\",\n            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n        ],\n    },\n    rules: [{\n        condition: \"http.request.uri.path contains \\\"/testing\\\"\",\n        disabled: true,\n        fixedResponse: {\n            contentType: \"application/json\",\n            location: \"www.example.com\",\n            messageBody: \"Testing Hello\",\n            statusCode: 0,\n        },\n        name: \"route the path /testing to testing datacenter.\",\n        overrides: {\n            adaptiveRouting: {\n                failoverAcrossPools: true,\n            },\n            countryPools: {\n                GB: [\"abd90f38ced07c2e2f4df50b1f61d4194\"],\n                US: [\n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"00920f38ce07c2e2f4df50b1f61d4194\",\n                ],\n            },\n            defaultPools: [\n                \"17b5962d775c646f3f9725cbc7a53df4\",\n                \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                \"00920f38ce07c2e2f4df50b1f61d4194\",\n            ],\n            fallbackPool: \"fallback_pool\",\n            locationStrategy: {\n                mode: \"resolver_ip\",\n                preferEcs: \"always\",\n            },\n            popPools: {\n                LAX: [\n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                ],\n                LHR: [\n                    \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                    \"f9138c5d07c2e2f4df57b1f61d4196\",\n                ],\n                SJC: [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n            },\n            randomSteering: {\n                defaultWeight: 0.2,\n                poolWeights: {\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\": 0.5,\n                    de90f38ced07c2e2f4df50b1f61d4194: 0.3,\n                },\n            },\n            regionPools: {\n                ENAM: [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n                WNAM: [\n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                ],\n            },\n            sessionAffinity: \"cookie\",\n            sessionAffinityAttributes: {\n                drainDuration: 100,\n                headers: [\"x\"],\n                requireAllHeaders: true,\n                samesite: \"Auto\",\n                secure: \"Auto\",\n                zeroDowntimeFailover: \"sticky\",\n            },\n            sessionAffinityTtl: 1800,\n            steeringPolicy: \"dynamic_latency\",\n            ttl: 30,\n        },\n        priority: 0,\n        terminates: true,\n    }],\n    sessionAffinity: \"cookie\",\n    sessionAffinityAttributes: {\n        drainDuration: 100,\n        headers: [\"x\"],\n        requireAllHeaders: true,\n        samesite: \"Auto\",\n        secure: \"Auto\",\n        zeroDowntimeFailover: \"sticky\",\n    },\n    sessionAffinityTtl: 1800,\n    steeringPolicy: \"dynamic_latency\",\n    ttl: 30,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer = cloudflare.LoadBalancer(\"example_load_balancer\",\n    zone_id=\"699d98642c564d2e855e9661899b7252\",\n    default_pools=[\n        \"17b5962d775c646f3f9725cbc7a53df4\",\n        \"9290f38c5d07c2e2f4df57b1f61d4196\",\n        \"00920f38ce07c2e2f4df50b1f61d4194\",\n    ],\n    fallback_pool=\"fallback_pool\",\n    name=\"www.example.com\",\n    adaptive_routing={\n        \"failover_across_pools\": True,\n    },\n    country_pools={\n        \"GB\": [\"abd90f38ced07c2e2f4df50b1f61d4194\"],\n        \"US\": [\n            \"de90f38ced07c2e2f4df50b1f61d4194\",\n            \"00920f38ce07c2e2f4df50b1f61d4194\",\n        ],\n    },\n    description=\"Load Balancer for www.example.com\",\n    location_strategy={\n        \"mode\": \"resolver_ip\",\n        \"prefer_ecs\": \"always\",\n    },\n    networks=[\"string\"],\n    pop_pools={\n        \"LAX\": [\n            \"de90f38ced07c2e2f4df50b1f61d4194\",\n            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n        ],\n        \"LHR\": [\n            \"abd90f38ced07c2e2f4df50b1f61d4194\",\n            \"f9138c5d07c2e2f4df57b1f61d4196\",\n        ],\n        \"SJC\": [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n    },\n    proxied=True,\n    random_steering={\n        \"default_weight\": 0.2,\n        \"pool_weights\": {\n            \"9290f38c5d07c2e2f4df57b1f61d4196\": 0.5,\n            \"de90f38ced07c2e2f4df50b1f61d4194\": 0.3,\n        },\n    },\n    region_pools={\n        \"ENAM\": [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n        \"WNAM\": [\n            \"de90f38ced07c2e2f4df50b1f61d4194\",\n            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n        ],\n    },\n    rules=[{\n        \"condition\": \"http.request.uri.path contains \\\"/testing\\\"\",\n        \"disabled\": True,\n        \"fixed_response\": {\n            \"content_type\": \"application/json\",\n            \"location\": \"www.example.com\",\n            \"message_body\": \"Testing Hello\",\n            \"status_code\": 0,\n        },\n        \"name\": \"route the path /testing to testing datacenter.\",\n        \"overrides\": {\n            \"adaptive_routing\": {\n                \"failover_across_pools\": True,\n            },\n            \"country_pools\": {\n                \"GB\": [\"abd90f38ced07c2e2f4df50b1f61d4194\"],\n                \"US\": [\n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"00920f38ce07c2e2f4df50b1f61d4194\",\n                ],\n            },\n            \"default_pools\": [\n                \"17b5962d775c646f3f9725cbc7a53df4\",\n                \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                \"00920f38ce07c2e2f4df50b1f61d4194\",\n            ],\n            \"fallback_pool\": \"fallback_pool\",\n            \"location_strategy\": {\n                \"mode\": \"resolver_ip\",\n                \"prefer_ecs\": \"always\",\n            },\n            \"pop_pools\": {\n                \"LAX\": [\n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                ],\n                \"LHR\": [\n                    \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                    \"f9138c5d07c2e2f4df57b1f61d4196\",\n                ],\n                \"SJC\": [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n            },\n            \"random_steering\": {\n                \"default_weight\": 0.2,\n                \"pool_weights\": {\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\": 0.5,\n                    \"de90f38ced07c2e2f4df50b1f61d4194\": 0.3,\n                },\n            },\n            \"region_pools\": {\n                \"ENAM\": [\"00920f38ce07c2e2f4df50b1f61d4194\"],\n                \"WNAM\": [\n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                ],\n            },\n            \"session_affinity\": \"cookie\",\n            \"session_affinity_attributes\": {\n                \"drain_duration\": 100,\n                \"headers\": [\"x\"],\n                \"require_all_headers\": True,\n                \"samesite\": \"Auto\",\n                \"secure\": \"Auto\",\n                \"zero_downtime_failover\": \"sticky\",\n            },\n            \"session_affinity_ttl\": 1800,\n            \"steering_policy\": \"dynamic_latency\",\n            \"ttl\": 30,\n        },\n        \"priority\": 0,\n        \"terminates\": True,\n    }],\n    session_affinity=\"cookie\",\n    session_affinity_attributes={\n        \"drain_duration\": 100,\n        \"headers\": [\"x\"],\n        \"require_all_headers\": True,\n        \"samesite\": \"Auto\",\n        \"secure\": \"Auto\",\n        \"zero_downtime_failover\": \"sticky\",\n    },\n    session_affinity_ttl=1800,\n    steering_policy=\"dynamic_latency\",\n    ttl=30)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancer = new Cloudflare.Index.LoadBalancer(\"example_load_balancer\", new()\n    {\n        ZoneId = \"699d98642c564d2e855e9661899b7252\",\n        DefaultPools = new[]\n        {\n            \"17b5962d775c646f3f9725cbc7a53df4\",\n            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n            \"00920f38ce07c2e2f4df50b1f61d4194\",\n        },\n        FallbackPool = \"fallback_pool\",\n        Name = \"www.example.com\",\n        AdaptiveRouting = new Cloudflare.Inputs.LoadBalancerAdaptiveRoutingArgs\n        {\n            FailoverAcrossPools = true,\n        },\n        CountryPools = \n        {\n            { \"GB\", new[]\n            {\n                \"abd90f38ced07c2e2f4df50b1f61d4194\",\n            } },\n            { \"US\", new[]\n            {\n                \"de90f38ced07c2e2f4df50b1f61d4194\",\n                \"00920f38ce07c2e2f4df50b1f61d4194\",\n            } },\n        },\n        Description = \"Load Balancer for www.example.com\",\n        LocationStrategy = new Cloudflare.Inputs.LoadBalancerLocationStrategyArgs\n        {\n            Mode = \"resolver_ip\",\n            PreferEcs = \"always\",\n        },\n        Networks = new[]\n        {\n            \"string\",\n        },\n        PopPools = \n        {\n            { \"LAX\", new[]\n            {\n                \"de90f38ced07c2e2f4df50b1f61d4194\",\n                \"9290f38c5d07c2e2f4df57b1f61d4196\",\n            } },\n            { \"LHR\", new[]\n            {\n                \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                \"f9138c5d07c2e2f4df57b1f61d4196\",\n            } },\n            { \"SJC\", new[]\n            {\n                \"00920f38ce07c2e2f4df50b1f61d4194\",\n            } },\n        },\n        Proxied = true,\n        RandomSteering = new Cloudflare.Inputs.LoadBalancerRandomSteeringArgs\n        {\n            DefaultWeight = 0.2,\n            PoolWeights = \n            {\n                { \"9290f38c5d07c2e2f4df57b1f61d4196\", 0.5 },\n                { \"de90f38ced07c2e2f4df50b1f61d4194\", 0.3 },\n            },\n        },\n        RegionPools = \n        {\n            { \"ENAM\", new[]\n            {\n                \"00920f38ce07c2e2f4df50b1f61d4194\",\n            } },\n            { \"WNAM\", new[]\n            {\n                \"de90f38ced07c2e2f4df50b1f61d4194\",\n                \"9290f38c5d07c2e2f4df57b1f61d4196\",\n            } },\n        },\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.LoadBalancerRuleArgs\n            {\n                Condition = \"http.request.uri.path contains \\\"/testing\\\"\",\n                Disabled = true,\n                FixedResponse = new Cloudflare.Inputs.LoadBalancerRuleFixedResponseArgs\n                {\n                    ContentType = \"application/json\",\n                    Location = \"www.example.com\",\n                    MessageBody = \"Testing Hello\",\n                    StatusCode = 0,\n                },\n                Name = \"route the path /testing to testing datacenter.\",\n                Overrides = new Cloudflare.Inputs.LoadBalancerRuleOverridesArgs\n                {\n                    AdaptiveRouting = new Cloudflare.Inputs.LoadBalancerRuleOverridesAdaptiveRoutingArgs\n                    {\n                        FailoverAcrossPools = true,\n                    },\n                    CountryPools = \n                    {\n                        { \"GB\", new[]\n                        {\n                            \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                        } },\n                        { \"US\", new[]\n                        {\n                            \"de90f38ced07c2e2f4df50b1f61d4194\",\n                            \"00920f38ce07c2e2f4df50b1f61d4194\",\n                        } },\n                    },\n                    DefaultPools = new[]\n                    {\n                        \"17b5962d775c646f3f9725cbc7a53df4\",\n                        \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                        \"00920f38ce07c2e2f4df50b1f61d4194\",\n                    },\n                    FallbackPool = \"fallback_pool\",\n                    LocationStrategy = new Cloudflare.Inputs.LoadBalancerRuleOverridesLocationStrategyArgs\n                    {\n                        Mode = \"resolver_ip\",\n                        PreferEcs = \"always\",\n                    },\n                    PopPools = \n                    {\n                        { \"LAX\", new[]\n                        {\n                            \"de90f38ced07c2e2f4df50b1f61d4194\",\n                            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                        } },\n                        { \"LHR\", new[]\n                        {\n                            \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                            \"f9138c5d07c2e2f4df57b1f61d4196\",\n                        } },\n                        { \"SJC\", new[]\n                        {\n                            \"00920f38ce07c2e2f4df50b1f61d4194\",\n                        } },\n                    },\n                    RandomSteering = new Cloudflare.Inputs.LoadBalancerRuleOverridesRandomSteeringArgs\n                    {\n                        DefaultWeight = 0.2,\n                        PoolWeights = \n                        {\n                            { \"9290f38c5d07c2e2f4df57b1f61d4196\", 0.5 },\n                            { \"de90f38ced07c2e2f4df50b1f61d4194\", 0.3 },\n                        },\n                    },\n                    RegionPools = \n                    {\n                        { \"ENAM\", new[]\n                        {\n                            \"00920f38ce07c2e2f4df50b1f61d4194\",\n                        } },\n                        { \"WNAM\", new[]\n                        {\n                            \"de90f38ced07c2e2f4df50b1f61d4194\",\n                            \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                        } },\n                    },\n                    SessionAffinity = \"cookie\",\n                    SessionAffinityAttributes = new Cloudflare.Inputs.LoadBalancerRuleOverridesSessionAffinityAttributesArgs\n                    {\n                        DrainDuration = 100,\n                        Headers = new[]\n                        {\n                            \"x\",\n                        },\n                        RequireAllHeaders = true,\n                        Samesite = \"Auto\",\n                        Secure = \"Auto\",\n                        ZeroDowntimeFailover = \"sticky\",\n                    },\n                    SessionAffinityTtl = 1800,\n                    SteeringPolicy = \"dynamic_latency\",\n                    Ttl = 30,\n                },\n                Priority = 0,\n                Terminates = true,\n            },\n        },\n        SessionAffinity = \"cookie\",\n        SessionAffinityAttributes = new Cloudflare.Inputs.LoadBalancerSessionAffinityAttributesArgs\n        {\n            DrainDuration = 100,\n            Headers = new[]\n            {\n                \"x\",\n            },\n            RequireAllHeaders = true,\n            Samesite = \"Auto\",\n            Secure = \"Auto\",\n            ZeroDowntimeFailover = \"sticky\",\n        },\n        SessionAffinityTtl = 1800,\n        SteeringPolicy = \"dynamic_latency\",\n        Ttl = 30,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLoadBalancer(ctx, \"example_load_balancer\", \u0026cloudflare.LoadBalancerArgs{\n\t\t\tZoneId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tDefaultPools: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"17b5962d775c646f3f9725cbc7a53df4\"),\n\t\t\t\tpulumi.String(\"9290f38c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t},\n\t\t\tFallbackPool: pulumi.String(\"fallback_pool\"),\n\t\t\tName:         pulumi.String(\"www.example.com\"),\n\t\t\tAdaptiveRouting: \u0026cloudflare.LoadBalancerAdaptiveRoutingArgs{\n\t\t\t\tFailoverAcrossPools: pulumi.Bool(true),\n\t\t\t},\n\t\t\tCountryPools: pulumi.StringArrayMap{\n\t\t\t\t\"GB\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"abd90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t},\n\t\t\t\t\"US\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"de90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Load Balancer for www.example.com\"),\n\t\t\tLocationStrategy: \u0026cloudflare.LoadBalancerLocationStrategyArgs{\n\t\t\t\tMode:      pulumi.String(\"resolver_ip\"),\n\t\t\t\tPreferEcs: pulumi.String(\"always\"),\n\t\t\t},\n\t\t\tNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"string\"),\n\t\t\t},\n\t\t\tPopPools: pulumi.StringArrayMap{\n\t\t\t\t\"LAX\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"de90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\tpulumi.String(\"9290f38c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t},\n\t\t\t\t\"LHR\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"abd90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\tpulumi.String(\"f9138c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t},\n\t\t\t\t\"SJC\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProxied: pulumi.Bool(true),\n\t\t\tRandomSteering: \u0026cloudflare.LoadBalancerRandomSteeringArgs{\n\t\t\t\tDefaultWeight: pulumi.Float64(0.2),\n\t\t\t\tPoolWeights: pulumi.Float64Map{\n\t\t\t\t\t\"9290f38c5d07c2e2f4df57b1f61d4196\": pulumi.Float64(0.5),\n\t\t\t\t\t\"de90f38ced07c2e2f4df50b1f61d4194\": pulumi.Float64(0.3),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRegionPools: pulumi.StringArrayMap{\n\t\t\t\t\"ENAM\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t},\n\t\t\t\t\"WNAM\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"de90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\tpulumi.String(\"9290f38c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRules: cloudflare.LoadBalancerRuleArray{\n\t\t\t\t\u0026cloudflare.LoadBalancerRuleArgs{\n\t\t\t\t\tCondition: pulumi.String(\"http.request.uri.path contains \\\"/testing\\\"\"),\n\t\t\t\t\tDisabled:  pulumi.Bool(true),\n\t\t\t\t\tFixedResponse: \u0026cloudflare.LoadBalancerRuleFixedResponseArgs{\n\t\t\t\t\t\tContentType: pulumi.String(\"application/json\"),\n\t\t\t\t\t\tLocation:    pulumi.String(\"www.example.com\"),\n\t\t\t\t\t\tMessageBody: pulumi.String(\"Testing Hello\"),\n\t\t\t\t\t\tStatusCode:  pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t\tName: pulumi.String(\"route the path /testing to testing datacenter.\"),\n\t\t\t\t\tOverrides: \u0026cloudflare.LoadBalancerRuleOverridesArgs{\n\t\t\t\t\t\tAdaptiveRouting: \u0026cloudflare.LoadBalancerRuleOverridesAdaptiveRoutingArgs{\n\t\t\t\t\t\t\tFailoverAcrossPools: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tCountryPools: pulumi.StringArrayMap{\n\t\t\t\t\t\t\t\"GB\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"abd90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"US\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"de90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDefaultPools: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"17b5962d775c646f3f9725cbc7a53df4\"),\n\t\t\t\t\t\t\tpulumi.String(\"9290f38c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tFallbackPool: pulumi.String(\"fallback_pool\"),\n\t\t\t\t\t\tLocationStrategy: \u0026cloudflare.LoadBalancerRuleOverridesLocationStrategyArgs{\n\t\t\t\t\t\t\tMode:      pulumi.String(\"resolver_ip\"),\n\t\t\t\t\t\t\tPreferEcs: pulumi.String(\"always\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tPopPools: pulumi.StringArrayMap{\n\t\t\t\t\t\t\t\"LAX\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"de90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"9290f38c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"LHR\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"abd90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"f9138c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"SJC\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRandomSteering: \u0026cloudflare.LoadBalancerRuleOverridesRandomSteeringArgs{\n\t\t\t\t\t\t\tDefaultWeight: pulumi.Float64(0.2),\n\t\t\t\t\t\t\tPoolWeights: pulumi.Float64Map{\n\t\t\t\t\t\t\t\t\"9290f38c5d07c2e2f4df57b1f61d4196\": pulumi.Float64(0.5),\n\t\t\t\t\t\t\t\t\"de90f38ced07c2e2f4df50b1f61d4194\": pulumi.Float64(0.3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRegionPools: pulumi.StringArrayMap{\n\t\t\t\t\t\t\t\"ENAM\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"00920f38ce07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"WNAM\": pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"de90f38ced07c2e2f4df50b1f61d4194\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"9290f38c5d07c2e2f4df57b1f61d4196\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSessionAffinity: pulumi.String(\"cookie\"),\n\t\t\t\t\t\tSessionAffinityAttributes: \u0026cloudflare.LoadBalancerRuleOverridesSessionAffinityAttributesArgs{\n\t\t\t\t\t\t\tDrainDuration: pulumi.Float64(100),\n\t\t\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"x\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tRequireAllHeaders:    pulumi.Bool(true),\n\t\t\t\t\t\t\tSamesite:             pulumi.String(\"Auto\"),\n\t\t\t\t\t\t\tSecure:               pulumi.String(\"Auto\"),\n\t\t\t\t\t\t\tZeroDowntimeFailover: pulumi.String(\"sticky\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSessionAffinityTtl: pulumi.Float64(1800),\n\t\t\t\t\t\tSteeringPolicy:     pulumi.String(\"dynamic_latency\"),\n\t\t\t\t\t\tTtl:                pulumi.Float64(30),\n\t\t\t\t\t},\n\t\t\t\t\tPriority:   pulumi.Int(0),\n\t\t\t\t\tTerminates: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSessionAffinity: pulumi.String(\"cookie\"),\n\t\t\tSessionAffinityAttributes: \u0026cloudflare.LoadBalancerSessionAffinityAttributesArgs{\n\t\t\t\tDrainDuration: pulumi.Float64(100),\n\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"x\"),\n\t\t\t\t},\n\t\t\t\tRequireAllHeaders:    pulumi.Bool(true),\n\t\t\t\tSamesite:             pulumi.String(\"Auto\"),\n\t\t\t\tSecure:               pulumi.String(\"Auto\"),\n\t\t\t\tZeroDowntimeFailover: pulumi.String(\"sticky\"),\n\t\t\t},\n\t\t\tSessionAffinityTtl: pulumi.Float64(1800),\n\t\t\tSteeringPolicy:     pulumi.String(\"dynamic_latency\"),\n\t\t\tTtl:                pulumi.Float64(30),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LoadBalancer;\nimport com.pulumi.cloudflare.LoadBalancerArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerAdaptiveRoutingArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerLocationStrategyArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRandomSteeringArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleFixedResponseArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleOverridesArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleOverridesAdaptiveRoutingArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleOverridesLocationStrategyArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleOverridesRandomSteeringArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerRuleOverridesSessionAffinityAttributesArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerSessionAffinityAttributesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLoadBalancer = new LoadBalancer(\"exampleLoadBalancer\", LoadBalancerArgs.builder()\n            .zoneId(\"699d98642c564d2e855e9661899b7252\")\n            .defaultPools(            \n                \"17b5962d775c646f3f9725cbc7a53df4\",\n                \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                \"00920f38ce07c2e2f4df50b1f61d4194\")\n            .fallbackPool(\"fallback_pool\")\n            .name(\"www.example.com\")\n            .adaptiveRouting(LoadBalancerAdaptiveRoutingArgs.builder()\n                .failoverAcrossPools(true)\n                .build())\n            .countryPools(Map.ofEntries(\n                Map.entry(\"GB\", \"abd90f38ced07c2e2f4df50b1f61d4194\"),\n                Map.entry(\"US\",                 \n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"00920f38ce07c2e2f4df50b1f61d4194\")\n            ))\n            .description(\"Load Balancer for www.example.com\")\n            .locationStrategy(LoadBalancerLocationStrategyArgs.builder()\n                .mode(\"resolver_ip\")\n                .preferEcs(\"always\")\n                .build())\n            .networks(\"string\")\n            .popPools(Map.ofEntries(\n                Map.entry(\"LAX\",                 \n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\"),\n                Map.entry(\"LHR\",                 \n                    \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                    \"f9138c5d07c2e2f4df57b1f61d4196\"),\n                Map.entry(\"SJC\", \"00920f38ce07c2e2f4df50b1f61d4194\")\n            ))\n            .proxied(true)\n            .randomSteering(LoadBalancerRandomSteeringArgs.builder()\n                .defaultWeight(0.2)\n                .poolWeights(Map.ofEntries(\n                    Map.entry(\"9290f38c5d07c2e2f4df57b1f61d4196\", 0.5),\n                    Map.entry(\"de90f38ced07c2e2f4df50b1f61d4194\", 0.3)\n                ))\n                .build())\n            .regionPools(Map.ofEntries(\n                Map.entry(\"ENAM\", \"00920f38ce07c2e2f4df50b1f61d4194\"),\n                Map.entry(\"WNAM\",                 \n                    \"de90f38ced07c2e2f4df50b1f61d4194\",\n                    \"9290f38c5d07c2e2f4df57b1f61d4196\")\n            ))\n            .rules(LoadBalancerRuleArgs.builder()\n                .condition(\"http.request.uri.path contains \\\"/testing\\\"\")\n                .disabled(true)\n                .fixedResponse(LoadBalancerRuleFixedResponseArgs.builder()\n                    .contentType(\"application/json\")\n                    .location(\"www.example.com\")\n                    .messageBody(\"Testing Hello\")\n                    .statusCode(0)\n                    .build())\n                .name(\"route the path /testing to testing datacenter.\")\n                .overrides(LoadBalancerRuleOverridesArgs.builder()\n                    .adaptiveRouting(LoadBalancerRuleOverridesAdaptiveRoutingArgs.builder()\n                        .failoverAcrossPools(true)\n                        .build())\n                    .countryPools(Map.ofEntries(\n                        Map.entry(\"GB\", \"abd90f38ced07c2e2f4df50b1f61d4194\"),\n                        Map.entry(\"US\",                         \n                            \"de90f38ced07c2e2f4df50b1f61d4194\",\n                            \"00920f38ce07c2e2f4df50b1f61d4194\")\n                    ))\n                    .defaultPools(                    \n                        \"17b5962d775c646f3f9725cbc7a53df4\",\n                        \"9290f38c5d07c2e2f4df57b1f61d4196\",\n                        \"00920f38ce07c2e2f4df50b1f61d4194\")\n                    .fallbackPool(\"fallback_pool\")\n                    .locationStrategy(LoadBalancerRuleOverridesLocationStrategyArgs.builder()\n                        .mode(\"resolver_ip\")\n                        .preferEcs(\"always\")\n                        .build())\n                    .popPools(Map.ofEntries(\n                        Map.entry(\"LAX\",                         \n                            \"de90f38ced07c2e2f4df50b1f61d4194\",\n                            \"9290f38c5d07c2e2f4df57b1f61d4196\"),\n                        Map.entry(\"LHR\",                         \n                            \"abd90f38ced07c2e2f4df50b1f61d4194\",\n                            \"f9138c5d07c2e2f4df57b1f61d4196\"),\n                        Map.entry(\"SJC\", \"00920f38ce07c2e2f4df50b1f61d4194\")\n                    ))\n                    .randomSteering(LoadBalancerRuleOverridesRandomSteeringArgs.builder()\n                        .defaultWeight(0.2)\n                        .poolWeights(Map.ofEntries(\n                            Map.entry(\"9290f38c5d07c2e2f4df57b1f61d4196\", 0.5),\n                            Map.entry(\"de90f38ced07c2e2f4df50b1f61d4194\", 0.3)\n                        ))\n                        .build())\n                    .regionPools(Map.ofEntries(\n                        Map.entry(\"ENAM\", \"00920f38ce07c2e2f4df50b1f61d4194\"),\n                        Map.entry(\"WNAM\",                         \n                            \"de90f38ced07c2e2f4df50b1f61d4194\",\n                            \"9290f38c5d07c2e2f4df57b1f61d4196\")\n                    ))\n                    .sessionAffinity(\"cookie\")\n                    .sessionAffinityAttributes(LoadBalancerRuleOverridesSessionAffinityAttributesArgs.builder()\n                        .drainDuration(100.0)\n                        .headers(\"x\")\n                        .requireAllHeaders(true)\n                        .samesite(\"Auto\")\n                        .secure(\"Auto\")\n                        .zeroDowntimeFailover(\"sticky\")\n                        .build())\n                    .sessionAffinityTtl(1800.0)\n                    .steeringPolicy(\"dynamic_latency\")\n                    .ttl(30.0)\n                    .build())\n                .priority(0)\n                .terminates(true)\n                .build())\n            .sessionAffinity(\"cookie\")\n            .sessionAffinityAttributes(LoadBalancerSessionAffinityAttributesArgs.builder()\n                .drainDuration(100.0)\n                .headers(\"x\")\n                .requireAllHeaders(true)\n                .samesite(\"Auto\")\n                .secure(\"Auto\")\n                .zeroDowntimeFailover(\"sticky\")\n                .build())\n            .sessionAffinityTtl(1800.0)\n            .steeringPolicy(\"dynamic_latency\")\n            .ttl(30.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLoadBalancer:\n    type: cloudflare:LoadBalancer\n    name: example_load_balancer\n    properties:\n      zoneId: 699d98642c564d2e855e9661899b7252\n      defaultPools:\n        - 17b5962d775c646f3f9725cbc7a53df4\n        - 9290f38c5d07c2e2f4df57b1f61d4196\n        - 00920f38ce07c2e2f4df50b1f61d4194\n      fallbackPool: fallback_pool\n      name: www.example.com\n      adaptiveRouting:\n        failoverAcrossPools: true\n      countryPools:\n        GB:\n          - abd90f38ced07c2e2f4df50b1f61d4194\n        US:\n          - de90f38ced07c2e2f4df50b1f61d4194\n          - 00920f38ce07c2e2f4df50b1f61d4194\n      description: Load Balancer for www.example.com\n      locationStrategy:\n        mode: resolver_ip\n        preferEcs: always\n      networks:\n        - string\n      popPools:\n        LAX:\n          - de90f38ced07c2e2f4df50b1f61d4194\n          - 9290f38c5d07c2e2f4df57b1f61d4196\n        LHR:\n          - abd90f38ced07c2e2f4df50b1f61d4194\n          - f9138c5d07c2e2f4df57b1f61d4196\n        SJC:\n          - 00920f38ce07c2e2f4df50b1f61d4194\n      proxied: true\n      randomSteering:\n        defaultWeight: 0.2\n        poolWeights:\n          9290f38c5d07c2e2f4df57b1f61d4196: 0.5\n          de90f38ced07c2e2f4df50b1f61d4194: 0.3\n      regionPools:\n        ENAM:\n          - 00920f38ce07c2e2f4df50b1f61d4194\n        WNAM:\n          - de90f38ced07c2e2f4df50b1f61d4194\n          - 9290f38c5d07c2e2f4df57b1f61d4196\n      rules:\n        - condition: http.request.uri.path contains \"/testing\"\n          disabled: true\n          fixedResponse:\n            contentType: application/json\n            location: www.example.com\n            messageBody: Testing Hello\n            statusCode: 0\n          name: route the path /testing to testing datacenter.\n          overrides:\n            adaptiveRouting:\n              failoverAcrossPools: true\n            countryPools:\n              GB:\n                - abd90f38ced07c2e2f4df50b1f61d4194\n              US:\n                - de90f38ced07c2e2f4df50b1f61d4194\n                - 00920f38ce07c2e2f4df50b1f61d4194\n            defaultPools:\n              - 17b5962d775c646f3f9725cbc7a53df4\n              - 9290f38c5d07c2e2f4df57b1f61d4196\n              - 00920f38ce07c2e2f4df50b1f61d4194\n            fallbackPool: fallback_pool\n            locationStrategy:\n              mode: resolver_ip\n              preferEcs: always\n            popPools:\n              LAX:\n                - de90f38ced07c2e2f4df50b1f61d4194\n                - 9290f38c5d07c2e2f4df57b1f61d4196\n              LHR:\n                - abd90f38ced07c2e2f4df50b1f61d4194\n                - f9138c5d07c2e2f4df57b1f61d4196\n              SJC:\n                - 00920f38ce07c2e2f4df50b1f61d4194\n            randomSteering:\n              defaultWeight: 0.2\n              poolWeights:\n                9290f38c5d07c2e2f4df57b1f61d4196: 0.5\n                de90f38ced07c2e2f4df50b1f61d4194: 0.3\n            regionPools:\n              ENAM:\n                - 00920f38ce07c2e2f4df50b1f61d4194\n              WNAM:\n                - de90f38ced07c2e2f4df50b1f61d4194\n                - 9290f38c5d07c2e2f4df57b1f61d4196\n            sessionAffinity: cookie\n            sessionAffinityAttributes:\n              drainDuration: 100\n              headers:\n                - x\n              requireAllHeaders: true\n              samesite: Auto\n              secure: Auto\n              zeroDowntimeFailover: sticky\n            sessionAffinityTtl: 1800\n            steeringPolicy: dynamic_latency\n            ttl: 30\n          priority: 0\n          terminates: true\n      sessionAffinity: cookie\n      sessionAffinityAttributes:\n        drainDuration: 100\n        headers:\n          - x\n        requireAllHeaders: true\n        samesite: Auto\n        secure: Auto\n        zeroDowntimeFailover: sticky\n      sessionAffinityTtl: 1800\n      steeringPolicy: dynamic_latency\n      ttl: 30\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/loadBalancer:LoadBalancer example '\u003czone_id\u003e/\u003cload_balancer_id\u003e'\n```\n\n",
            "properties": {
                "adaptiveRouting": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerAdaptiveRouting:LoadBalancerAdaptiveRouting",
                    "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                },
                "countryPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "defaultPools": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Object description.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) this load balancer.\n"
                },
                "fallbackPool": {
                    "type": "string",
                    "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                },
                "locationStrategy": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerLocationStrategy:LoadBalancerLocationStrategy",
                    "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of networks where Load Balancer or Pool is enabled.\n"
                },
                "popPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the hostname should be gray clouded (false) or orange clouded (true).\n"
                },
                "randomSteering": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRandomSteering:LoadBalancerRandomSteering",
                    "description": "Configures pool weights.\n"
                },
                "regionPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerRule:LoadBalancerRule"
                    },
                    "description": "BETA Field Not General Access: A list of rules for this load balancer to execute.\n"
                },
                "sessionAffinity": {
                    "type": "string",
                    "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                },
                "sessionAffinityAttributes": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerSessionAffinityAttributes:LoadBalancerSessionAffinityAttributes",
                    "description": "Configures attributes for session affinity.\n"
                },
                "sessionAffinityTtl": {
                    "type": "number",
                    "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                },
                "steeringPolicy": {
                    "type": "string",
                    "description": "Steering Policy for this load balancer.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                },
                "zoneId": {
                    "type": "string"
                },
                "zoneName": {
                    "type": "string"
                }
            },
            "required": [
                "adaptiveRouting",
                "countryPools",
                "createdOn",
                "defaultPools",
                "description",
                "enabled",
                "fallbackPool",
                "locationStrategy",
                "modifiedOn",
                "name",
                "networks",
                "popPools",
                "proxied",
                "randomSteering",
                "regionPools",
                "rules",
                "sessionAffinity",
                "sessionAffinityAttributes",
                "sessionAffinityTtl",
                "steeringPolicy",
                "ttl",
                "zoneName"
            ],
            "inputProperties": {
                "adaptiveRouting": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerAdaptiveRouting:LoadBalancerAdaptiveRouting",
                    "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                },
                "countryPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                },
                "defaultPools": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Object description.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) this load balancer.\n"
                },
                "fallbackPool": {
                    "type": "string",
                    "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                },
                "locationStrategy": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerLocationStrategy:LoadBalancerLocationStrategy",
                    "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of networks where Load Balancer or Pool is enabled.\n"
                },
                "popPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the hostname should be gray clouded (false) or orange clouded (true).\n"
                },
                "randomSteering": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerRandomSteering:LoadBalancerRandomSteering",
                    "description": "Configures pool weights.\n"
                },
                "regionPools": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerRule:LoadBalancerRule"
                    },
                    "description": "BETA Field Not General Access: A list of rules for this load balancer to execute.\n"
                },
                "sessionAffinity": {
                    "type": "string",
                    "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                },
                "sessionAffinityAttributes": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerSessionAffinityAttributes:LoadBalancerSessionAffinityAttributes",
                    "description": "Configures attributes for session affinity.\n"
                },
                "sessionAffinityTtl": {
                    "type": "number",
                    "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                },
                "steeringPolicy": {
                    "type": "string",
                    "description": "Steering Policy for this load balancer.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "defaultPools",
                "fallbackPool",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LoadBalancer resources.\n",
                "properties": {
                    "adaptiveRouting": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerAdaptiveRouting:LoadBalancerAdaptiveRouting",
                        "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                    },
                    "countryPools": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "defaultPools": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Object description.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether to enable (the default) this load balancer.\n"
                    },
                    "fallbackPool": {
                        "type": "string",
                        "description": "The pool ID to use when all other pools are detected as unhealthy.\n"
                    },
                    "locationStrategy": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerLocationStrategy:LoadBalancerLocationStrategy",
                        "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.\n"
                    },
                    "networks": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of networks where Load Balancer or Pool is enabled.\n"
                    },
                    "popPools": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                    },
                    "proxied": {
                        "type": "boolean",
                        "description": "Whether the hostname should be gray clouded (false) or orange clouded (true).\n"
                    },
                    "randomSteering": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerRandomSteering:LoadBalancerRandomSteering",
                        "description": "Configures pool weights.\n"
                    },
                    "regionPools": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/LoadBalancerRule:LoadBalancerRule"
                        },
                        "description": "BETA Field Not General Access: A list of rules for this load balancer to execute.\n"
                    },
                    "sessionAffinity": {
                        "type": "string",
                        "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n"
                    },
                    "sessionAffinityAttributes": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerSessionAffinityAttributes:LoadBalancerSessionAffinityAttributes",
                        "description": "Configures attributes for session affinity.\n"
                    },
                    "sessionAffinityTtl": {
                        "type": "number",
                        "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n"
                    },
                    "steeringPolicy": {
                        "type": "string",
                        "description": "Steering Policy for this load balancer.\n"
                    },
                    "ttl": {
                        "type": "number",
                        "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n"
                    },
                    "zoneId": {
                        "type": "string"
                    },
                    "zoneName": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/loadBalancerMonitor:LoadBalancerMonitor": {
            "description": "Accepted Permissions\n\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancerMonitor = new cloudflare.LoadBalancerMonitor(\"example_load_balancer_monitor\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    allowInsecure: true,\n    consecutiveDown: 0,\n    consecutiveUp: 0,\n    description: \"Login page monitor\",\n    expectedBody: \"alive\",\n    expectedCodes: \"2xx\",\n    followRedirects: true,\n    header: {\n        Host: [\"example.com\"],\n        \"X-App-ID\": [\"abc123\"],\n    },\n    interval: 0,\n    method: \"GET\",\n    path: \"/health\",\n    port: 0,\n    probeZone: \"example.com\",\n    retries: 0,\n    timeout: 0,\n    type: \"https\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer_monitor = cloudflare.LoadBalancerMonitor(\"example_load_balancer_monitor\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    allow_insecure=True,\n    consecutive_down=0,\n    consecutive_up=0,\n    description=\"Login page monitor\",\n    expected_body=\"alive\",\n    expected_codes=\"2xx\",\n    follow_redirects=True,\n    header={\n        \"Host\": [\"example.com\"],\n        \"X-App-ID\": [\"abc123\"],\n    },\n    interval=0,\n    method=\"GET\",\n    path=\"/health\",\n    port=0,\n    probe_zone=\"example.com\",\n    retries=0,\n    timeout=0,\n    type=\"https\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancerMonitor = new Cloudflare.Index.LoadBalancerMonitor(\"example_load_balancer_monitor\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AllowInsecure = true,\n        ConsecutiveDown = 0,\n        ConsecutiveUp = 0,\n        Description = \"Login page monitor\",\n        ExpectedBody = \"alive\",\n        ExpectedCodes = \"2xx\",\n        FollowRedirects = true,\n        Header = \n        {\n            { \"Host\", new[]\n            {\n                \"example.com\",\n            } },\n            { \"X-App-ID\", new[]\n            {\n                \"abc123\",\n            } },\n        },\n        Interval = 0,\n        Method = \"GET\",\n        Path = \"/health\",\n        Port = 0,\n        ProbeZone = \"example.com\",\n        Retries = 0,\n        Timeout = 0,\n        Type = \"https\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLoadBalancerMonitor(ctx, \"example_load_balancer_monitor\", \u0026cloudflare.LoadBalancerMonitorArgs{\n\t\t\tAccountId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAllowInsecure:   pulumi.Bool(true),\n\t\t\tConsecutiveDown: pulumi.Int(0),\n\t\t\tConsecutiveUp:   pulumi.Int(0),\n\t\t\tDescription:     pulumi.String(\"Login page monitor\"),\n\t\t\tExpectedBody:    pulumi.String(\"alive\"),\n\t\t\tExpectedCodes:   pulumi.String(\"2xx\"),\n\t\t\tFollowRedirects: pulumi.Bool(true),\n\t\t\tHeader: pulumi.StringArrayMap{\n\t\t\t\t\"Host\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\t},\n\t\t\t\t\"X-App-ID\": pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"abc123\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tInterval:  pulumi.Int(0),\n\t\t\tMethod:    pulumi.String(\"GET\"),\n\t\t\tPath:      pulumi.String(\"/health\"),\n\t\t\tPort:      pulumi.Int(0),\n\t\t\tProbeZone: pulumi.String(\"example.com\"),\n\t\t\tRetries:   pulumi.Int(0),\n\t\t\tTimeout:   pulumi.Int(0),\n\t\t\tType:      pulumi.String(\"https\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LoadBalancerMonitor;\nimport com.pulumi.cloudflare.LoadBalancerMonitorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLoadBalancerMonitor = new LoadBalancerMonitor(\"exampleLoadBalancerMonitor\", LoadBalancerMonitorArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .allowInsecure(true)\n            .consecutiveDown(0)\n            .consecutiveUp(0)\n            .description(\"Login page monitor\")\n            .expectedBody(\"alive\")\n            .expectedCodes(\"2xx\")\n            .followRedirects(true)\n            .header(Map.ofEntries(\n                Map.entry(\"Host\", \"example.com\"),\n                Map.entry(\"X-App-ID\", \"abc123\")\n            ))\n            .interval(0)\n            .method(\"GET\")\n            .path(\"/health\")\n            .port(0)\n            .probeZone(\"example.com\")\n            .retries(0)\n            .timeout(0)\n            .type(\"https\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLoadBalancerMonitor:\n    type: cloudflare:LoadBalancerMonitor\n    name: example_load_balancer_monitor\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      allowInsecure: true\n      consecutiveDown: 0\n      consecutiveUp: 0\n      description: Login page monitor\n      expectedBody: alive\n      expectedCodes: 2xx\n      followRedirects: true\n      header:\n        Host:\n          - example.com\n        X-App-ID:\n          - abc123\n      interval: 0\n      method: GET\n      path: /health\n      port: 0\n      probeZone: example.com\n      retries: 0\n      timeout: 0\n      type: https\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/loadBalancerMonitor:LoadBalancerMonitor example '\u003caccount_id\u003e/\u003cmonitor_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Do not validate the certificate when monitor use HTTPS. This parameter is currently only valid for HTTP and HTTPS monitors.\n"
                },
                "consecutiveDown": {
                    "type": "integer",
                    "description": "To be marked unhealthy the monitored origin must fail this healthcheck N consecutive times.\n"
                },
                "consecutiveUp": {
                    "type": "integer",
                    "description": "To be marked healthy the monitored origin must pass this healthcheck N consecutive times.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Object description.\n"
                },
                "expectedBody": {
                    "type": "string",
                    "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "expectedCodes": {
                    "type": "string",
                    "description": "The expected HTTP response code or code range of the health check. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Follow redirects if returned by the origin. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "header": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "The interval between each health check. Shorter intervals may improve failover time, but will increase load on the origins as we check from multiple locations.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The method to use for the health check. This defaults to 'GET' for HTTP/HTTPS based checks and 'connection_established' for TCP based health checks.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "path": {
                    "type": "string",
                    "description": "The endpoint path you want to conduct a health check against. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "The port number to connect to for the health check. Required for TCP, UDP, and SMTP checks. HTTP and HTTPS checks should only define the port when using a non-standard port (HTTP: default 80, HTTPS: default 443).\n"
                },
                "probeZone": {
                    "type": "string",
                    "description": "Assign this monitor to emulate the specified zone while probing. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The timeout (in seconds) before marking the health check as failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP','HTTPS', 'TCP', 'ICMP-PING', 'UDP-ICMP', and 'SMTP'.\nAvailable values: \"http\", \"https\", \"tcp\", \"udp*icmp\", \"icmp*ping\", \"smtp\".\n"
                }
            },
            "required": [
                "allowInsecure",
                "createdOn",
                "description",
                "expectedBody",
                "expectedCodes",
                "followRedirects",
                "interval",
                "method",
                "modifiedOn",
                "path",
                "probeZone",
                "retries",
                "timeout",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Do not validate the certificate when monitor use HTTPS. This parameter is currently only valid for HTTP and HTTPS monitors.\n"
                },
                "consecutiveDown": {
                    "type": "integer",
                    "description": "To be marked unhealthy the monitored origin must fail this healthcheck N consecutive times.\n"
                },
                "consecutiveUp": {
                    "type": "integer",
                    "description": "To be marked healthy the monitored origin must pass this healthcheck N consecutive times.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Object description.\n"
                },
                "expectedBody": {
                    "type": "string",
                    "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "expectedCodes": {
                    "type": "string",
                    "description": "The expected HTTP response code or code range of the health check. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Follow redirects if returned by the origin. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "header": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "The interval between each health check. Shorter intervals may improve failover time, but will increase load on the origins as we check from multiple locations.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The method to use for the health check. This defaults to 'GET' for HTTP/HTTPS based checks and 'connection_established' for TCP based health checks.\n"
                },
                "path": {
                    "type": "string",
                    "description": "The endpoint path you want to conduct a health check against. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "port": {
                    "type": "integer",
                    "description": "The port number to connect to for the health check. Required for TCP, UDP, and SMTP checks. HTTP and HTTPS checks should only define the port when using a non-standard port (HTTP: default 80, HTTPS: default 443).\n"
                },
                "probeZone": {
                    "type": "string",
                    "description": "Assign this monitor to emulate the specified zone while probing. This parameter is only valid for HTTP and HTTPS monitors.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The timeout (in seconds) before marking the health check as failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP','HTTPS', 'TCP', 'ICMP-PING', 'UDP-ICMP', and 'SMTP'.\nAvailable values: \"http\", \"https\", \"tcp\", \"udp*icmp\", \"icmp*ping\", \"smtp\".\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LoadBalancerMonitor resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "allowInsecure": {
                        "type": "boolean",
                        "description": "Do not validate the certificate when monitor use HTTPS. This parameter is currently only valid for HTTP and HTTPS monitors.\n"
                    },
                    "consecutiveDown": {
                        "type": "integer",
                        "description": "To be marked unhealthy the monitored origin must fail this healthcheck N consecutive times.\n"
                    },
                    "consecutiveUp": {
                        "type": "integer",
                        "description": "To be marked healthy the monitored origin must pass this healthcheck N consecutive times.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "Object description.\n"
                    },
                    "expectedBody": {
                        "type": "string",
                        "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy. This parameter is only valid for HTTP and HTTPS monitors.\n"
                    },
                    "expectedCodes": {
                        "type": "string",
                        "description": "The expected HTTP response code or code range of the health check. This parameter is only valid for HTTP and HTTPS monitors.\n"
                    },
                    "followRedirects": {
                        "type": "boolean",
                        "description": "Follow redirects if returned by the origin. This parameter is only valid for HTTP and HTTPS monitors.\n"
                    },
                    "header": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden. This parameter is only valid for HTTP and HTTPS monitors.\n"
                    },
                    "interval": {
                        "type": "integer",
                        "description": "The interval between each health check. Shorter intervals may improve failover time, but will increase load on the origins as we check from multiple locations.\n"
                    },
                    "method": {
                        "type": "string",
                        "description": "The method to use for the health check. This defaults to 'GET' for HTTP/HTTPS based checks and 'connection_established' for TCP based health checks.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "path": {
                        "type": "string",
                        "description": "The endpoint path you want to conduct a health check against. This parameter is only valid for HTTP and HTTPS monitors.\n"
                    },
                    "port": {
                        "type": "integer",
                        "description": "The port number to connect to for the health check. Required for TCP, UDP, and SMTP checks. HTTP and HTTPS checks should only define the port when using a non-standard port (HTTP: default 80, HTTPS: default 443).\n"
                    },
                    "probeZone": {
                        "type": "string",
                        "description": "Assign this monitor to emulate the specified zone while probing. This parameter is only valid for HTTP and HTTPS monitors.\n"
                    },
                    "retries": {
                        "type": "integer",
                        "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n"
                    },
                    "timeout": {
                        "type": "integer",
                        "description": "The timeout (in seconds) before marking the health check as failed.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP','HTTPS', 'TCP', 'ICMP-PING', 'UDP-ICMP', and 'SMTP'.\nAvailable values: \"http\", \"https\", \"tcp\", \"udp*icmp\", \"icmp*ping\", \"smtp\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/loadBalancerPool:LoadBalancerPool": {
            "description": "Accepted Permissions\n\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancerPool = new cloudflare.LoadBalancerPool(\"example_load_balancer_pool\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"primary-dc-1\",\n    origins: [{\n        address: \"0.0.0.0\",\n        enabled: true,\n        flattenCname: true,\n        header: {\n            host: [\"example.com\"],\n        },\n        name: \"app-server-1\",\n        port: 0,\n        virtualNetworkId: \"a5624d4e-044a-4ff0-b3e1-e2465353d4b4\",\n        weight: 0.6,\n    }],\n    description: \"Primary data center - Provider XYZ\",\n    enabled: false,\n    latitude: 0,\n    loadShedding: {\n        defaultPercent: 0,\n        defaultPolicy: \"random\",\n        sessionPercent: 0,\n        sessionPolicy: \"hash\",\n    },\n    longitude: 0,\n    minimumOrigins: 0,\n    monitor: \"monitor\",\n    monitorGroup: \"monitor_group\",\n    notificationEmail: \"someone@example.com,sometwo@example.com\",\n    notificationFilter: {\n        origin: {\n            disable: true,\n            healthy: true,\n        },\n        pool: {\n            disable: true,\n            healthy: false,\n        },\n    },\n    originSteering: {\n        policy: \"random\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer_pool = cloudflare.LoadBalancerPool(\"example_load_balancer_pool\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"primary-dc-1\",\n    origins=[{\n        \"address\": \"0.0.0.0\",\n        \"enabled\": True,\n        \"flatten_cname\": True,\n        \"header\": {\n            \"host\": [\"example.com\"],\n        },\n        \"name\": \"app-server-1\",\n        \"port\": 0,\n        \"virtual_network_id\": \"a5624d4e-044a-4ff0-b3e1-e2465353d4b4\",\n        \"weight\": 0.6,\n    }],\n    description=\"Primary data center - Provider XYZ\",\n    enabled=False,\n    latitude=0,\n    load_shedding={\n        \"default_percent\": 0,\n        \"default_policy\": \"random\",\n        \"session_percent\": 0,\n        \"session_policy\": \"hash\",\n    },\n    longitude=0,\n    minimum_origins=0,\n    monitor=\"monitor\",\n    monitor_group=\"monitor_group\",\n    notification_email=\"someone@example.com,sometwo@example.com\",\n    notification_filter={\n        \"origin\": {\n            \"disable\": True,\n            \"healthy\": True,\n        },\n        \"pool\": {\n            \"disable\": True,\n            \"healthy\": False,\n        },\n    },\n    origin_steering={\n        \"policy\": \"random\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancerPool = new Cloudflare.Index.LoadBalancerPool(\"example_load_balancer_pool\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"primary-dc-1\",\n        Origins = new[]\n        {\n            new Cloudflare.Inputs.LoadBalancerPoolOriginArgs\n            {\n                Address = \"0.0.0.0\",\n                Enabled = true,\n                FlattenCname = true,\n                Header = new Cloudflare.Inputs.LoadBalancerPoolOriginHeaderArgs\n                {\n                    Host = new[]\n                    {\n                        \"example.com\",\n                    },\n                },\n                Name = \"app-server-1\",\n                Port = 0,\n                VirtualNetworkId = \"a5624d4e-044a-4ff0-b3e1-e2465353d4b4\",\n                Weight = 0.6,\n            },\n        },\n        Description = \"Primary data center - Provider XYZ\",\n        Enabled = false,\n        Latitude = 0,\n        LoadShedding = new Cloudflare.Inputs.LoadBalancerPoolLoadSheddingArgs\n        {\n            DefaultPercent = 0,\n            DefaultPolicy = \"random\",\n            SessionPercent = 0,\n            SessionPolicy = \"hash\",\n        },\n        Longitude = 0,\n        MinimumOrigins = 0,\n        Monitor = \"monitor\",\n        MonitorGroup = \"monitor_group\",\n        NotificationEmail = \"someone@example.com,sometwo@example.com\",\n        NotificationFilter = new Cloudflare.Inputs.LoadBalancerPoolNotificationFilterArgs\n        {\n            Origin = new Cloudflare.Inputs.LoadBalancerPoolNotificationFilterOriginArgs\n            {\n                Disable = true,\n                Healthy = true,\n            },\n            Pool = new Cloudflare.Inputs.LoadBalancerPoolNotificationFilterPoolArgs\n            {\n                Disable = true,\n                Healthy = false,\n            },\n        },\n        OriginSteering = new Cloudflare.Inputs.LoadBalancerPoolOriginSteeringArgs\n        {\n            Policy = \"random\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLoadBalancerPool(ctx, \"example_load_balancer_pool\", \u0026cloudflare.LoadBalancerPoolArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"primary-dc-1\"),\n\t\t\tOrigins: cloudflare.LoadBalancerPoolOriginArray{\n\t\t\t\t\u0026cloudflare.LoadBalancerPoolOriginArgs{\n\t\t\t\t\tAddress:      pulumi.String(\"0.0.0.0\"),\n\t\t\t\t\tEnabled:      pulumi.Bool(true),\n\t\t\t\t\tFlattenCname: pulumi.Bool(true),\n\t\t\t\t\tHeader: \u0026cloudflare.LoadBalancerPoolOriginHeaderArgs{\n\t\t\t\t\t\tHost: []string{\n\t\t\t\t\t\t\t\"example.com\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tName:             pulumi.String(\"app-server-1\"),\n\t\t\t\t\tPort:             pulumi.Int(0),\n\t\t\t\t\tVirtualNetworkId: pulumi.String(\"a5624d4e-044a-4ff0-b3e1-e2465353d4b4\"),\n\t\t\t\t\tWeight:           pulumi.Float64(0.6),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Primary data center - Provider XYZ\"),\n\t\t\tEnabled:     pulumi.Bool(false),\n\t\t\tLatitude:    pulumi.Float64(0),\n\t\t\tLoadShedding: \u0026cloudflare.LoadBalancerPoolLoadSheddingArgs{\n\t\t\t\tDefaultPercent: pulumi.Float64(0),\n\t\t\t\tDefaultPolicy:  pulumi.String(\"random\"),\n\t\t\t\tSessionPercent: pulumi.Float64(0),\n\t\t\t\tSessionPolicy:  pulumi.String(\"hash\"),\n\t\t\t},\n\t\t\tLongitude:         pulumi.Float64(0),\n\t\t\tMinimumOrigins:    pulumi.Int(0),\n\t\t\tMonitor:           pulumi.String(\"monitor\"),\n\t\t\tMonitorGroup:      pulumi.String(\"monitor_group\"),\n\t\t\tNotificationEmail: pulumi.String(\"someone@example.com,sometwo@example.com\"),\n\t\t\tNotificationFilter: \u0026cloudflare.LoadBalancerPoolNotificationFilterArgs{\n\t\t\t\tOrigin: \u0026cloudflare.LoadBalancerPoolNotificationFilterOriginArgs{\n\t\t\t\t\tDisable: pulumi.Bool(true),\n\t\t\t\t\tHealthy: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tPool: \u0026cloudflare.LoadBalancerPoolNotificationFilterPoolArgs{\n\t\t\t\t\tDisable: pulumi.Bool(true),\n\t\t\t\t\tHealthy: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOriginSteering: \u0026cloudflare.LoadBalancerPoolOriginSteeringArgs{\n\t\t\t\tPolicy: pulumi.String(\"random\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LoadBalancerPool;\nimport com.pulumi.cloudflare.LoadBalancerPoolArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolOriginArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolOriginHeaderArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolLoadSheddingArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolNotificationFilterArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolNotificationFilterOriginArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolNotificationFilterPoolArgs;\nimport com.pulumi.cloudflare.inputs.LoadBalancerPoolOriginSteeringArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLoadBalancerPool = new LoadBalancerPool(\"exampleLoadBalancerPool\", LoadBalancerPoolArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"primary-dc-1\")\n            .origins(LoadBalancerPoolOriginArgs.builder()\n                .address(\"0.0.0.0\")\n                .enabled(true)\n                .flattenCname(true)\n                .header(LoadBalancerPoolOriginHeaderArgs.builder()\n                    .host(List.of(\"example.com\"))\n                    .build())\n                .name(\"app-server-1\")\n                .port(0)\n                .virtualNetworkId(\"a5624d4e-044a-4ff0-b3e1-e2465353d4b4\")\n                .weight(0.6)\n                .build())\n            .description(\"Primary data center - Provider XYZ\")\n            .enabled(false)\n            .latitude(0.0)\n            .loadShedding(LoadBalancerPoolLoadSheddingArgs.builder()\n                .defaultPercent(0.0)\n                .defaultPolicy(\"random\")\n                .sessionPercent(0.0)\n                .sessionPolicy(\"hash\")\n                .build())\n            .longitude(0.0)\n            .minimumOrigins(0)\n            .monitor(\"monitor\")\n            .monitorGroup(\"monitor_group\")\n            .notificationEmail(\"someone@example.com,sometwo@example.com\")\n            .notificationFilter(LoadBalancerPoolNotificationFilterArgs.builder()\n                .origin(LoadBalancerPoolNotificationFilterOriginArgs.builder()\n                    .disable(true)\n                    .healthy(true)\n                    .build())\n                .pool(LoadBalancerPoolNotificationFilterPoolArgs.builder()\n                    .disable(true)\n                    .healthy(false)\n                    .build())\n                .build())\n            .originSteering(LoadBalancerPoolOriginSteeringArgs.builder()\n                .policy(\"random\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLoadBalancerPool:\n    type: cloudflare:LoadBalancerPool\n    name: example_load_balancer_pool\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: primary-dc-1\n      origins:\n        - address: 0.0.0.0\n          enabled: true\n          flattenCname: true\n          header:\n            host:\n              - example.com\n          name: app-server-1\n          port: 0\n          virtualNetworkId: a5624d4e-044a-4ff0-b3e1-e2465353d4b4\n          weight: 0.6\n      description: Primary data center - Provider XYZ\n      enabled: false\n      latitude: 0\n      loadShedding:\n        defaultPercent: 0\n        defaultPolicy: random\n        sessionPercent: 0\n        sessionPolicy: hash\n      longitude: 0\n      minimumOrigins: 0\n      monitor: monitor\n      monitorGroup: monitor_group\n      notificationEmail: someone@example.com,sometwo@example.com\n      notificationFilter:\n        origin:\n          disable: true\n          healthy: true\n        pool:\n          disable: true\n          healthy: false\n      originSteering:\n        policy: random\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/loadBalancerPool:LoadBalancerPool example '\u003caccount_id\u003e/\u003cpool_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "checkRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of regions from which to run health checks. Null means every Cloudflare data center.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description of the pool.\n"
                },
                "disabledAt": {
                    "type": "string",
                    "description": "This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any).\n"
                },
                "latitude": {
                    "type": "number",
                    "description": "The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set.\n"
                },
                "loadShedding": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolLoadShedding:LoadBalancerPoolLoadShedding",
                    "description": "Configures load shedding policies and percentages for the pool.\n"
                },
                "longitude": {
                    "type": "number",
                    "description": "The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set.\n"
                },
                "minimumOrigins": {
                    "type": "integer",
                    "description": "The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "monitor": {
                    "type": "string",
                    "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n"
                },
                "monitorGroup": {
                    "type": "string",
                    "description": "The ID of the Monitor Group to use for checking the health of origins within this pool.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of networks where Load Balancer or Pool is enabled.\n"
                },
                "notificationEmail": {
                    "type": "string",
                    "description": "This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list.\n"
                },
                "notificationFilter": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolNotificationFilter:LoadBalancerPoolNotificationFilter",
                    "description": "Filter pool and origin health notifications by resource type or health status. Use null to reset.\n"
                },
                "originSteering": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolOriginSteering:LoadBalancerPoolOriginSteering",
                    "description": "Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.\n"
                },
                "origins": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerPoolOrigin:LoadBalancerPoolOrigin"
                    },
                    "description": "The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.\n"
                }
            },
            "required": [
                "createdOn",
                "description",
                "disabledAt",
                "enabled",
                "loadShedding",
                "minimumOrigins",
                "modifiedOn",
                "name",
                "networks",
                "notificationEmail",
                "notificationFilter",
                "originSteering",
                "origins"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "checkRegions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of regions from which to run health checks. Null means every Cloudflare data center.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description of the pool.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any).\n"
                },
                "latitude": {
                    "type": "number",
                    "description": "The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set.\n"
                },
                "loadShedding": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolLoadShedding:LoadBalancerPoolLoadShedding",
                    "description": "Configures load shedding policies and percentages for the pool.\n"
                },
                "longitude": {
                    "type": "number",
                    "description": "The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set.\n"
                },
                "minimumOrigins": {
                    "type": "integer",
                    "description": "The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool.\n"
                },
                "monitor": {
                    "type": "string",
                    "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n"
                },
                "monitorGroup": {
                    "type": "string",
                    "description": "The ID of the Monitor Group to use for checking the health of origins within this pool.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed.\n"
                },
                "notificationEmail": {
                    "type": "string",
                    "description": "This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list.\n"
                },
                "notificationFilter": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolNotificationFilter:LoadBalancerPoolNotificationFilter",
                    "description": "Filter pool and origin health notifications by resource type or health status. Use null to reset.\n"
                },
                "originSteering": {
                    "$ref": "#/types/cloudflare:index/LoadBalancerPoolOriginSteering:LoadBalancerPoolOriginSteering",
                    "description": "Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.\n"
                },
                "origins": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerPoolOrigin:LoadBalancerPoolOrigin"
                    },
                    "description": "The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.\n"
                }
            },
            "requiredInputs": [
                "name",
                "origins"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LoadBalancerPool resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "checkRegions": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of regions from which to run health checks. Null means every Cloudflare data center.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "A human-readable description of the pool.\n"
                    },
                    "disabledAt": {
                        "type": "string",
                        "description": "This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any).\n"
                    },
                    "latitude": {
                        "type": "number",
                        "description": "The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set.\n"
                    },
                    "loadShedding": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerPoolLoadShedding:LoadBalancerPoolLoadShedding",
                        "description": "Configures load shedding policies and percentages for the pool.\n"
                    },
                    "longitude": {
                        "type": "number",
                        "description": "The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set.\n"
                    },
                    "minimumOrigins": {
                        "type": "integer",
                        "description": "The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "monitor": {
                        "type": "string",
                        "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n"
                    },
                    "monitorGroup": {
                        "type": "string",
                        "description": "The ID of the Monitor Group to use for checking the health of origins within this pool.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed.\n"
                    },
                    "networks": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of networks where Load Balancer or Pool is enabled.\n"
                    },
                    "notificationEmail": {
                        "type": "string",
                        "description": "This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list.\n"
                    },
                    "notificationFilter": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerPoolNotificationFilter:LoadBalancerPoolNotificationFilter",
                        "description": "Filter pool and origin health notifications by resource type or health status. Use null to reset.\n"
                    },
                    "originSteering": {
                        "$ref": "#/types/cloudflare:index/LoadBalancerPoolOriginSteering:LoadBalancerPoolOriginSteering",
                        "description": "Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.\n"
                    },
                    "origins": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/LoadBalancerPoolOrigin:LoadBalancerPoolOrigin"
                        },
                        "description": "The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/logpullRetention:LogpullRetention": {
            "description": "Accepted Permissions\n\n- `Logs Read`\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpullRetention = new cloudflare.LogpullRetention(\"example_logpull_retention\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    flag: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpull_retention = cloudflare.LogpullRetention(\"example_logpull_retention\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    flag=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpullRetention = new Cloudflare.Index.LogpullRetention(\"example_logpull_retention\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Flag = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLogpullRetention(ctx, \"example_logpull_retention\", \u0026cloudflare.LogpullRetentionArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFlag:   pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LogpullRetention;\nimport com.pulumi.cloudflare.LogpullRetentionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLogpullRetention = new LogpullRetention(\"exampleLogpullRetention\", LogpullRetentionArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .flag(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLogpullRetention:\n    type: cloudflare:LogpullRetention\n    name: example_logpull_retention\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      flag: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/logpullRetention:LogpullRetention example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "flag": {
                    "type": "boolean",
                    "description": "The log retention flag for Logpull API.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "zoneId"
            ],
            "inputProperties": {
                "flag": {
                    "type": "boolean",
                    "description": "The log retention flag for Logpull API.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogpullRetention resources.\n",
                "properties": {
                    "flag": {
                        "type": "boolean",
                        "description": "The log retention flag for Logpull API.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/logpushJob:LogpushJob": {
            "description": "Accepted Permissions\n\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpushJob = new cloudflare.LogpushJob(\"example_logpush_job\", {\n    destinationConf: \"s3://mybucket/logs?region=us-west-2\",\n    zoneId: \"zone_id\",\n    dataset: \"gateway_dns\",\n    enabled: false,\n    filter: \"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\n    frequency: \"high\",\n    kind: \"\",\n    logpullOptions: \"fields=RayID,ClientIP,EdgeStartTimestamp\u0026timestamps=rfc3339\",\n    maxUploadBytes: 5000000,\n    maxUploadIntervalSeconds: 30,\n    maxUploadRecords: 1000,\n    name: \"example.com\",\n    outputOptions: {\n        batchPrefix: \"\",\n        batchSuffix: \"\",\n        cve202144228: false,\n        fieldDelimiter: \",\",\n        fieldNames: [\n            \"Datetime\",\n            \"DstIP\",\n            \"SrcIP\",\n        ],\n        mergeSubrequests: true,\n        outputType: \"ndjson\",\n        recordDelimiter: \"\",\n        recordPrefix: \"{\",\n        recordSuffix: `    }\n\n`,\n        recordTemplate: \"record_template\",\n        sampleRate: 1,\n        timestampFormat: \"unixnano\",\n    },\n    ownershipChallenge: \"00000000000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpush_job = cloudflare.LogpushJob(\"example_logpush_job\",\n    destination_conf=\"s3://mybucket/logs?region=us-west-2\",\n    zone_id=\"zone_id\",\n    dataset=\"gateway_dns\",\n    enabled=False,\n    filter=\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\n    frequency=\"high\",\n    kind=\"\",\n    logpull_options=\"fields=RayID,ClientIP,EdgeStartTimestamp\u0026timestamps=rfc3339\",\n    max_upload_bytes=5000000,\n    max_upload_interval_seconds=30,\n    max_upload_records=1000,\n    name=\"example.com\",\n    output_options={\n        \"batch_prefix\": \"\",\n        \"batch_suffix\": \"\",\n        \"cve202144228\": False,\n        \"field_delimiter\": \",\",\n        \"field_names\": [\n            \"Datetime\",\n            \"DstIP\",\n            \"SrcIP\",\n        ],\n        \"merge_subrequests\": True,\n        \"output_type\": \"ndjson\",\n        \"record_delimiter\": \"\",\n        \"record_prefix\": \"{\",\n        \"record_suffix\": \"\"\"    }\n\n\"\"\",\n        \"record_template\": \"record_template\",\n        \"sample_rate\": 1,\n        \"timestamp_format\": \"unixnano\",\n    },\n    ownership_challenge=\"00000000000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpushJob = new Cloudflare.Index.LogpushJob(\"example_logpush_job\", new()\n    {\n        DestinationConf = \"s3://mybucket/logs?region=us-west-2\",\n        ZoneId = \"zone_id\",\n        Dataset = \"gateway_dns\",\n        Enabled = false,\n        Filter = \"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\n        Frequency = \"high\",\n        Kind = \"\",\n        LogpullOptions = \"fields=RayID,ClientIP,EdgeStartTimestamp\u0026timestamps=rfc3339\",\n        MaxUploadBytes = 5000000,\n        MaxUploadIntervalSeconds = 30,\n        MaxUploadRecords = 1000,\n        Name = \"example.com\",\n        OutputOptions = new Cloudflare.Inputs.LogpushJobOutputOptionsArgs\n        {\n            BatchPrefix = \"\",\n            BatchSuffix = \"\",\n            Cve202144228 = false,\n            FieldDelimiter = \",\",\n            FieldNames = new[]\n            {\n                \"Datetime\",\n                \"DstIP\",\n                \"SrcIP\",\n            },\n            MergeSubrequests = true,\n            OutputType = \"ndjson\",\n            RecordDelimiter = \"\",\n            RecordPrefix = \"{\",\n            RecordSuffix = @\"    }\n\n\",\n            RecordTemplate = \"record_template\",\n            SampleRate = 1,\n            TimestampFormat = \"unixnano\",\n        },\n        OwnershipChallenge = \"00000000000000000000\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLogpushJob(ctx, \"example_logpush_job\", \u0026cloudflare.LogpushJobArgs{\n\t\t\tDestinationConf:          pulumi.String(\"s3://mybucket/logs?region=us-west-2\"),\n\t\t\tZoneId:                   pulumi.String(\"zone_id\"),\n\t\t\tDataset:                  pulumi.String(\"gateway_dns\"),\n\t\t\tEnabled:                  pulumi.Bool(false),\n\t\t\tFilter:                   pulumi.String(\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\"),\n\t\t\tFrequency:                pulumi.String(\"high\"),\n\t\t\tKind:                     pulumi.String(\"\"),\n\t\t\tLogpullOptions:           pulumi.String(\"fields=RayID,ClientIP,EdgeStartTimestamp\u0026timestamps=rfc3339\"),\n\t\t\tMaxUploadBytes:           pulumi.Int(5000000),\n\t\t\tMaxUploadIntervalSeconds: pulumi.Int(30),\n\t\t\tMaxUploadRecords:         pulumi.Int(1000),\n\t\t\tName:                     pulumi.String(\"example.com\"),\n\t\t\tOutputOptions: \u0026cloudflare.LogpushJobOutputOptionsArgs{\n\t\t\t\tBatchPrefix:    pulumi.String(\"\"),\n\t\t\t\tBatchSuffix:    pulumi.String(\"\"),\n\t\t\t\tCve202144228:   pulumi.Bool(false),\n\t\t\t\tFieldDelimiter: pulumi.String(\",\"),\n\t\t\t\tFieldNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"Datetime\"),\n\t\t\t\t\tpulumi.String(\"DstIP\"),\n\t\t\t\t\tpulumi.String(\"SrcIP\"),\n\t\t\t\t},\n\t\t\t\tMergeSubrequests: pulumi.Bool(true),\n\t\t\t\tOutputType:       pulumi.String(\"ndjson\"),\n\t\t\t\tRecordDelimiter:  pulumi.String(\"\"),\n\t\t\t\tRecordPrefix:     pulumi.String(\"{\"),\n\t\t\t\tRecordSuffix:     pulumi.String(\"    }\\n\\n\"),\n\t\t\t\tRecordTemplate:   pulumi.String(\"record_template\"),\n\t\t\t\tSampleRate:       pulumi.Float64(1),\n\t\t\t\tTimestampFormat:  pulumi.String(\"unixnano\"),\n\t\t\t},\n\t\t\tOwnershipChallenge: pulumi.String(\"00000000000000000000\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LogpushJob;\nimport com.pulumi.cloudflare.LogpushJobArgs;\nimport com.pulumi.cloudflare.inputs.LogpushJobOutputOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLogpushJob = new LogpushJob(\"exampleLogpushJob\", LogpushJobArgs.builder()\n            .destinationConf(\"s3://mybucket/logs?region=us-west-2\")\n            .zoneId(\"zone_id\")\n            .dataset(\"gateway_dns\")\n            .enabled(false)\n            .filter(\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\")\n            .frequency(\"high\")\n            .kind(\"\")\n            .logpullOptions(\"fields=RayID,ClientIP,EdgeStartTimestamp\u0026timestamps=rfc3339\")\n            .maxUploadBytes(5000000)\n            .maxUploadIntervalSeconds(30)\n            .maxUploadRecords(1000)\n            .name(\"example.com\")\n            .outputOptions(LogpushJobOutputOptionsArgs.builder()\n                .batchPrefix(\"\")\n                .batchSuffix(\"\")\n                .cve202144228(false)\n                .fieldDelimiter(\",\")\n                .fieldNames(                \n                    \"Datetime\",\n                    \"DstIP\",\n                    \"SrcIP\")\n                .mergeSubrequests(true)\n                .outputType(\"ndjson\")\n                .recordDelimiter(\"\")\n                .recordPrefix(\"{\")\n                .recordSuffix(\"\"\"\n    }\n\n                \"\"\")\n                .recordTemplate(\"record_template\")\n                .sampleRate(1.0)\n                .timestampFormat(\"unixnano\")\n                .build())\n            .ownershipChallenge(\"00000000000000000000\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLogpushJob:\n    type: cloudflare:LogpushJob\n    name: example_logpush_job\n    properties:\n      destinationConf: s3://mybucket/logs?region=us-west-2\n      zoneId: zone_id\n      dataset: gateway_dns\n      enabled: false\n      filter: '{\"where\":{\"and\":[{\"key\":\"ClientRequestPath\",\"operator\":\"contains\",\"value\":\"/static\"},{\"key\":\"ClientRequestHost\",\"operator\":\"eq\",\"value\":\"example.com\"}]}}'\n      frequency: high\n      kind: \"\"\n      logpullOptions: fields=RayID,ClientIP,EdgeStartTimestamp\u0026timestamps=rfc3339\n      maxUploadBytes: 5e+06\n      maxUploadIntervalSeconds: 30\n      maxUploadRecords: 1000\n      name: example.com\n      outputOptions:\n        batchPrefix: \"\"\n        batchSuffix: \"\"\n        cve202144228: false\n        fieldDelimiter: ','\n        fieldNames:\n          - Datetime\n          - DstIP\n          - SrcIP\n        mergeSubrequests: true\n        outputType: ndjson\n        recordDelimiter: \"\"\n        recordPrefix: '{'\n        recordSuffix: |2+\n              }\n\n        recordTemplate: record_template\n        sampleRate: 1\n        timestampFormat: unixnano\n      ownershipChallenge: '00000000000000000000'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/logpushJob:LogpushJob example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cjob_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n"
                },
                "destinationConf": {
                    "type": "string",
                    "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                    "secret": true
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Flag that indicates if the job is enabled.\n"
                },
                "errorMessage": {
                    "type": "string",
                    "description": "If not null, the job is currently failing. Failures are usually. repetitive (example: no permissions to write to destination bucket). Only the last failure is recorded. On successful execution of a job the error*message and last*error are set to null.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/).\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files.\nAvailable values: \"high\", \"low\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "kind": {
                    "type": "string",
                    "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).\nAvailable values: \"\", \"edge\".\n"
                },
                "lastComplete": {
                    "type": "string",
                    "description": "Records the last time for which logs have been successfully pushed. If the last successful push was for logs range 2018-07-23T10:00:00Z to 2018-07-23T10:01:00Z then the value of this field will be 2018-07-23T10:01:00Z. If the job has never run or has just been enabled and hasn't run yet then the field will be empty.\n"
                },
                "lastError": {
                    "type": "string",
                    "description": "Records the last time the job failed. If not null, the job is currently. failing. If null, the job has either never failed or has run successfully at least once since last failure. See also the\u003cspan pulumi-lang-nodejs=\" errorMessage \" pulumi-lang-dotnet=\" ErrorMessage \" pulumi-lang-go=\" errorMessage \" pulumi-lang-python=\" error_message \" pulumi-lang-yaml=\" errorMessage \" pulumi-lang-java=\" errorMessage \"\u003e errorMessage \u003c/span\u003efield.\n"
                },
                "logpullOptions": {
                    "type": "string",
                    "description": "This field is deprecated. Use \u003cspan pulumi-lang-nodejs=\"`outputOptions`\" pulumi-lang-dotnet=\"`OutputOptions`\" pulumi-lang-go=\"`outputOptions`\" pulumi-lang-python=\"`output_options`\" pulumi-lang-yaml=\"`outputOptions`\" pulumi-lang-java=\"`outputOptions`\"\u003e`outputOptions`\u003c/span\u003e instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "maxUploadBytes": {
                    "type": "integer",
                    "description": "The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size.\n"
                },
                "maxUploadIntervalSeconds": {
                    "type": "integer",
                    "description": "The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this.\n"
                },
                "maxUploadRecords": {
                    "type": "integer",
                    "description": "The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job.\n"
                },
                "outputOptions": {
                    "$ref": "#/types/cloudflare:index/LogpushJobOutputOptions:LogpushJobOutputOptions",
                    "description": "The structured replacement for \u003cspan pulumi-lang-nodejs=\"`logpullOptions`\" pulumi-lang-dotnet=\"`LogpullOptions`\" pulumi-lang-go=\"`logpullOptions`\" pulumi-lang-python=\"`logpull_options`\" pulumi-lang-yaml=\"`logpullOptions`\" pulumi-lang-java=\"`logpullOptions`\"\u003e`logpullOptions`\u003c/span\u003e. When including this field, the \u003cspan pulumi-lang-nodejs=\"`logpullOption`\" pulumi-lang-dotnet=\"`LogpullOption`\" pulumi-lang-go=\"`logpullOption`\" pulumi-lang-python=\"`logpull_option`\" pulumi-lang-yaml=\"`logpullOption`\" pulumi-lang-java=\"`logpullOption`\"\u003e`logpullOption`\u003c/span\u003e field will be ignored.\n"
                },
                "ownershipChallenge": {
                    "type": "string",
                    "description": "Ownership challenge token to prove destination ownership.\n",
                    "secret": true
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "dataset",
                "destinationConf",
                "enabled",
                "errorMessage",
                "filter",
                "frequency",
                "kind",
                "lastComplete",
                "lastError",
                "logpullOptions",
                "maxUploadBytes",
                "maxUploadIntervalSeconds",
                "maxUploadRecords",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n"
                },
                "destinationConf": {
                    "type": "string",
                    "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                    "secret": true
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Flag that indicates if the job is enabled.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/).\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files.\nAvailable values: \"high\", \"low\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "kind": {
                    "type": "string",
                    "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).\nAvailable values: \"\", \"edge\".\n"
                },
                "logpullOptions": {
                    "type": "string",
                    "description": "This field is deprecated. Use \u003cspan pulumi-lang-nodejs=\"`outputOptions`\" pulumi-lang-dotnet=\"`OutputOptions`\" pulumi-lang-go=\"`outputOptions`\" pulumi-lang-python=\"`output_options`\" pulumi-lang-yaml=\"`outputOptions`\" pulumi-lang-java=\"`outputOptions`\"\u003e`outputOptions`\u003c/span\u003e instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "maxUploadBytes": {
                    "type": "integer",
                    "description": "The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size.\n"
                },
                "maxUploadIntervalSeconds": {
                    "type": "integer",
                    "description": "The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this.\n"
                },
                "maxUploadRecords": {
                    "type": "integer",
                    "description": "The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job.\n"
                },
                "outputOptions": {
                    "$ref": "#/types/cloudflare:index/LogpushJobOutputOptions:LogpushJobOutputOptions",
                    "description": "The structured replacement for \u003cspan pulumi-lang-nodejs=\"`logpullOptions`\" pulumi-lang-dotnet=\"`LogpullOptions`\" pulumi-lang-go=\"`logpullOptions`\" pulumi-lang-python=\"`logpull_options`\" pulumi-lang-yaml=\"`logpullOptions`\" pulumi-lang-java=\"`logpullOptions`\"\u003e`logpullOptions`\u003c/span\u003e. When including this field, the \u003cspan pulumi-lang-nodejs=\"`logpullOption`\" pulumi-lang-dotnet=\"`LogpullOption`\" pulumi-lang-go=\"`logpullOption`\" pulumi-lang-python=\"`logpull_option`\" pulumi-lang-yaml=\"`logpullOption`\" pulumi-lang-java=\"`logpullOption`\"\u003e`logpullOption`\u003c/span\u003e field will be ignored.\n"
                },
                "ownershipChallenge": {
                    "type": "string",
                    "description": "Ownership challenge token to prove destination ownership.\n",
                    "secret": true
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "destinationConf"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogpushJob resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "dataset": {
                        "type": "string",
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n"
                    },
                    "destinationConf": {
                        "type": "string",
                        "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                        "secret": true
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Flag that indicates if the job is enabled.\n"
                    },
                    "errorMessage": {
                        "type": "string",
                        "description": "If not null, the job is currently failing. Failures are usually. repetitive (example: no permissions to write to destination bucket). Only the last failure is recorded. On successful execution of a job the error*message and last*error are set to null.\n"
                    },
                    "filter": {
                        "type": "string",
                        "description": "The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/).\n"
                    },
                    "frequency": {
                        "type": "string",
                        "description": "This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files.\nAvailable values: \"high\", \"low\".\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "kind": {
                        "type": "string",
                        "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).\nAvailable values: \"\", \"edge\".\n"
                    },
                    "lastComplete": {
                        "type": "string",
                        "description": "Records the last time for which logs have been successfully pushed. If the last successful push was for logs range 2018-07-23T10:00:00Z to 2018-07-23T10:01:00Z then the value of this field will be 2018-07-23T10:01:00Z. If the job has never run or has just been enabled and hasn't run yet then the field will be empty.\n"
                    },
                    "lastError": {
                        "type": "string",
                        "description": "Records the last time the job failed. If not null, the job is currently. failing. If null, the job has either never failed or has run successfully at least once since last failure. See also the\u003cspan pulumi-lang-nodejs=\" errorMessage \" pulumi-lang-dotnet=\" ErrorMessage \" pulumi-lang-go=\" errorMessage \" pulumi-lang-python=\" error_message \" pulumi-lang-yaml=\" errorMessage \" pulumi-lang-java=\" errorMessage \"\u003e errorMessage \u003c/span\u003efield.\n"
                    },
                    "logpullOptions": {
                        "type": "string",
                        "description": "This field is deprecated. Use \u003cspan pulumi-lang-nodejs=\"`outputOptions`\" pulumi-lang-dotnet=\"`OutputOptions`\" pulumi-lang-go=\"`outputOptions`\" pulumi-lang-python=\"`output_options`\" pulumi-lang-yaml=\"`outputOptions`\" pulumi-lang-java=\"`outputOptions`\"\u003e`outputOptions`\u003c/span\u003e instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "maxUploadBytes": {
                        "type": "integer",
                        "description": "The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size.\n"
                    },
                    "maxUploadIntervalSeconds": {
                        "type": "integer",
                        "description": "The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this.\n"
                    },
                    "maxUploadRecords": {
                        "type": "integer",
                        "description": "The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job.\n"
                    },
                    "outputOptions": {
                        "$ref": "#/types/cloudflare:index/LogpushJobOutputOptions:LogpushJobOutputOptions",
                        "description": "The structured replacement for \u003cspan pulumi-lang-nodejs=\"`logpullOptions`\" pulumi-lang-dotnet=\"`LogpullOptions`\" pulumi-lang-go=\"`logpullOptions`\" pulumi-lang-python=\"`logpull_options`\" pulumi-lang-yaml=\"`logpullOptions`\" pulumi-lang-java=\"`logpullOptions`\"\u003e`logpullOptions`\u003c/span\u003e. When including this field, the \u003cspan pulumi-lang-nodejs=\"`logpullOption`\" pulumi-lang-dotnet=\"`LogpullOption`\" pulumi-lang-go=\"`logpullOption`\" pulumi-lang-python=\"`logpull_option`\" pulumi-lang-yaml=\"`logpullOption`\" pulumi-lang-java=\"`logpullOption`\"\u003e`logpullOption`\u003c/span\u003e field will be ignored.\n"
                    },
                    "ownershipChallenge": {
                        "type": "string",
                        "description": "Ownership challenge token to prove destination ownership.\n",
                        "secret": true
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/logpushOwnershipChallenge:LogpushOwnershipChallenge": {
            "description": "Accepted Permissions\n\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpushOwnershipChallenge = new cloudflare.LogpushOwnershipChallenge(\"example_logpush_ownership_challenge\", {\n    destinationConf: \"s3://mybucket/logs?region=us-west-2\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpush_ownership_challenge = cloudflare.LogpushOwnershipChallenge(\"example_logpush_ownership_challenge\",\n    destination_conf=\"s3://mybucket/logs?region=us-west-2\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpushOwnershipChallenge = new Cloudflare.Index.LogpushOwnershipChallenge(\"example_logpush_ownership_challenge\", new()\n    {\n        DestinationConf = \"s3://mybucket/logs?region=us-west-2\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewLogpushOwnershipChallenge(ctx, \"example_logpush_ownership_challenge\", \u0026cloudflare.LogpushOwnershipChallengeArgs{\n\t\t\tDestinationConf: pulumi.String(\"s3://mybucket/logs?region=us-west-2\"),\n\t\t\tZoneId:          pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.LogpushOwnershipChallenge;\nimport com.pulumi.cloudflare.LogpushOwnershipChallengeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleLogpushOwnershipChallenge = new LogpushOwnershipChallenge(\"exampleLogpushOwnershipChallenge\", LogpushOwnershipChallengeArgs.builder()\n            .destinationConf(\"s3://mybucket/logs?region=us-west-2\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleLogpushOwnershipChallenge:\n    type: cloudflare:LogpushOwnershipChallenge\n    name: example_logpush_ownership_challenge\n    properties:\n      destinationConf: s3://mybucket/logs?region=us-west-2\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "destinationConf": {
                    "type": "string",
                    "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                    "secret": true
                },
                "filename": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                },
                "valid": {
                    "type": "boolean"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "destinationConf",
                "filename",
                "message",
                "valid"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "destinationConf": {
                    "type": "string",
                    "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                    "secret": true
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "destinationConf"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogpushOwnershipChallenge resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "destinationConf": {
                        "type": "string",
                        "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                        "secret": true
                    },
                    "filename": {
                        "type": "string"
                    },
                    "message": {
                        "type": "string"
                    },
                    "valid": {
                        "type": "boolean"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicNetworkMonitoringConfiguration:MagicNetworkMonitoringConfiguration": {
            "description": "Accepted Permissions\n\n- `Magic Network Monitoring Admin`\n- `Magic Network Monitoring Config Read`\n- `Magic Network Monitoring Config Write`\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "defaultSampling": {
                    "type": "number",
                    "description": "Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The account name.\n"
                },
                "routerIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "warpDevices": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/MagicNetworkMonitoringConfigurationWarpDevice:MagicNetworkMonitoringConfigurationWarpDevice"
                    }
                }
            },
            "required": [
                "defaultSampling",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "defaultSampling": {
                    "type": "number",
                    "description": "Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The account name.\n"
                },
                "routerIps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "warpDevices": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/MagicNetworkMonitoringConfigurationWarpDevice:MagicNetworkMonitoringConfigurationWarpDevice"
                    }
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicNetworkMonitoringConfiguration resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "defaultSampling": {
                        "type": "number",
                        "description": "Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The account name.\n"
                    },
                    "routerIps": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "warpDevices": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/MagicNetworkMonitoringConfigurationWarpDevice:MagicNetworkMonitoringConfigurationWarpDevice"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicNetworkMonitoringRule:MagicNetworkMonitoringRule": {
            "description": "Accepted Permissions\n\n- `Magic Network Monitoring Admin`\n- `Magic Network Monitoring Config Read`\n- `Magic Network Monitoring Config Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicNetworkMonitoringRule = new cloudflare.MagicNetworkMonitoringRule(\"example_magic_network_monitoring_rule\", {\n    accountId: \"6f91088a406011ed95aed352566e8d4c\",\n    automaticAdvertisement: true,\n    name: \"my_rule_1\",\n    prefixes: [\"203.0.113.1/32\"],\n    type: \"zscore\",\n    bandwidthThreshold: 1000,\n    duration: \"1m\",\n    packetThreshold: 10000,\n    prefixMatch: \"exact\",\n    zscoreSensitivity: \"high\",\n    zscoreTarget: \"bits\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_network_monitoring_rule = cloudflare.MagicNetworkMonitoringRule(\"example_magic_network_monitoring_rule\",\n    account_id=\"6f91088a406011ed95aed352566e8d4c\",\n    automatic_advertisement=True,\n    name=\"my_rule_1\",\n    prefixes=[\"203.0.113.1/32\"],\n    type=\"zscore\",\n    bandwidth_threshold=1000,\n    duration=\"1m\",\n    packet_threshold=10000,\n    prefix_match=\"exact\",\n    zscore_sensitivity=\"high\",\n    zscore_target=\"bits\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicNetworkMonitoringRule = new Cloudflare.Index.MagicNetworkMonitoringRule(\"example_magic_network_monitoring_rule\", new()\n    {\n        AccountId = \"6f91088a406011ed95aed352566e8d4c\",\n        AutomaticAdvertisement = true,\n        Name = \"my_rule_1\",\n        Prefixes = new[]\n        {\n            \"203.0.113.1/32\",\n        },\n        Type = \"zscore\",\n        BandwidthThreshold = 1000,\n        Duration = \"1m\",\n        PacketThreshold = 10000,\n        PrefixMatch = \"exact\",\n        ZscoreSensitivity = \"high\",\n        ZscoreTarget = \"bits\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicNetworkMonitoringRule(ctx, \"example_magic_network_monitoring_rule\", \u0026cloudflare.MagicNetworkMonitoringRuleArgs{\n\t\t\tAccountId:              pulumi.String(\"6f91088a406011ed95aed352566e8d4c\"),\n\t\t\tAutomaticAdvertisement: pulumi.Bool(true),\n\t\t\tName:                   pulumi.String(\"my_rule_1\"),\n\t\t\tPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"203.0.113.1/32\"),\n\t\t\t},\n\t\t\tType:               pulumi.String(\"zscore\"),\n\t\t\tBandwidthThreshold: pulumi.Float64(1000),\n\t\t\tDuration:           pulumi.String(\"1m\"),\n\t\t\tPacketThreshold:    pulumi.Float64(10000),\n\t\t\tPrefixMatch:        pulumi.String(\"exact\"),\n\t\t\tZscoreSensitivity:  pulumi.String(\"high\"),\n\t\t\tZscoreTarget:       pulumi.String(\"bits\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicNetworkMonitoringRule;\nimport com.pulumi.cloudflare.MagicNetworkMonitoringRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicNetworkMonitoringRule = new MagicNetworkMonitoringRule(\"exampleMagicNetworkMonitoringRule\", MagicNetworkMonitoringRuleArgs.builder()\n            .accountId(\"6f91088a406011ed95aed352566e8d4c\")\n            .automaticAdvertisement(true)\n            .name(\"my_rule_1\")\n            .prefixes(\"203.0.113.1/32\")\n            .type(\"zscore\")\n            .bandwidthThreshold(1000.0)\n            .duration(\"1m\")\n            .packetThreshold(10000.0)\n            .prefixMatch(\"exact\")\n            .zscoreSensitivity(\"high\")\n            .zscoreTarget(\"bits\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicNetworkMonitoringRule:\n    type: cloudflare:MagicNetworkMonitoringRule\n    name: example_magic_network_monitoring_rule\n    properties:\n      accountId: 6f91088a406011ed95aed352566e8d4c\n      automaticAdvertisement: true\n      name: my_rule_1\n      prefixes:\n        - 203.0.113.1/32\n      type: zscore\n      bandwidthThreshold: 1000\n      duration: 1m\n      packetThreshold: 10000\n      prefixMatch: exact\n      zscoreSensitivity: high\n      zscoreTarget: bits\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicNetworkMonitoringRule:MagicNetworkMonitoringRule example '\u003caccount_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "automaticAdvertisement": {
                    "type": "boolean",
                    "description": "Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit.\n"
                },
                "bandwidthThreshold": {
                    "type": "number",
                    "description": "The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"].\nAvailable values: \"1m\", \"5m\", \"10m\", \"15m\", \"20m\", \"30m\", \"45m\", \"60m\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.\n"
                },
                "packetThreshold": {
                    "type": "number",
                    "description": "The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                },
                "prefixMatch": {
                    "type": "string",
                    "description": "Prefix match type to be applied for a prefix auto advertisement when using an\u003cspan pulumi-lang-nodejs=\" advancedDdos \" pulumi-lang-dotnet=\" AdvancedDdos \" pulumi-lang-go=\" advancedDdos \" pulumi-lang-python=\" advanced_ddos \" pulumi-lang-yaml=\" advancedDdos \" pulumi-lang-java=\" advancedDdos \"\u003e advancedDdos \u003c/span\u003erule.\nAvailable values: \"exact\", \"subnet\", \"supernet\".\n"
                },
                "prefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "MNM rule type.\nAvailable values: \"threshold\", \"zscore\", \u003cspan pulumi-lang-nodejs=\"\"advancedDdos\"\" pulumi-lang-dotnet=\"\"AdvancedDdos\"\" pulumi-lang-go=\"\"advancedDdos\"\" pulumi-lang-python=\"\"advanced_ddos\"\" pulumi-lang-yaml=\"\"advancedDdos\"\" pulumi-lang-java=\"\"advancedDdos\"\"\u003e\"advancedDdos\"\u003c/span\u003e.\n"
                },
                "zscoreSensitivity": {
                    "type": "string",
                    "description": "Level of sensitivity set for zscore rules.\nAvailable values: \"low\", \"medium\", \"high\".\n"
                },
                "zscoreTarget": {
                    "type": "string",
                    "description": "Target of the zscore rule analysis.\nAvailable values: \"bits\", \"packets\".\n"
                }
            },
            "required": [
                "automaticAdvertisement",
                "duration",
                "name",
                "prefixes",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "automaticAdvertisement": {
                    "type": "boolean",
                    "description": "Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit.\n"
                },
                "bandwidthThreshold": {
                    "type": "number",
                    "description": "The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"].\nAvailable values: \"1m\", \"5m\", \"10m\", \"15m\", \"20m\", \"30m\", \"45m\", \"60m\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.\n"
                },
                "packetThreshold": {
                    "type": "number",
                    "description": "The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                },
                "prefixMatch": {
                    "type": "string",
                    "description": "Prefix match type to be applied for a prefix auto advertisement when using an\u003cspan pulumi-lang-nodejs=\" advancedDdos \" pulumi-lang-dotnet=\" AdvancedDdos \" pulumi-lang-go=\" advancedDdos \" pulumi-lang-python=\" advanced_ddos \" pulumi-lang-yaml=\" advancedDdos \" pulumi-lang-java=\" advancedDdos \"\u003e advancedDdos \u003c/span\u003erule.\nAvailable values: \"exact\", \"subnet\", \"supernet\".\n"
                },
                "prefixes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "MNM rule type.\nAvailable values: \"threshold\", \"zscore\", \u003cspan pulumi-lang-nodejs=\"\"advancedDdos\"\" pulumi-lang-dotnet=\"\"AdvancedDdos\"\" pulumi-lang-go=\"\"advancedDdos\"\" pulumi-lang-python=\"\"advanced_ddos\"\" pulumi-lang-yaml=\"\"advancedDdos\"\" pulumi-lang-java=\"\"advancedDdos\"\"\u003e\"advancedDdos\"\u003c/span\u003e.\n"
                },
                "zscoreSensitivity": {
                    "type": "string",
                    "description": "Level of sensitivity set for zscore rules.\nAvailable values: \"low\", \"medium\", \"high\".\n"
                },
                "zscoreTarget": {
                    "type": "string",
                    "description": "Target of the zscore rule analysis.\nAvailable values: \"bits\", \"packets\".\n"
                }
            },
            "requiredInputs": [
                "automaticAdvertisement",
                "name",
                "prefixes",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicNetworkMonitoringRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "automaticAdvertisement": {
                        "type": "boolean",
                        "description": "Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit.\n"
                    },
                    "bandwidthThreshold": {
                        "type": "number",
                        "description": "The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                    },
                    "duration": {
                        "type": "string",
                        "description": "The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"].\nAvailable values: \"1m\", \"5m\", \"10m\", \"15m\", \"20m\", \"30m\", \"45m\", \"60m\".\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.\n"
                    },
                    "packetThreshold": {
                        "type": "number",
                        "description": "The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n"
                    },
                    "prefixMatch": {
                        "type": "string",
                        "description": "Prefix match type to be applied for a prefix auto advertisement when using an\u003cspan pulumi-lang-nodejs=\" advancedDdos \" pulumi-lang-dotnet=\" AdvancedDdos \" pulumi-lang-go=\" advancedDdos \" pulumi-lang-python=\" advanced_ddos \" pulumi-lang-yaml=\" advancedDdos \" pulumi-lang-java=\" advancedDdos \"\u003e advancedDdos \u003c/span\u003erule.\nAvailable values: \"exact\", \"subnet\", \"supernet\".\n"
                    },
                    "prefixes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "type": {
                        "type": "string",
                        "description": "MNM rule type.\nAvailable values: \"threshold\", \"zscore\", \u003cspan pulumi-lang-nodejs=\"\"advancedDdos\"\" pulumi-lang-dotnet=\"\"AdvancedDdos\"\" pulumi-lang-go=\"\"advancedDdos\"\" pulumi-lang-python=\"\"advanced_ddos\"\" pulumi-lang-yaml=\"\"advancedDdos\"\" pulumi-lang-java=\"\"advancedDdos\"\"\u003e\"advancedDdos\"\u003c/span\u003e.\n"
                    },
                    "zscoreSensitivity": {
                        "type": "string",
                        "description": "Level of sensitivity set for zscore rules.\nAvailable values: \"low\", \"medium\", \"high\".\n"
                    },
                    "zscoreTarget": {
                        "type": "string",
                        "description": "Target of the zscore rule analysis.\nAvailable values: \"bits\", \"packets\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicTransitConnector:MagicTransitConnector": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitConnector = new cloudflare.MagicTransitConnector(\"example_magic_transit_connector\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    device: {\n        id: \"id\",\n        provisionLicense: true,\n        serialNumber: \"serial_number\",\n    },\n    activated: true,\n    interruptWindowDaysOfWeek: [\"Sunday\"],\n    interruptWindowDurationHours: 1,\n    interruptWindowEmbargoDates: [\"string\"],\n    interruptWindowHourOfDay: 0,\n    notes: \"notes\",\n    timezone: \"timezone\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_connector = cloudflare.MagicTransitConnector(\"example_magic_transit_connector\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    device={\n        \"id\": \"id\",\n        \"provision_license\": True,\n        \"serial_number\": \"serial_number\",\n    },\n    activated=True,\n    interrupt_window_days_of_week=[\"Sunday\"],\n    interrupt_window_duration_hours=1,\n    interrupt_window_embargo_dates=[\"string\"],\n    interrupt_window_hour_of_day=0,\n    notes=\"notes\",\n    timezone=\"timezone\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitConnector = new Cloudflare.Index.MagicTransitConnector(\"example_magic_transit_connector\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Device = new Cloudflare.Inputs.MagicTransitConnectorDeviceArgs\n        {\n            Id = \"id\",\n            ProvisionLicense = true,\n            SerialNumber = \"serial_number\",\n        },\n        Activated = true,\n        InterruptWindowDaysOfWeek = new[]\n        {\n            \"Sunday\",\n        },\n        InterruptWindowDurationHours = 1,\n        InterruptWindowEmbargoDates = new[]\n        {\n            \"string\",\n        },\n        InterruptWindowHourOfDay = 0,\n        Notes = \"notes\",\n        Timezone = \"timezone\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicTransitConnector(ctx, \"example_magic_transit_connector\", \u0026cloudflare.MagicTransitConnectorArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDevice: \u0026cloudflare.MagicTransitConnectorDeviceArgs{\n\t\t\t\tId:               pulumi.String(\"id\"),\n\t\t\t\tProvisionLicense: pulumi.Bool(true),\n\t\t\t\tSerialNumber:     pulumi.String(\"serial_number\"),\n\t\t\t},\n\t\t\tActivated: pulumi.Bool(true),\n\t\t\tInterruptWindowDaysOfWeek: []string{\n\t\t\t\t\"Sunday\",\n\t\t\t},\n\t\t\tInterruptWindowDurationHours: pulumi.Float64(1),\n\t\t\tInterruptWindowEmbargoDates: []string{\n\t\t\t\t\"string\",\n\t\t\t},\n\t\t\tInterruptWindowHourOfDay: pulumi.Float64(0),\n\t\t\tNotes:                    pulumi.String(\"notes\"),\n\t\t\tTimezone:                 pulumi.String(\"timezone\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicTransitConnector;\nimport com.pulumi.cloudflare.MagicTransitConnectorArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitConnectorDeviceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicTransitConnector = new MagicTransitConnector(\"exampleMagicTransitConnector\", MagicTransitConnectorArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .device(MagicTransitConnectorDeviceArgs.builder()\n                .id(\"id\")\n                .provisionLicense(true)\n                .serialNumber(\"serial_number\")\n                .build())\n            .activated(true)\n            .interruptWindowDaysOfWeek(List.of(\"Sunday\"))\n            .interruptWindowDurationHours(1.0)\n            .interruptWindowEmbargoDates(List.of(\"string\"))\n            .interruptWindowHourOfDay(0.0)\n            .notes(\"notes\")\n            .timezone(\"timezone\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicTransitConnector:\n    type: cloudflare:MagicTransitConnector\n    name: example_magic_transit_connector\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      device:\n        id: id\n        provisionLicense: true\n        serialNumber: serial_number\n      activated: true\n      interruptWindowDaysOfWeek:\n        - Sunday\n      interruptWindowDurationHours: 1\n      interruptWindowEmbargoDates:\n        - string\n      interruptWindowHourOfDay: 0\n      notes: notes\n      timezone: timezone\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicTransitConnector:MagicTransitConnector example '\u003caccount_id\u003e/\u003cconnector_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier\n"
                },
                "activated": {
                    "type": "boolean"
                },
                "device": {
                    "$ref": "#/types/cloudflare:index/MagicTransitConnectorDevice:MagicTransitConnectorDevice"
                },
                "interruptWindowDurationHours": {
                    "type": "number"
                },
                "interruptWindowHourOfDay": {
                    "type": "number"
                },
                "licenseKey": {
                    "type": "string",
                    "description": "License key for the connector. This is only returned on creation and will not be available in subsequent reads.\n",
                    "secret": true
                },
                "notes": {
                    "type": "string"
                },
                "timezone": {
                    "type": "string"
                }
            },
            "required": [
                "accountId",
                "activated",
                "device",
                "interruptWindowDurationHours",
                "interruptWindowHourOfDay",
                "licenseKey",
                "notes",
                "timezone"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier\n"
                },
                "activated": {
                    "type": "boolean"
                },
                "device": {
                    "$ref": "#/types/cloudflare:index/MagicTransitConnectorDevice:MagicTransitConnectorDevice"
                },
                "interruptWindowDurationHours": {
                    "type": "number"
                },
                "interruptWindowHourOfDay": {
                    "type": "number"
                },
                "notes": {
                    "type": "string"
                },
                "timezone": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "accountId",
                "device"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicTransitConnector resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "activated": {
                        "type": "boolean"
                    },
                    "device": {
                        "$ref": "#/types/cloudflare:index/MagicTransitConnectorDevice:MagicTransitConnectorDevice"
                    },
                    "interruptWindowDurationHours": {
                        "type": "number"
                    },
                    "interruptWindowHourOfDay": {
                        "type": "number"
                    },
                    "licenseKey": {
                        "type": "string",
                        "description": "License key for the connector. This is only returned on creation and will not be available in subsequent reads.\n",
                        "secret": true
                    },
                    "notes": {
                        "type": "string"
                    },
                    "timezone": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicTransitSite:MagicTransitSite": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSite = new cloudflare.MagicTransitSite(\"example_magic_transit_site\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"site_1\",\n    connectorId: \"ac60d3d0435248289d446cedd870bcf4\",\n    description: \"description\",\n    haMode: true,\n    location: {\n        lat: \"37.6192\",\n        lon: \"122.3816\",\n    },\n    secondaryConnectorId: \"8d67040d3835dbcf46ce29da440dc482\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site = cloudflare.MagicTransitSite(\"example_magic_transit_site\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"site_1\",\n    connector_id=\"ac60d3d0435248289d446cedd870bcf4\",\n    description=\"description\",\n    ha_mode=True,\n    location={\n        \"lat\": \"37.6192\",\n        \"lon\": \"122.3816\",\n    },\n    secondary_connector_id=\"8d67040d3835dbcf46ce29da440dc482\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSite = new Cloudflare.Index.MagicTransitSite(\"example_magic_transit_site\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"site_1\",\n        ConnectorId = \"ac60d3d0435248289d446cedd870bcf4\",\n        Description = \"description\",\n        HaMode = true,\n        Location = new Cloudflare.Inputs.MagicTransitSiteLocationArgs\n        {\n            Lat = \"37.6192\",\n            Lon = \"122.3816\",\n        },\n        SecondaryConnectorId = \"8d67040d3835dbcf46ce29da440dc482\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicTransitSite(ctx, \"example_magic_transit_site\", \u0026cloudflare.MagicTransitSiteArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:        pulumi.String(\"site_1\"),\n\t\t\tConnectorId: pulumi.String(\"ac60d3d0435248289d446cedd870bcf4\"),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tHaMode:      pulumi.Bool(true),\n\t\t\tLocation: \u0026cloudflare.MagicTransitSiteLocationArgs{\n\t\t\t\tLat: pulumi.String(\"37.6192\"),\n\t\t\t\tLon: pulumi.String(\"122.3816\"),\n\t\t\t},\n\t\t\tSecondaryConnectorId: pulumi.String(\"8d67040d3835dbcf46ce29da440dc482\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicTransitSite;\nimport com.pulumi.cloudflare.MagicTransitSiteArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicTransitSite = new MagicTransitSite(\"exampleMagicTransitSite\", MagicTransitSiteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"site_1\")\n            .connectorId(\"ac60d3d0435248289d446cedd870bcf4\")\n            .description(\"description\")\n            .haMode(true)\n            .location(MagicTransitSiteLocationArgs.builder()\n                .lat(\"37.6192\")\n                .lon(\"122.3816\")\n                .build())\n            .secondaryConnectorId(\"8d67040d3835dbcf46ce29da440dc482\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicTransitSite:\n    type: cloudflare:MagicTransitSite\n    name: example_magic_transit_site\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: site_1\n      connectorId: ac60d3d0435248289d446cedd870bcf4\n      description: description\n      haMode: true\n      location:\n        lat: '37.6192'\n        lon: '122.3816'\n      secondaryConnectorId: 8d67040d3835dbcf46ce29da440dc482\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicTransitSite:MagicTransitSite example '\u003caccount_id\u003e/\u003csite_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "connectorId": {
                    "type": "string",
                    "description": "Magic Connector identifier tag.\n"
                },
                "description": {
                    "type": "string"
                },
                "haMode": {
                    "type": "boolean",
                    "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode.\n"
                },
                "location": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLocation:MagicTransitSiteLocation",
                    "description": "Location of site in latitude and longitude.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the site.\n"
                },
                "secondaryConnectorId": {
                    "type": "string",
                    "description": "Magic Connector identifier tag. Used when high availability mode is on.\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "connectorId": {
                    "type": "string",
                    "description": "Magic Connector identifier tag.\n"
                },
                "description": {
                    "type": "string"
                },
                "haMode": {
                    "type": "boolean",
                    "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode.\n"
                },
                "location": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLocation:MagicTransitSiteLocation",
                    "description": "Location of site in latitude and longitude.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the site.\n"
                },
                "secondaryConnectorId": {
                    "type": "string",
                    "description": "Magic Connector identifier tag. Used when high availability mode is on.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicTransitSite resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "connectorId": {
                        "type": "string",
                        "description": "Magic Connector identifier tag.\n"
                    },
                    "description": {
                        "type": "string"
                    },
                    "haMode": {
                        "type": "boolean",
                        "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode.\n"
                    },
                    "location": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteLocation:MagicTransitSiteLocation",
                        "description": "Location of site in latitude and longitude.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the site.\n"
                    },
                    "secondaryConnectorId": {
                        "type": "string",
                        "description": "Magic Connector identifier tag. Used when high availability mode is on.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicTransitSiteAcl:MagicTransitSiteAcl": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteAcl = new cloudflare.MagicTransitSiteAcl(\"example_magic_transit_site_acl\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    lan1: {\n        lanId: \"lan_id\",\n        lanName: \"lan_name\",\n        portRanges: [\"8080-9000\"],\n        ports: [1],\n        subnets: [\"192.0.2.1\"],\n    },\n    lan2: {\n        lanId: \"lan_id\",\n        lanName: \"lan_name\",\n        portRanges: [\"8080-9000\"],\n        ports: [1],\n        subnets: [\"192.0.2.1\"],\n    },\n    name: \"PIN Pad - Cash Register\",\n    description: \"Allows local traffic between PIN pads and cash register.\",\n    forwardLocally: true,\n    protocols: [\"tcp\"],\n    unidirectional: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_acl = cloudflare.MagicTransitSiteAcl(\"example_magic_transit_site_acl\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    lan1={\n        \"lan_id\": \"lan_id\",\n        \"lan_name\": \"lan_name\",\n        \"port_ranges\": [\"8080-9000\"],\n        \"ports\": [1],\n        \"subnets\": [\"192.0.2.1\"],\n    },\n    lan2={\n        \"lan_id\": \"lan_id\",\n        \"lan_name\": \"lan_name\",\n        \"port_ranges\": [\"8080-9000\"],\n        \"ports\": [1],\n        \"subnets\": [\"192.0.2.1\"],\n    },\n    name=\"PIN Pad - Cash Register\",\n    description=\"Allows local traffic between PIN pads and cash register.\",\n    forward_locally=True,\n    protocols=[\"tcp\"],\n    unidirectional=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteAcl = new Cloudflare.Index.MagicTransitSiteAcl(\"example_magic_transit_site_acl\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Lan1 = new Cloudflare.Inputs.MagicTransitSiteAclLan1Args\n        {\n            LanId = \"lan_id\",\n            LanName = \"lan_name\",\n            PortRanges = new[]\n            {\n                \"8080-9000\",\n            },\n            Ports = new[]\n            {\n                1,\n            },\n            Subnets = new[]\n            {\n                \"192.0.2.1\",\n            },\n        },\n        Lan2 = new Cloudflare.Inputs.MagicTransitSiteAclLan2Args\n        {\n            LanId = \"lan_id\",\n            LanName = \"lan_name\",\n            PortRanges = new[]\n            {\n                \"8080-9000\",\n            },\n            Ports = new[]\n            {\n                1,\n            },\n            Subnets = new[]\n            {\n                \"192.0.2.1\",\n            },\n        },\n        Name = \"PIN Pad - Cash Register\",\n        Description = \"Allows local traffic between PIN pads and cash register.\",\n        ForwardLocally = true,\n        Protocols = new[]\n        {\n            \"tcp\",\n        },\n        Unidirectional = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicTransitSiteAcl(ctx, \"example_magic_transit_site_acl\", \u0026cloudflare.MagicTransitSiteAclArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tLan1: \u0026cloudflare.MagicTransitSiteAclLan1Args{\n\t\t\t\tLanId:   pulumi.String(\"lan_id\"),\n\t\t\t\tLanName: pulumi.String(\"lan_name\"),\n\t\t\t\tPortRanges: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"8080-9000\"),\n\t\t\t\t},\n\t\t\t\tPorts: pulumi.IntArray{\n\t\t\t\t\tpulumi.Int(1),\n\t\t\t\t},\n\t\t\t\tSubnets: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"192.0.2.1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLan2: \u0026cloudflare.MagicTransitSiteAclLan2Args{\n\t\t\t\tLanId:   pulumi.String(\"lan_id\"),\n\t\t\t\tLanName: pulumi.String(\"lan_name\"),\n\t\t\t\tPortRanges: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"8080-9000\"),\n\t\t\t\t},\n\t\t\t\tPorts: pulumi.IntArray{\n\t\t\t\t\tpulumi.Int(1),\n\t\t\t\t},\n\t\t\t\tSubnets: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"192.0.2.1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:           pulumi.String(\"PIN Pad - Cash Register\"),\n\t\t\tDescription:    pulumi.String(\"Allows local traffic between PIN pads and cash register.\"),\n\t\t\tForwardLocally: pulumi.Bool(true),\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tcp\"),\n\t\t\t},\n\t\t\tUnidirectional: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicTransitSiteAcl;\nimport com.pulumi.cloudflare.MagicTransitSiteAclArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteAclLan1Args;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteAclLan2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicTransitSiteAcl = new MagicTransitSiteAcl(\"exampleMagicTransitSiteAcl\", MagicTransitSiteAclArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .lan1(MagicTransitSiteAclLan1Args.builder()\n                .lanId(\"lan_id\")\n                .lanName(\"lan_name\")\n                .portRanges(\"8080-9000\")\n                .ports(1)\n                .subnets(\"192.0.2.1\")\n                .build())\n            .lan2(MagicTransitSiteAclLan2Args.builder()\n                .lanId(\"lan_id\")\n                .lanName(\"lan_name\")\n                .portRanges(\"8080-9000\")\n                .ports(1)\n                .subnets(\"192.0.2.1\")\n                .build())\n            .name(\"PIN Pad - Cash Register\")\n            .description(\"Allows local traffic between PIN pads and cash register.\")\n            .forwardLocally(true)\n            .protocols(\"tcp\")\n            .unidirectional(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicTransitSiteAcl:\n    type: cloudflare:MagicTransitSiteAcl\n    name: example_magic_transit_site_acl\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      siteId: 023e105f4ecef8ad9ca31a8372d0c353\n      lan1:\n        lanId: lan_id\n        lanName: lan_name\n        portRanges:\n          - 8080-9000\n        ports:\n          - 1\n        subnets:\n          - 192.0.2.1\n      lan2:\n        lanId: lan_id\n        lanName: lan_name\n        portRanges:\n          - 8080-9000\n        ports:\n          - 1\n        subnets:\n          - 192.0.2.1\n      name: PIN Pad - Cash Register\n      description: Allows local traffic between PIN pads and cash register.\n      forwardLocally: true\n      protocols:\n        - tcp\n      unidirectional: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicTransitSiteAcl:MagicTransitSiteAcl example '\u003caccount_id\u003e/\u003csite_id\u003e/\u003cacl_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "description": {
                    "type": "string",
                    "description": "Description for the ACL.\n"
                },
                "forwardLocally": {
                    "type": "boolean",
                    "description": "The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false.\n"
                },
                "lan1": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteAclLan1:MagicTransitSiteAclLan1"
                },
                "lan2": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteAclLan2:MagicTransitSiteAclLan2"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the ACL.\n"
                },
                "protocols": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "unidirectional": {
                    "type": "boolean",
                    "description": "The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.\n"
                }
            },
            "required": [
                "lan1",
                "lan2",
                "name",
                "siteId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "description": {
                    "type": "string",
                    "description": "Description for the ACL.\n"
                },
                "forwardLocally": {
                    "type": "boolean",
                    "description": "The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false.\n"
                },
                "lan1": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteAclLan1:MagicTransitSiteAclLan1"
                },
                "lan2": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteAclLan2:MagicTransitSiteAclLan2"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the ACL.\n"
                },
                "protocols": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "unidirectional": {
                    "type": "boolean",
                    "description": "The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.\n"
                }
            },
            "requiredInputs": [
                "lan1",
                "lan2",
                "name",
                "siteId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicTransitSiteAcl resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Description for the ACL.\n"
                    },
                    "forwardLocally": {
                        "type": "boolean",
                        "description": "The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false.\n"
                    },
                    "lan1": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteAclLan1:MagicTransitSiteAclLan1"
                    },
                    "lan2": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteAclLan2:MagicTransitSiteAclLan2"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the ACL.\n"
                    },
                    "protocols": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "unidirectional": {
                        "type": "boolean",
                        "description": "The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicTransitSiteLan:MagicTransitSiteLan": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteLan = new cloudflare.MagicTransitSiteLan(\"example_magic_transit_site_lan\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bondId: 2,\n    haLink: true,\n    isBreakout: true,\n    isPrioritized: true,\n    name: \"name\",\n    nat: {\n        staticPrefix: \"192.0.2.0/24\",\n    },\n    physport: 1,\n    routedSubnets: [{\n        nextHop: \"192.0.2.1\",\n        prefix: \"192.0.2.0/24\",\n        nat: {\n            staticPrefix: \"192.0.2.0/24\",\n        },\n    }],\n    staticAddressing: {\n        address: \"192.0.2.0/24\",\n        dhcpRelay: {\n            serverAddresses: [\"192.0.2.1\"],\n        },\n        dhcpServer: {\n            dhcpPoolEnd: \"192.0.2.1\",\n            dhcpPoolStart: \"192.0.2.1\",\n            dnsServer: \"192.0.2.1\",\n            dnsServers: [\"192.0.2.1\"],\n            reservations: {\n                \"00:11:22:33:44:55\": \"192.0.2.100\",\n                \"AA:BB:CC:DD:EE:FF\": \"192.168.1.101\",\n            },\n        },\n        secondaryAddress: \"192.0.2.0/24\",\n        virtualAddress: \"192.0.2.0/24\",\n    },\n    vlanTag: 42,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_lan = cloudflare.MagicTransitSiteLan(\"example_magic_transit_site_lan\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bond_id=2,\n    ha_link=True,\n    is_breakout=True,\n    is_prioritized=True,\n    name=\"name\",\n    nat={\n        \"static_prefix\": \"192.0.2.0/24\",\n    },\n    physport=1,\n    routed_subnets=[{\n        \"next_hop\": \"192.0.2.1\",\n        \"prefix\": \"192.0.2.0/24\",\n        \"nat\": {\n            \"static_prefix\": \"192.0.2.0/24\",\n        },\n    }],\n    static_addressing={\n        \"address\": \"192.0.2.0/24\",\n        \"dhcp_relay\": {\n            \"server_addresses\": [\"192.0.2.1\"],\n        },\n        \"dhcp_server\": {\n            \"dhcp_pool_end\": \"192.0.2.1\",\n            \"dhcp_pool_start\": \"192.0.2.1\",\n            \"dns_server\": \"192.0.2.1\",\n            \"dns_servers\": [\"192.0.2.1\"],\n            \"reservations\": {\n                \"00:11:22:33:44:55\": \"192.0.2.100\",\n                \"AA:BB:CC:DD:EE:FF\": \"192.168.1.101\",\n            },\n        },\n        \"secondary_address\": \"192.0.2.0/24\",\n        \"virtual_address\": \"192.0.2.0/24\",\n    },\n    vlan_tag=42)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteLan = new Cloudflare.Index.MagicTransitSiteLan(\"example_magic_transit_site_lan\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BondId = 2,\n        HaLink = true,\n        IsBreakout = true,\n        IsPrioritized = true,\n        Name = \"name\",\n        Nat = new Cloudflare.Inputs.MagicTransitSiteLanNatArgs\n        {\n            StaticPrefix = \"192.0.2.0/24\",\n        },\n        Physport = 1,\n        RoutedSubnets = new[]\n        {\n            new Cloudflare.Inputs.MagicTransitSiteLanRoutedSubnetArgs\n            {\n                NextHop = \"192.0.2.1\",\n                Prefix = \"192.0.2.0/24\",\n                Nat = new Cloudflare.Inputs.MagicTransitSiteLanRoutedSubnetNatArgs\n                {\n                    StaticPrefix = \"192.0.2.0/24\",\n                },\n            },\n        },\n        StaticAddressing = new Cloudflare.Inputs.MagicTransitSiteLanStaticAddressingArgs\n        {\n            Address = \"192.0.2.0/24\",\n            DhcpRelay = new Cloudflare.Inputs.MagicTransitSiteLanStaticAddressingDhcpRelayArgs\n            {\n                ServerAddresses = new[]\n                {\n                    \"192.0.2.1\",\n                },\n            },\n            DhcpServer = new Cloudflare.Inputs.MagicTransitSiteLanStaticAddressingDhcpServerArgs\n            {\n                DhcpPoolEnd = \"192.0.2.1\",\n                DhcpPoolStart = \"192.0.2.1\",\n                DnsServer = \"192.0.2.1\",\n                DnsServers = new[]\n                {\n                    \"192.0.2.1\",\n                },\n                Reservations = \n                {\n                    { \"00:11:22:33:44:55\", \"192.0.2.100\" },\n                    { \"AA:BB:CC:DD:EE:FF\", \"192.168.1.101\" },\n                },\n            },\n            SecondaryAddress = \"192.0.2.0/24\",\n            VirtualAddress = \"192.0.2.0/24\",\n        },\n        VlanTag = 42,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicTransitSiteLan(ctx, \"example_magic_transit_site_lan\", \u0026cloudflare.MagicTransitSiteLanArgs{\n\t\t\tAccountId:     pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:        pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBondId:        pulumi.Int(2),\n\t\t\tHaLink:        pulumi.Bool(true),\n\t\t\tIsBreakout:    pulumi.Bool(true),\n\t\t\tIsPrioritized: pulumi.Bool(true),\n\t\t\tName:          pulumi.String(\"name\"),\n\t\t\tNat: \u0026cloudflare.MagicTransitSiteLanNatArgs{\n\t\t\t\tStaticPrefix: pulumi.String(\"192.0.2.0/24\"),\n\t\t\t},\n\t\t\tPhysport: pulumi.Int(1),\n\t\t\tRoutedSubnets: cloudflare.MagicTransitSiteLanRoutedSubnetArray{\n\t\t\t\t\u0026cloudflare.MagicTransitSiteLanRoutedSubnetArgs{\n\t\t\t\t\tNextHop: pulumi.String(\"192.0.2.1\"),\n\t\t\t\t\tPrefix:  pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\tNat: \u0026cloudflare.MagicTransitSiteLanRoutedSubnetNatArgs{\n\t\t\t\t\t\tStaticPrefix: pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStaticAddressing: \u0026cloudflare.MagicTransitSiteLanStaticAddressingArgs{\n\t\t\t\tAddress: pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\tDhcpRelay: \u0026cloudflare.MagicTransitSiteLanStaticAddressingDhcpRelayArgs{\n\t\t\t\t\tServerAddresses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"192.0.2.1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tDhcpServer: \u0026cloudflare.MagicTransitSiteLanStaticAddressingDhcpServerArgs{\n\t\t\t\t\tDhcpPoolEnd:   pulumi.String(\"192.0.2.1\"),\n\t\t\t\t\tDhcpPoolStart: pulumi.String(\"192.0.2.1\"),\n\t\t\t\t\tDnsServer:     pulumi.String(\"192.0.2.1\"),\n\t\t\t\t\tDnsServers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"192.0.2.1\"),\n\t\t\t\t\t},\n\t\t\t\t\tReservations: pulumi.StringMap{\n\t\t\t\t\t\t\"00:11:22:33:44:55\": pulumi.String(\"192.0.2.100\"),\n\t\t\t\t\t\t\"AA:BB:CC:DD:EE:FF\": pulumi.String(\"192.168.1.101\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecondaryAddress: pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\tVirtualAddress:   pulumi.String(\"192.0.2.0/24\"),\n\t\t\t},\n\t\t\tVlanTag: pulumi.Int(42),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicTransitSiteLan;\nimport com.pulumi.cloudflare.MagicTransitSiteLanArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLanNatArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLanRoutedSubnetArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLanRoutedSubnetNatArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLanStaticAddressingArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLanStaticAddressingDhcpRelayArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteLanStaticAddressingDhcpServerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicTransitSiteLan = new MagicTransitSiteLan(\"exampleMagicTransitSiteLan\", MagicTransitSiteLanArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bondId(2)\n            .haLink(true)\n            .isBreakout(true)\n            .isPrioritized(true)\n            .name(\"name\")\n            .nat(MagicTransitSiteLanNatArgs.builder()\n                .staticPrefix(\"192.0.2.0/24\")\n                .build())\n            .physport(1)\n            .routedSubnets(MagicTransitSiteLanRoutedSubnetArgs.builder()\n                .nextHop(\"192.0.2.1\")\n                .prefix(\"192.0.2.0/24\")\n                .nat(MagicTransitSiteLanRoutedSubnetNatArgs.builder()\n                    .staticPrefix(\"192.0.2.0/24\")\n                    .build())\n                .build())\n            .staticAddressing(MagicTransitSiteLanStaticAddressingArgs.builder()\n                .address(\"192.0.2.0/24\")\n                .dhcpRelay(MagicTransitSiteLanStaticAddressingDhcpRelayArgs.builder()\n                    .serverAddresses(\"192.0.2.1\")\n                    .build())\n                .dhcpServer(MagicTransitSiteLanStaticAddressingDhcpServerArgs.builder()\n                    .dhcpPoolEnd(\"192.0.2.1\")\n                    .dhcpPoolStart(\"192.0.2.1\")\n                    .dnsServer(\"192.0.2.1\")\n                    .dnsServers(\"192.0.2.1\")\n                    .reservations(Map.ofEntries(\n                        Map.entry(\"00:11:22:33:44:55\", \"192.0.2.100\"),\n                        Map.entry(\"AA:BB:CC:DD:EE:FF\", \"192.168.1.101\")\n                    ))\n                    .build())\n                .secondaryAddress(\"192.0.2.0/24\")\n                .virtualAddress(\"192.0.2.0/24\")\n                .build())\n            .vlanTag(42)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicTransitSiteLan:\n    type: cloudflare:MagicTransitSiteLan\n    name: example_magic_transit_site_lan\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      siteId: 023e105f4ecef8ad9ca31a8372d0c353\n      bondId: 2\n      haLink: true\n      isBreakout: true\n      isPrioritized: true\n      name: name\n      nat:\n        staticPrefix: 192.0.2.0/24\n      physport: 1\n      routedSubnets:\n        - nextHop: 192.0.2.1\n          prefix: 192.0.2.0/24\n          nat:\n            staticPrefix: 192.0.2.0/24\n      staticAddressing:\n        address: 192.0.2.0/24\n        dhcpRelay:\n          serverAddresses:\n            - 192.0.2.1\n        dhcpServer:\n          dhcpPoolEnd: 192.0.2.1\n          dhcpPoolStart: 192.0.2.1\n          dnsServer: 192.0.2.1\n          dnsServers:\n            - 192.0.2.1\n          reservations:\n            00:11:22:33:44:55: 192.0.2.100\n            AA:BB:CC:DD:EE:FF: 192.168.1.101\n        secondaryAddress: 192.0.2.0/24\n        virtualAddress: 192.0.2.0/24\n      vlanTag: 42\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicTransitSiteLan:MagicTransitSiteLan example '\u003caccount_id\u003e/\u003csite_id\u003e/\u003clan_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "bondId": {
                    "type": "integer"
                },
                "haLink": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for HA probing. only works for site with HA turned on. only one LAN can be set as the ha_link.\n"
                },
                "isBreakout": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for source-based breakout traffic\n"
                },
                "isPrioritized": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for source-based prioritized traffic\n"
                },
                "name": {
                    "type": "string"
                },
                "nat": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanNat:MagicTransitSiteLanNat"
                },
                "physport": {
                    "type": "integer"
                },
                "routedSubnets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteLanRoutedSubnet:MagicTransitSiteLanRoutedSubnet"
                    }
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "staticAddressing": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanStaticAddressing:MagicTransitSiteLanStaticAddressing",
                    "description": "If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static*address is required along with secondary and virtual address.\n"
                },
                "vlanTag": {
                    "type": "integer",
                    "description": "VLAN ID. Use zero for untagged.\n"
                }
            },
            "required": [
                "siteId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "bondId": {
                    "type": "integer"
                },
                "haLink": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for HA probing. only works for site with HA turned on. only one LAN can be set as the ha_link.\n"
                },
                "isBreakout": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for source-based breakout traffic\n"
                },
                "isPrioritized": {
                    "type": "boolean",
                    "description": "mark true to use this LAN for source-based prioritized traffic\n"
                },
                "name": {
                    "type": "string"
                },
                "nat": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanNat:MagicTransitSiteLanNat"
                },
                "physport": {
                    "type": "integer"
                },
                "routedSubnets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteLanRoutedSubnet:MagicTransitSiteLanRoutedSubnet"
                    }
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "staticAddressing": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteLanStaticAddressing:MagicTransitSiteLanStaticAddressing",
                    "description": "If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static*address is required along with secondary and virtual address.\n"
                },
                "vlanTag": {
                    "type": "integer",
                    "description": "VLAN ID. Use zero for untagged.\n"
                }
            },
            "requiredInputs": [
                "siteId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicTransitSiteLan resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "bondId": {
                        "type": "integer"
                    },
                    "haLink": {
                        "type": "boolean",
                        "description": "mark true to use this LAN for HA probing. only works for site with HA turned on. only one LAN can be set as the ha_link.\n"
                    },
                    "isBreakout": {
                        "type": "boolean",
                        "description": "mark true to use this LAN for source-based breakout traffic\n"
                    },
                    "isPrioritized": {
                        "type": "boolean",
                        "description": "mark true to use this LAN for source-based prioritized traffic\n"
                    },
                    "name": {
                        "type": "string"
                    },
                    "nat": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteLanNat:MagicTransitSiteLanNat"
                    },
                    "physport": {
                        "type": "integer"
                    },
                    "routedSubnets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/MagicTransitSiteLanRoutedSubnet:MagicTransitSiteLanRoutedSubnet"
                        }
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "staticAddressing": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteLanStaticAddressing:MagicTransitSiteLanStaticAddressing",
                        "description": "If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static*address is required along with secondary and virtual address.\n"
                    },
                    "vlanTag": {
                        "type": "integer",
                        "description": "VLAN ID. Use zero for untagged.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicTransitSiteWan:MagicTransitSiteWan": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteWan = new cloudflare.MagicTransitSiteWan(\"example_magic_transit_site_wan\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    physport: 1,\n    name: \"name\",\n    priority: 0,\n    staticAddressing: {\n        address: \"192.0.2.0/24\",\n        gatewayAddress: \"192.0.2.1\",\n        secondaryAddress: \"192.0.2.0/24\",\n    },\n    vlanTag: 42,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_wan = cloudflare.MagicTransitSiteWan(\"example_magic_transit_site_wan\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    physport=1,\n    name=\"name\",\n    priority=0,\n    static_addressing={\n        \"address\": \"192.0.2.0/24\",\n        \"gateway_address\": \"192.0.2.1\",\n        \"secondary_address\": \"192.0.2.0/24\",\n    },\n    vlan_tag=42)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteWan = new Cloudflare.Index.MagicTransitSiteWan(\"example_magic_transit_site_wan\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Physport = 1,\n        Name = \"name\",\n        Priority = 0,\n        StaticAddressing = new Cloudflare.Inputs.MagicTransitSiteWanStaticAddressingArgs\n        {\n            Address = \"192.0.2.0/24\",\n            GatewayAddress = \"192.0.2.1\",\n            SecondaryAddress = \"192.0.2.0/24\",\n        },\n        VlanTag = 42,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicTransitSiteWan(ctx, \"example_magic_transit_site_wan\", \u0026cloudflare.MagicTransitSiteWanArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPhysport:  pulumi.Int(1),\n\t\t\tName:      pulumi.String(\"name\"),\n\t\t\tPriority:  pulumi.Int(0),\n\t\t\tStaticAddressing: \u0026cloudflare.MagicTransitSiteWanStaticAddressingArgs{\n\t\t\t\tAddress:          pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\tGatewayAddress:   pulumi.String(\"192.0.2.1\"),\n\t\t\t\tSecondaryAddress: pulumi.String(\"192.0.2.0/24\"),\n\t\t\t},\n\t\t\tVlanTag: pulumi.Int(42),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicTransitSiteWan;\nimport com.pulumi.cloudflare.MagicTransitSiteWanArgs;\nimport com.pulumi.cloudflare.inputs.MagicTransitSiteWanStaticAddressingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicTransitSiteWan = new MagicTransitSiteWan(\"exampleMagicTransitSiteWan\", MagicTransitSiteWanArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .physport(1)\n            .name(\"name\")\n            .priority(0)\n            .staticAddressing(MagicTransitSiteWanStaticAddressingArgs.builder()\n                .address(\"192.0.2.0/24\")\n                .gatewayAddress(\"192.0.2.1\")\n                .secondaryAddress(\"192.0.2.0/24\")\n                .build())\n            .vlanTag(42)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicTransitSiteWan:\n    type: cloudflare:MagicTransitSiteWan\n    name: example_magic_transit_site_wan\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      siteId: 023e105f4ecef8ad9ca31a8372d0c353\n      physport: 1\n      name: name\n      priority: 0\n      staticAddressing:\n        address: 192.0.2.0/24\n        gatewayAddress: 192.0.2.1\n        secondaryAddress: 192.0.2.0/24\n      vlanTag: 42\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicTransitSiteWan:MagicTransitSiteWan example '\u003caccount_id\u003e/\u003csite_id\u003e/\u003cwan_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "healthCheckRate": {
                    "type": "string",
                    "description": "Magic WAN health check rate for tunnels created on this link. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                },
                "name": {
                    "type": "string"
                },
                "physport": {
                    "type": "integer"
                },
                "priority": {
                    "type": "integer"
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "staticAddressing": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteWanStaticAddressing:MagicTransitSiteWanStaticAddressing",
                    "description": "(optional) if omitted, use DHCP. Submit secondary*address when site is in high availability mode.\n"
                },
                "vlanTag": {
                    "type": "integer",
                    "description": "VLAN ID. Use zero for untagged.\n"
                }
            },
            "required": [
                "healthCheckRate",
                "physport",
                "siteId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "name": {
                    "type": "string"
                },
                "physport": {
                    "type": "integer"
                },
                "priority": {
                    "type": "integer"
                },
                "siteId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "staticAddressing": {
                    "$ref": "#/types/cloudflare:index/MagicTransitSiteWanStaticAddressing:MagicTransitSiteWanStaticAddressing",
                    "description": "(optional) if omitted, use DHCP. Submit secondary*address when site is in high availability mode.\n"
                },
                "vlanTag": {
                    "type": "integer",
                    "description": "VLAN ID. Use zero for untagged.\n"
                }
            },
            "requiredInputs": [
                "physport",
                "siteId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicTransitSiteWan resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "healthCheckRate": {
                        "type": "string",
                        "description": "Magic WAN health check rate for tunnels created on this link. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n"
                    },
                    "name": {
                        "type": "string"
                    },
                    "physport": {
                        "type": "integer"
                    },
                    "priority": {
                        "type": "integer"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "staticAddressing": {
                        "$ref": "#/types/cloudflare:index/MagicTransitSiteWanStaticAddressing:MagicTransitSiteWanStaticAddressing",
                        "description": "(optional) if omitted, use DHCP. Submit secondary*address when site is in high availability mode.\n"
                    },
                    "vlanTag": {
                        "type": "integer",
                        "description": "VLAN ID. Use zero for untagged.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/magicWanGreTunnel:MagicWanGreTunnel": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanGreTunnel = new cloudflare.MagicWanGreTunnel(\"example_magic_wan_gre_tunnel\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    cloudflareGreEndpoint: \"203.0.113.1\",\n    customerGreEndpoint: \"203.0.113.1\",\n    interfaceAddress: \"192.0.2.0/31\",\n    name: \"GRE_1\",\n    automaticReturnRouting: true,\n    bgp: {\n        customerAsn: 0,\n        extraPrefixes: [\"string\"],\n        md5Key: \"md5_key\",\n    },\n    description: \"Tunnel for ISP X\",\n    healthCheck: {\n        direction: \"bidirectional\",\n        enabled: true,\n        rate: \"low\",\n        target: {\n            saved: \"203.0.113.1\",\n        },\n        type: \"request\",\n    },\n    interfaceAddress6: \"2606:54c1:7:0:a9fe:12d2:1:200/127\",\n    mtu: 0,\n    ttl: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_gre_tunnel = cloudflare.MagicWanGreTunnel(\"example_magic_wan_gre_tunnel\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    cloudflare_gre_endpoint=\"203.0.113.1\",\n    customer_gre_endpoint=\"203.0.113.1\",\n    interface_address=\"192.0.2.0/31\",\n    name=\"GRE_1\",\n    automatic_return_routing=True,\n    bgp={\n        \"customer_asn\": 0,\n        \"extra_prefixes\": [\"string\"],\n        \"md5_key\": \"md5_key\",\n    },\n    description=\"Tunnel for ISP X\",\n    health_check={\n        \"direction\": \"bidirectional\",\n        \"enabled\": True,\n        \"rate\": \"low\",\n        \"target\": {\n            \"saved\": \"203.0.113.1\",\n        },\n        \"type\": \"request\",\n    },\n    interface_address6=\"2606:54c1:7:0:a9fe:12d2:1:200/127\",\n    mtu=0,\n    ttl=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanGreTunnel = new Cloudflare.Index.MagicWanGreTunnel(\"example_magic_wan_gre_tunnel\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CloudflareGreEndpoint = \"203.0.113.1\",\n        CustomerGreEndpoint = \"203.0.113.1\",\n        InterfaceAddress = \"192.0.2.0/31\",\n        Name = \"GRE_1\",\n        AutomaticReturnRouting = true,\n        Bgp = new Cloudflare.Inputs.MagicWanGreTunnelBgpArgs\n        {\n            CustomerAsn = 0,\n            ExtraPrefixes = new[]\n            {\n                \"string\",\n            },\n            Md5Key = \"md5_key\",\n        },\n        Description = \"Tunnel for ISP X\",\n        HealthCheck = new Cloudflare.Inputs.MagicWanGreTunnelHealthCheckArgs\n        {\n            Direction = \"bidirectional\",\n            Enabled = true,\n            Rate = \"low\",\n            Target = new Cloudflare.Inputs.MagicWanGreTunnelHealthCheckTargetArgs\n            {\n                Saved = \"203.0.113.1\",\n            },\n            Type = \"request\",\n        },\n        InterfaceAddress6 = \"2606:54c1:7:0:a9fe:12d2:1:200/127\",\n        Mtu = 0,\n        Ttl = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicWanGreTunnel(ctx, \"example_magic_wan_gre_tunnel\", \u0026cloudflare.MagicWanGreTunnelArgs{\n\t\t\tAccountId:              pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCloudflareGreEndpoint:  pulumi.String(\"203.0.113.1\"),\n\t\t\tCustomerGreEndpoint:    pulumi.String(\"203.0.113.1\"),\n\t\t\tInterfaceAddress:       pulumi.String(\"192.0.2.0/31\"),\n\t\t\tName:                   pulumi.String(\"GRE_1\"),\n\t\t\tAutomaticReturnRouting: pulumi.Bool(true),\n\t\t\tBgp: \u0026cloudflare.MagicWanGreTunnelBgpArgs{\n\t\t\t\tCustomerAsn: pulumi.Int(0),\n\t\t\t\tExtraPrefixes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tMd5Key: pulumi.String(\"md5_key\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Tunnel for ISP X\"),\n\t\t\tHealthCheck: \u0026cloudflare.MagicWanGreTunnelHealthCheckArgs{\n\t\t\t\tDirection: pulumi.String(\"bidirectional\"),\n\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\tRate:      pulumi.String(\"low\"),\n\t\t\t\tTarget: \u0026cloudflare.MagicWanGreTunnelHealthCheckTargetArgs{\n\t\t\t\t\tSaved: pulumi.String(\"203.0.113.1\"),\n\t\t\t\t},\n\t\t\t\tType: pulumi.String(\"request\"),\n\t\t\t},\n\t\t\tInterfaceAddress6: pulumi.String(\"2606:54c1:7:0:a9fe:12d2:1:200/127\"),\n\t\t\tMtu:               pulumi.Int(0),\n\t\t\tTtl:               pulumi.Int(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicWanGreTunnel;\nimport com.pulumi.cloudflare.MagicWanGreTunnelArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanGreTunnelBgpArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanGreTunnelHealthCheckArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanGreTunnelHealthCheckTargetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicWanGreTunnel = new MagicWanGreTunnel(\"exampleMagicWanGreTunnel\", MagicWanGreTunnelArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .cloudflareGreEndpoint(\"203.0.113.1\")\n            .customerGreEndpoint(\"203.0.113.1\")\n            .interfaceAddress(\"192.0.2.0/31\")\n            .name(\"GRE_1\")\n            .automaticReturnRouting(true)\n            .bgp(MagicWanGreTunnelBgpArgs.builder()\n                .customerAsn(0)\n                .extraPrefixes(\"string\")\n                .md5Key(\"md5_key\")\n                .build())\n            .description(\"Tunnel for ISP X\")\n            .healthCheck(MagicWanGreTunnelHealthCheckArgs.builder()\n                .direction(\"bidirectional\")\n                .enabled(true)\n                .rate(\"low\")\n                .target(MagicWanGreTunnelHealthCheckTargetArgs.builder()\n                    .saved(\"203.0.113.1\")\n                    .build())\n                .type(\"request\")\n                .build())\n            .interfaceAddress6(\"2606:54c1:7:0:a9fe:12d2:1:200/127\")\n            .mtu(0)\n            .ttl(0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicWanGreTunnel:\n    type: cloudflare:MagicWanGreTunnel\n    name: example_magic_wan_gre_tunnel\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      cloudflareGreEndpoint: 203.0.113.1\n      customerGreEndpoint: 203.0.113.1\n      interfaceAddress: 192.0.2.0/31\n      name: GRE_1\n      automaticReturnRouting: true\n      bgp:\n        customerAsn: 0\n        extraPrefixes:\n          - string\n        md5Key: md5_key\n      description: Tunnel for ISP X\n      healthCheck:\n        direction: bidirectional\n        enabled: true\n        rate: low\n        target:\n          saved: 203.0.113.1\n        type: request\n      interfaceAddress6: 2606:54c1:7:0:a9fe:12d2:1:200/127\n      mtu: 0\n      ttl: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicWanGreTunnel:MagicWanGreTunnel example '\u003caccount_id\u003e/\u003cgre_tunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "automaticReturnRouting": {
                    "type": "boolean",
                    "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                },
                "bgp": {
                    "$ref": "#/types/cloudflare:index/MagicWanGreTunnelBgp:MagicWanGreTunnelBgp"
                },
                "bgpStatus": {
                    "$ref": "#/types/cloudflare:index/MagicWanGreTunnelBgpStatus:MagicWanGreTunnelBgpStatus"
                },
                "cloudflareGreEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the Cloudflare side of the GRE tunnel.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was created.\n"
                },
                "customerGreEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the customer side of the GRE tunnel.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description of the GRE tunnel.\n"
                },
                "healthCheck": {
                    "$ref": "#/types/cloudflare:index/MagicWanGreTunnelHealthCheck:MagicWanGreTunnelHealthCheck"
                },
                "interfaceAddress": {
                    "type": "string",
                    "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                },
                "interfaceAddress6": {
                    "type": "string",
                    "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was last modified.\n"
                },
                "mtu": {
                    "type": "integer",
                    "description": "Maximum Transmission Unit (MTU) in bytes for the GRE tunnel. The minimum value is 576.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tunnel. The name cannot contain spaces or special characters, must be 15 characters or less, and cannot share a name with another GRE tunnel.\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "Time To Live (TTL) in number of hops of the GRE tunnel.\n"
                }
            },
            "required": [
                "accountId",
                "automaticReturnRouting",
                "bgpStatus",
                "cloudflareGreEndpoint",
                "createdOn",
                "customerGreEndpoint",
                "description",
                "healthCheck",
                "interfaceAddress",
                "modifiedOn",
                "mtu",
                "name",
                "ttl"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "automaticReturnRouting": {
                    "type": "boolean",
                    "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                },
                "bgp": {
                    "$ref": "#/types/cloudflare:index/MagicWanGreTunnelBgp:MagicWanGreTunnelBgp"
                },
                "cloudflareGreEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the Cloudflare side of the GRE tunnel.\n"
                },
                "customerGreEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the customer side of the GRE tunnel.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description of the GRE tunnel.\n"
                },
                "healthCheck": {
                    "$ref": "#/types/cloudflare:index/MagicWanGreTunnelHealthCheck:MagicWanGreTunnelHealthCheck"
                },
                "interfaceAddress": {
                    "type": "string",
                    "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                },
                "interfaceAddress6": {
                    "type": "string",
                    "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                },
                "mtu": {
                    "type": "integer",
                    "description": "Maximum Transmission Unit (MTU) in bytes for the GRE tunnel. The minimum value is 576.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tunnel. The name cannot contain spaces or special characters, must be 15 characters or less, and cannot share a name with another GRE tunnel.\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "Time To Live (TTL) in number of hops of the GRE tunnel.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "cloudflareGreEndpoint",
                "customerGreEndpoint",
                "interfaceAddress",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicWanGreTunnel resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "automaticReturnRouting": {
                        "type": "boolean",
                        "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                    },
                    "bgp": {
                        "$ref": "#/types/cloudflare:index/MagicWanGreTunnelBgp:MagicWanGreTunnelBgp"
                    },
                    "bgpStatus": {
                        "$ref": "#/types/cloudflare:index/MagicWanGreTunnelBgpStatus:MagicWanGreTunnelBgpStatus"
                    },
                    "cloudflareGreEndpoint": {
                        "type": "string",
                        "description": "The IP address assigned to the Cloudflare side of the GRE tunnel.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The date and time the tunnel was created.\n"
                    },
                    "customerGreEndpoint": {
                        "type": "string",
                        "description": "The IP address assigned to the customer side of the GRE tunnel.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An optional description of the GRE tunnel.\n"
                    },
                    "healthCheck": {
                        "$ref": "#/types/cloudflare:index/MagicWanGreTunnelHealthCheck:MagicWanGreTunnelHealthCheck"
                    },
                    "interfaceAddress": {
                        "type": "string",
                        "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                    },
                    "interfaceAddress6": {
                        "type": "string",
                        "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The date and time the tunnel was last modified.\n"
                    },
                    "mtu": {
                        "type": "integer",
                        "description": "Maximum Transmission Unit (MTU) in bytes for the GRE tunnel. The minimum value is 576.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the tunnel. The name cannot contain spaces or special characters, must be 15 characters or less, and cannot share a name with another GRE tunnel.\n"
                    },
                    "ttl": {
                        "type": "integer",
                        "description": "Time To Live (TTL) in number of hops of the GRE tunnel.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/greTunnel:GreTunnel"
                }
            ]
        },
        "cloudflare:index/magicWanIpsecTunnel:MagicWanIpsecTunnel": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanIpsecTunnel = new cloudflare.MagicWanIpsecTunnel(\"example_magic_wan_ipsec_tunnel\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    cloudflareEndpoint: \"203.0.113.1\",\n    interfaceAddress: \"192.0.2.0/31\",\n    name: \"IPsec_1\",\n    automaticReturnRouting: true,\n    bgp: {\n        customerAsn: 0,\n        extraPrefixes: [\"string\"],\n        md5Key: \"md5_key\",\n    },\n    customRemoteIdentities: {\n        fqdnId: \"fqdn_id\",\n    },\n    customerEndpoint: \"203.0.113.1\",\n    description: \"Tunnel for ISP X\",\n    healthCheck: {\n        direction: \"bidirectional\",\n        enabled: true,\n        rate: \"low\",\n        target: {\n            saved: \"203.0.113.1\",\n        },\n        type: \"request\",\n    },\n    interfaceAddress6: \"2606:54c1:7:0:a9fe:12d2:1:200/127\",\n    psk: \"O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy\",\n    replayProtection: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_ipsec_tunnel = cloudflare.MagicWanIpsecTunnel(\"example_magic_wan_ipsec_tunnel\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    cloudflare_endpoint=\"203.0.113.1\",\n    interface_address=\"192.0.2.0/31\",\n    name=\"IPsec_1\",\n    automatic_return_routing=True,\n    bgp={\n        \"customer_asn\": 0,\n        \"extra_prefixes\": [\"string\"],\n        \"md5_key\": \"md5_key\",\n    },\n    custom_remote_identities={\n        \"fqdn_id\": \"fqdn_id\",\n    },\n    customer_endpoint=\"203.0.113.1\",\n    description=\"Tunnel for ISP X\",\n    health_check={\n        \"direction\": \"bidirectional\",\n        \"enabled\": True,\n        \"rate\": \"low\",\n        \"target\": {\n            \"saved\": \"203.0.113.1\",\n        },\n        \"type\": \"request\",\n    },\n    interface_address6=\"2606:54c1:7:0:a9fe:12d2:1:200/127\",\n    psk=\"O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy\",\n    replay_protection=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanIpsecTunnel = new Cloudflare.Index.MagicWanIpsecTunnel(\"example_magic_wan_ipsec_tunnel\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CloudflareEndpoint = \"203.0.113.1\",\n        InterfaceAddress = \"192.0.2.0/31\",\n        Name = \"IPsec_1\",\n        AutomaticReturnRouting = true,\n        Bgp = new Cloudflare.Inputs.MagicWanIpsecTunnelBgpArgs\n        {\n            CustomerAsn = 0,\n            ExtraPrefixes = new[]\n            {\n                \"string\",\n            },\n            Md5Key = \"md5_key\",\n        },\n        CustomRemoteIdentities = new Cloudflare.Inputs.MagicWanIpsecTunnelCustomRemoteIdentitiesArgs\n        {\n            FqdnId = \"fqdn_id\",\n        },\n        CustomerEndpoint = \"203.0.113.1\",\n        Description = \"Tunnel for ISP X\",\n        HealthCheck = new Cloudflare.Inputs.MagicWanIpsecTunnelHealthCheckArgs\n        {\n            Direction = \"bidirectional\",\n            Enabled = true,\n            Rate = \"low\",\n            Target = new Cloudflare.Inputs.MagicWanIpsecTunnelHealthCheckTargetArgs\n            {\n                Saved = \"203.0.113.1\",\n            },\n            Type = \"request\",\n        },\n        InterfaceAddress6 = \"2606:54c1:7:0:a9fe:12d2:1:200/127\",\n        Psk = \"O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy\",\n        ReplayProtection = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicWanIpsecTunnel(ctx, \"example_magic_wan_ipsec_tunnel\", \u0026cloudflare.MagicWanIpsecTunnelArgs{\n\t\t\tAccountId:              pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCloudflareEndpoint:     pulumi.String(\"203.0.113.1\"),\n\t\t\tInterfaceAddress:       pulumi.String(\"192.0.2.0/31\"),\n\t\t\tName:                   pulumi.String(\"IPsec_1\"),\n\t\t\tAutomaticReturnRouting: pulumi.Bool(true),\n\t\t\tBgp: \u0026cloudflare.MagicWanIpsecTunnelBgpArgs{\n\t\t\t\tCustomerAsn: pulumi.Int(0),\n\t\t\t\tExtraPrefixes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tMd5Key: pulumi.String(\"md5_key\"),\n\t\t\t},\n\t\t\tCustomRemoteIdentities: \u0026cloudflare.MagicWanIpsecTunnelCustomRemoteIdentitiesArgs{\n\t\t\t\tFqdnId: pulumi.String(\"fqdn_id\"),\n\t\t\t},\n\t\t\tCustomerEndpoint: pulumi.String(\"203.0.113.1\"),\n\t\t\tDescription:      pulumi.String(\"Tunnel for ISP X\"),\n\t\t\tHealthCheck: \u0026cloudflare.MagicWanIpsecTunnelHealthCheckArgs{\n\t\t\t\tDirection: pulumi.String(\"bidirectional\"),\n\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\tRate:      pulumi.String(\"low\"),\n\t\t\t\tTarget: \u0026cloudflare.MagicWanIpsecTunnelHealthCheckTargetArgs{\n\t\t\t\t\tSaved: pulumi.String(\"203.0.113.1\"),\n\t\t\t\t},\n\t\t\t\tType: pulumi.String(\"request\"),\n\t\t\t},\n\t\t\tInterfaceAddress6: pulumi.String(\"2606:54c1:7:0:a9fe:12d2:1:200/127\"),\n\t\t\tPsk:               pulumi.String(\"O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy\"),\n\t\t\tReplayProtection:  pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicWanIpsecTunnel;\nimport com.pulumi.cloudflare.MagicWanIpsecTunnelArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanIpsecTunnelBgpArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanIpsecTunnelCustomRemoteIdentitiesArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanIpsecTunnelHealthCheckArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanIpsecTunnelHealthCheckTargetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicWanIpsecTunnel = new MagicWanIpsecTunnel(\"exampleMagicWanIpsecTunnel\", MagicWanIpsecTunnelArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .cloudflareEndpoint(\"203.0.113.1\")\n            .interfaceAddress(\"192.0.2.0/31\")\n            .name(\"IPsec_1\")\n            .automaticReturnRouting(true)\n            .bgp(MagicWanIpsecTunnelBgpArgs.builder()\n                .customerAsn(0)\n                .extraPrefixes(\"string\")\n                .md5Key(\"md5_key\")\n                .build())\n            .customRemoteIdentities(MagicWanIpsecTunnelCustomRemoteIdentitiesArgs.builder()\n                .fqdnId(\"fqdn_id\")\n                .build())\n            .customerEndpoint(\"203.0.113.1\")\n            .description(\"Tunnel for ISP X\")\n            .healthCheck(MagicWanIpsecTunnelHealthCheckArgs.builder()\n                .direction(\"bidirectional\")\n                .enabled(true)\n                .rate(\"low\")\n                .target(MagicWanIpsecTunnelHealthCheckTargetArgs.builder()\n                    .saved(\"203.0.113.1\")\n                    .build())\n                .type(\"request\")\n                .build())\n            .interfaceAddress6(\"2606:54c1:7:0:a9fe:12d2:1:200/127\")\n            .psk(\"O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy\")\n            .replayProtection(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicWanIpsecTunnel:\n    type: cloudflare:MagicWanIpsecTunnel\n    name: example_magic_wan_ipsec_tunnel\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      cloudflareEndpoint: 203.0.113.1\n      interfaceAddress: 192.0.2.0/31\n      name: IPsec_1\n      automaticReturnRouting: true\n      bgp:\n        customerAsn: 0\n        extraPrefixes:\n          - string\n        md5Key: md5_key\n      customRemoteIdentities:\n        fqdnId: fqdn_id\n      customerEndpoint: 203.0.113.1\n      description: Tunnel for ISP X\n      healthCheck:\n        direction: bidirectional\n        enabled: true\n        rate: low\n        target:\n          saved: 203.0.113.1\n        type: request\n      interfaceAddress6: 2606:54c1:7:0:a9fe:12d2:1:200/127\n      psk: O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy\n      replayProtection: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicWanIpsecTunnel:MagicWanIpsecTunnel example '\u003caccount_id\u003e/\u003cipsec_tunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "allowNullCipher": {
                    "type": "boolean",
                    "description": "When \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can use a null-cipher (`ENCR_NULL`) in the ESP tunnel (Phase 2).\n"
                },
                "automaticReturnRouting": {
                    "type": "boolean",
                    "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                },
                "bgp": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelBgp:MagicWanIpsecTunnelBgp"
                },
                "bgpStatus": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelBgpStatus:MagicWanIpsecTunnelBgpStatus"
                },
                "cloudflareEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the Cloudflare side of the IPsec tunnel.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was created.\n"
                },
                "customRemoteIdentities": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelCustomRemoteIdentities:MagicWanIpsecTunnelCustomRemoteIdentities"
                },
                "customerEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the customer side of the IPsec tunnel. Not required, but must be set for proactive traceroutes to work.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description forthe IPsec tunnel.\n"
                },
                "healthCheck": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelHealthCheck:MagicWanIpsecTunnelHealthCheck"
                },
                "interfaceAddress": {
                    "type": "string",
                    "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                },
                "interfaceAddress6": {
                    "type": "string",
                    "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The date and time the tunnel was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the IPsec tunnel. The name cannot share a name with other tunnels.\n"
                },
                "psk": {
                    "type": "string",
                    "description": "A randomly generated or provided string for use in the IPsec tunnel.\n",
                    "secret": true
                },
                "pskMetadata": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelPskMetadata:MagicWanIpsecTunnelPskMetadata",
                    "description": "The PSK metadata that includes when the PSK was generated.\n"
                },
                "replayProtection": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, then IPsec replay protection will be supported in the Cloudflare-to-customer direction.\n"
                }
            },
            "required": [
                "accountId",
                "allowNullCipher",
                "automaticReturnRouting",
                "bgpStatus",
                "cloudflareEndpoint",
                "createdOn",
                "description",
                "healthCheck",
                "interfaceAddress",
                "modifiedOn",
                "name",
                "pskMetadata",
                "replayProtection"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "automaticReturnRouting": {
                    "type": "boolean",
                    "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                },
                "bgp": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelBgp:MagicWanIpsecTunnelBgp"
                },
                "cloudflareEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the Cloudflare side of the IPsec tunnel.\n"
                },
                "customRemoteIdentities": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelCustomRemoteIdentities:MagicWanIpsecTunnelCustomRemoteIdentities"
                },
                "customerEndpoint": {
                    "type": "string",
                    "description": "The IP address assigned to the customer side of the IPsec tunnel. Not required, but must be set for proactive traceroutes to work.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description forthe IPsec tunnel.\n"
                },
                "healthCheck": {
                    "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelHealthCheck:MagicWanIpsecTunnelHealthCheck"
                },
                "interfaceAddress": {
                    "type": "string",
                    "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                },
                "interfaceAddress6": {
                    "type": "string",
                    "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the IPsec tunnel. The name cannot share a name with other tunnels.\n"
                },
                "psk": {
                    "type": "string",
                    "description": "A randomly generated or provided string for use in the IPsec tunnel.\n",
                    "secret": true
                },
                "replayProtection": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, then IPsec replay protection will be supported in the Cloudflare-to-customer direction.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "cloudflareEndpoint",
                "interfaceAddress",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicWanIpsecTunnel resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "allowNullCipher": {
                        "type": "boolean",
                        "description": "When \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can use a null-cipher (`ENCR_NULL`) in the ESP tunnel (Phase 2).\n"
                    },
                    "automaticReturnRouting": {
                        "type": "boolean",
                        "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.\n"
                    },
                    "bgp": {
                        "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelBgp:MagicWanIpsecTunnelBgp"
                    },
                    "bgpStatus": {
                        "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelBgpStatus:MagicWanIpsecTunnelBgpStatus"
                    },
                    "cloudflareEndpoint": {
                        "type": "string",
                        "description": "The IP address assigned to the Cloudflare side of the IPsec tunnel.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The date and time the tunnel was created.\n"
                    },
                    "customRemoteIdentities": {
                        "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelCustomRemoteIdentities:MagicWanIpsecTunnelCustomRemoteIdentities"
                    },
                    "customerEndpoint": {
                        "type": "string",
                        "description": "The IP address assigned to the customer side of the IPsec tunnel. Not required, but must be set for proactive traceroutes to work.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An optional description forthe IPsec tunnel.\n"
                    },
                    "healthCheck": {
                        "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelHealthCheck:MagicWanIpsecTunnelHealthCheck"
                    },
                    "interfaceAddress": {
                        "type": "string",
                        "description": "A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.\n"
                    },
                    "interfaceAddress6": {
                        "type": "string",
                        "description": "A 127 bit IPV6 prefix from within the virtual*subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual*subnet6. Eg if virtual*subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface*address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The date and time the tunnel was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the IPsec tunnel. The name cannot share a name with other tunnels.\n"
                    },
                    "psk": {
                        "type": "string",
                        "description": "A randomly generated or provided string for use in the IPsec tunnel.\n",
                        "secret": true
                    },
                    "pskMetadata": {
                        "$ref": "#/types/cloudflare:index/MagicWanIpsecTunnelPskMetadata:MagicWanIpsecTunnelPskMetadata",
                        "description": "The PSK metadata that includes when the PSK was generated.\n"
                    },
                    "replayProtection": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, then IPsec replay protection will be supported in the Cloudflare-to-customer direction.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/ipsecTunnel:IpsecTunnel"
                }
            ]
        },
        "cloudflare:index/magicWanStaticRoute:MagicWanStaticRoute": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanStaticRoute = new cloudflare.MagicWanStaticRoute(\"example_magic_wan_static_route\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    nexthop: \"203.0.113.1\",\n    prefix: \"192.0.2.0/24\",\n    priority: 0,\n    description: \"New route for new prefix 203.0.113.1\",\n    scope: {\n        coloNames: [\"den01\"],\n        coloRegions: [\"APAC\"],\n    },\n    weight: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_static_route = cloudflare.MagicWanStaticRoute(\"example_magic_wan_static_route\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    nexthop=\"203.0.113.1\",\n    prefix=\"192.0.2.0/24\",\n    priority=0,\n    description=\"New route for new prefix 203.0.113.1\",\n    scope={\n        \"colo_names\": [\"den01\"],\n        \"colo_regions\": [\"APAC\"],\n    },\n    weight=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanStaticRoute = new Cloudflare.Index.MagicWanStaticRoute(\"example_magic_wan_static_route\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Nexthop = \"203.0.113.1\",\n        Prefix = \"192.0.2.0/24\",\n        Priority = 0,\n        Description = \"New route for new prefix 203.0.113.1\",\n        Scope = new Cloudflare.Inputs.MagicWanStaticRouteScopeArgs\n        {\n            ColoNames = new[]\n            {\n                \"den01\",\n            },\n            ColoRegions = new[]\n            {\n                \"APAC\",\n            },\n        },\n        Weight = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicWanStaticRoute(ctx, \"example_magic_wan_static_route\", \u0026cloudflare.MagicWanStaticRouteArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNexthop:     pulumi.String(\"203.0.113.1\"),\n\t\t\tPrefix:      pulumi.String(\"192.0.2.0/24\"),\n\t\t\tPriority:    pulumi.Int(0),\n\t\t\tDescription: pulumi.String(\"New route for new prefix 203.0.113.1\"),\n\t\t\tScope: \u0026cloudflare.MagicWanStaticRouteScopeArgs{\n\t\t\t\tColoNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"den01\"),\n\t\t\t\t},\n\t\t\t\tColoRegions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"APAC\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tWeight: pulumi.Int(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicWanStaticRoute;\nimport com.pulumi.cloudflare.MagicWanStaticRouteArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanStaticRouteScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicWanStaticRoute = new MagicWanStaticRoute(\"exampleMagicWanStaticRoute\", MagicWanStaticRouteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .nexthop(\"203.0.113.1\")\n            .prefix(\"192.0.2.0/24\")\n            .priority(0)\n            .description(\"New route for new prefix 203.0.113.1\")\n            .scope(MagicWanStaticRouteScopeArgs.builder()\n                .coloNames(\"den01\")\n                .coloRegions(\"APAC\")\n                .build())\n            .weight(0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicWanStaticRoute:\n    type: cloudflare:MagicWanStaticRoute\n    name: example_magic_wan_static_route\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      nexthop: 203.0.113.1\n      prefix: 192.0.2.0/24\n      priority: 0\n      description: New route for new prefix 203.0.113.1\n      scope:\n        coloNames:\n          - den01\n        coloRegions:\n          - APAC\n      weight: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/magicWanStaticRoute:MagicWanStaticRoute example '\u003caccount_id\u003e/\u003croute_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the route was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional human provided description of the static route.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the route was last modified.\n"
                },
                "nexthop": {
                    "type": "string",
                    "description": "The next-hop IP Address for the static route.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority of the static route.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/MagicWanStaticRouteScope:MagicWanStaticRouteScope",
                    "description": "Used only for ECMP routes.\n"
                },
                "weight": {
                    "type": "integer",
                    "description": "Optional weight of the ECMP scope - if provided.\n"
                }
            },
            "required": [
                "accountId",
                "createdOn",
                "description",
                "modifiedOn",
                "nexthop",
                "prefix",
                "priority"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional human provided description of the static route.\n"
                },
                "nexthop": {
                    "type": "string",
                    "description": "The next-hop IP Address for the static route.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority of the static route.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/MagicWanStaticRouteScope:MagicWanStaticRouteScope",
                    "description": "Used only for ECMP routes.\n"
                },
                "weight": {
                    "type": "integer",
                    "description": "Optional weight of the ECMP scope - if provided.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "nexthop",
                "prefix",
                "priority"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MagicWanStaticRoute resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the route was created.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An optional human provided description of the static route.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the route was last modified.\n"
                    },
                    "nexthop": {
                        "type": "string",
                        "description": "The next-hop IP Address for the static route.\n"
                    },
                    "prefix": {
                        "type": "string",
                        "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                    },
                    "priority": {
                        "type": "integer",
                        "description": "Priority of the static route.\n"
                    },
                    "scope": {
                        "$ref": "#/types/cloudflare:index/MagicWanStaticRouteScope:MagicWanStaticRouteScope",
                        "description": "Used only for ECMP routes.\n"
                    },
                    "weight": {
                        "type": "integer",
                        "description": "Optional weight of the ECMP scope - if provided.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/staticRoute:StaticRoute"
                }
            ]
        },
        "cloudflare:index/managedHeaders:ManagedHeaders": {
            "description": "Accepted Permissions\n\n- `Account Rulesets Read`\n- `Account Rulesets Write`\n- `Account WAF Read`\n- `Account WAF Write`\n- `Bot Management Read`\n- `Bot Management Write`\n- `Cache Settings Read`\n- `Cache Settings Write`\n- `Config Settings Read`\n- `Config Settings Write`\n- `Custom Errors Read`\n- `Custom Errors Write`\n- `Dynamic URL Redirects Read`\n- `Dynamic URL Redirects Write`\n- `HTTP DDoS Managed Ruleset Read`\n- `HTTP DDoS Managed Ruleset Write`\n- `L4 DDoS Managed Ruleset Read`\n- `L4 DDoS Managed Ruleset Write`\n- `Logs Read`\n- `Logs Write`\n- `Magic Firewall Read`\n- `Magic Firewall Write`\n- `Managed headers Read`\n- `Managed headers Write`\n- `Mass URL Redirects Read`\n- `Mass URL Redirects Write`\n- `Origin Read`\n- `Origin Write`\n- `Response Compression Read`\n- `Response Compression Write`\n- `Sanitize Read`\n- `Sanitize Write`\n- `Select Configuration Read`\n- `Select Configuration Write`\n- `Transform Rules Read`\n- `Transform Rules Write`\n- `Zone Transform Rules Read`\n- `Zone Transform Rules Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleManagedTransforms = new cloudflare.ManagedTransforms(\"example_managed_transforms\", {\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    managedRequestHeaders: [{\n        id: \"add_bot_protection_headers\",\n        enabled: true,\n    }],\n    managedResponseHeaders: [{\n        id: \"add_security_headers\",\n        enabled: true,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_managed_transforms = cloudflare.ManagedTransforms(\"example_managed_transforms\",\n    zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    managed_request_headers=[{\n        \"id\": \"add_bot_protection_headers\",\n        \"enabled\": True,\n    }],\n    managed_response_headers=[{\n        \"id\": \"add_security_headers\",\n        \"enabled\": True,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleManagedTransforms = new Cloudflare.Index.ManagedTransforms(\"example_managed_transforms\", new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        ManagedRequestHeaders = new[]\n        {\n            new Cloudflare.Inputs.ManagedTransformsManagedRequestHeaderArgs\n            {\n                Id = \"add_bot_protection_headers\",\n                Enabled = true,\n            },\n        },\n        ManagedResponseHeaders = new[]\n        {\n            new Cloudflare.Inputs.ManagedTransformsManagedResponseHeaderArgs\n            {\n                Id = \"add_security_headers\",\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewManagedTransforms(ctx, \"example_managed_transforms\", \u0026cloudflare.ManagedTransformsArgs{\n\t\t\tZoneId: pulumi.String(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tManagedRequestHeaders: cloudflare.ManagedTransformsManagedRequestHeaderArray{\n\t\t\t\t\u0026cloudflare.ManagedTransformsManagedRequestHeaderArgs{\n\t\t\t\t\tId:      pulumi.String(\"add_bot_protection_headers\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tManagedResponseHeaders: cloudflare.ManagedTransformsManagedResponseHeaderArray{\n\t\t\t\t\u0026cloudflare.ManagedTransformsManagedResponseHeaderArgs{\n\t\t\t\t\tId:      pulumi.String(\"add_security_headers\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ManagedTransforms;\nimport com.pulumi.cloudflare.ManagedTransformsArgs;\nimport com.pulumi.cloudflare.inputs.ManagedTransformsManagedRequestHeaderArgs;\nimport com.pulumi.cloudflare.inputs.ManagedTransformsManagedResponseHeaderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleManagedTransforms = new ManagedTransforms(\"exampleManagedTransforms\", ManagedTransformsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .managedRequestHeaders(ManagedTransformsManagedRequestHeaderArgs.builder()\n                .id(\"add_bot_protection_headers\")\n                .enabled(true)\n                .build())\n            .managedResponseHeaders(ManagedTransformsManagedResponseHeaderArgs.builder()\n                .id(\"add_security_headers\")\n                .enabled(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleManagedTransforms:\n    type: cloudflare:ManagedTransforms\n    name: example_managed_transforms\n    properties:\n      zoneId: 9f1839b6152d298aca64c4e906b6d074\n      managedRequestHeaders:\n        - id: add_bot_protection_headers\n          enabled: true\n      managedResponseHeaders:\n        - id: add_security_headers\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/managedHeaders:ManagedHeaders example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "managedRequestHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedHeadersManagedRequestHeader:ManagedHeadersManagedRequestHeader"
                    },
                    "description": "The list of Managed Request Transforms.\n"
                },
                "managedResponseHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedHeadersManagedResponseHeader:ManagedHeadersManagedResponseHeader"
                    },
                    "description": "The list of Managed Response Transforms.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "required": [
                "managedRequestHeaders",
                "managedResponseHeaders",
                "zoneId"
            ],
            "inputProperties": {
                "managedRequestHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedHeadersManagedRequestHeader:ManagedHeadersManagedRequestHeader"
                    },
                    "description": "The list of Managed Request Transforms.\n"
                },
                "managedResponseHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedHeadersManagedResponseHeader:ManagedHeadersManagedResponseHeader"
                    },
                    "description": "The list of Managed Response Transforms.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "managedRequestHeaders",
                "managedResponseHeaders",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ManagedHeaders resources.\n",
                "properties": {
                    "managedRequestHeaders": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ManagedHeadersManagedRequestHeader:ManagedHeadersManagedRequestHeader"
                        },
                        "description": "The list of Managed Request Transforms.\n"
                    },
                    "managedResponseHeaders": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ManagedHeadersManagedResponseHeader:ManagedHeadersManagedResponseHeader"
                        },
                        "description": "The list of Managed Response Transforms.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/managedHeaders:ManagedHeaders"
                }
            ],
            "deprecationMessage": "cloudflare.index/managedheaders.ManagedHeaders has been deprecated in favor of cloudflare.index/managedtransforms.ManagedTransforms"
        },
        "cloudflare:index/managedTransforms:ManagedTransforms": {
            "description": "Accepted Permissions\n\n- `Account Rulesets Read`\n- `Account Rulesets Write`\n- `Account WAF Read`\n- `Account WAF Write`\n- `Bot Management Read`\n- `Bot Management Write`\n- `Cache Settings Read`\n- `Cache Settings Write`\n- `Config Settings Read`\n- `Config Settings Write`\n- `Custom Errors Read`\n- `Custom Errors Write`\n- `Dynamic URL Redirects Read`\n- `Dynamic URL Redirects Write`\n- `HTTP DDoS Managed Ruleset Read`\n- `HTTP DDoS Managed Ruleset Write`\n- `L4 DDoS Managed Ruleset Read`\n- `L4 DDoS Managed Ruleset Write`\n- `Logs Read`\n- `Logs Write`\n- `Magic Firewall Read`\n- `Magic Firewall Write`\n- `Managed headers Read`\n- `Managed headers Write`\n- `Mass URL Redirects Read`\n- `Mass URL Redirects Write`\n- `Origin Read`\n- `Origin Write`\n- `Response Compression Read`\n- `Response Compression Write`\n- `Sanitize Read`\n- `Sanitize Write`\n- `Select Configuration Read`\n- `Select Configuration Write`\n- `Transform Rules Read`\n- `Transform Rules Write`\n- `Zone Transform Rules Read`\n- `Zone Transform Rules Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleManagedTransforms = new cloudflare.ManagedTransforms(\"example_managed_transforms\", {\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    managedRequestHeaders: [{\n        id: \"add_bot_protection_headers\",\n        enabled: true,\n    }],\n    managedResponseHeaders: [{\n        id: \"add_security_headers\",\n        enabled: true,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_managed_transforms = cloudflare.ManagedTransforms(\"example_managed_transforms\",\n    zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    managed_request_headers=[{\n        \"id\": \"add_bot_protection_headers\",\n        \"enabled\": True,\n    }],\n    managed_response_headers=[{\n        \"id\": \"add_security_headers\",\n        \"enabled\": True,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleManagedTransforms = new Cloudflare.Index.ManagedTransforms(\"example_managed_transforms\", new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        ManagedRequestHeaders = new[]\n        {\n            new Cloudflare.Inputs.ManagedTransformsManagedRequestHeaderArgs\n            {\n                Id = \"add_bot_protection_headers\",\n                Enabled = true,\n            },\n        },\n        ManagedResponseHeaders = new[]\n        {\n            new Cloudflare.Inputs.ManagedTransformsManagedResponseHeaderArgs\n            {\n                Id = \"add_security_headers\",\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewManagedTransforms(ctx, \"example_managed_transforms\", \u0026cloudflare.ManagedTransformsArgs{\n\t\t\tZoneId: pulumi.String(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tManagedRequestHeaders: cloudflare.ManagedTransformsManagedRequestHeaderArray{\n\t\t\t\t\u0026cloudflare.ManagedTransformsManagedRequestHeaderArgs{\n\t\t\t\t\tId:      pulumi.String(\"add_bot_protection_headers\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tManagedResponseHeaders: cloudflare.ManagedTransformsManagedResponseHeaderArray{\n\t\t\t\t\u0026cloudflare.ManagedTransformsManagedResponseHeaderArgs{\n\t\t\t\t\tId:      pulumi.String(\"add_security_headers\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ManagedTransforms;\nimport com.pulumi.cloudflare.ManagedTransformsArgs;\nimport com.pulumi.cloudflare.inputs.ManagedTransformsManagedRequestHeaderArgs;\nimport com.pulumi.cloudflare.inputs.ManagedTransformsManagedResponseHeaderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleManagedTransforms = new ManagedTransforms(\"exampleManagedTransforms\", ManagedTransformsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .managedRequestHeaders(ManagedTransformsManagedRequestHeaderArgs.builder()\n                .id(\"add_bot_protection_headers\")\n                .enabled(true)\n                .build())\n            .managedResponseHeaders(ManagedTransformsManagedResponseHeaderArgs.builder()\n                .id(\"add_security_headers\")\n                .enabled(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleManagedTransforms:\n    type: cloudflare:ManagedTransforms\n    name: example_managed_transforms\n    properties:\n      zoneId: 9f1839b6152d298aca64c4e906b6d074\n      managedRequestHeaders:\n        - id: add_bot_protection_headers\n          enabled: true\n      managedResponseHeaders:\n        - id: add_security_headers\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/managedTransforms:ManagedTransforms example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "managedRequestHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedTransformsManagedRequestHeader:ManagedTransformsManagedRequestHeader"
                    },
                    "description": "The list of Managed Request Transforms.\n"
                },
                "managedResponseHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedTransformsManagedResponseHeader:ManagedTransformsManagedResponseHeader"
                    },
                    "description": "The list of Managed Response Transforms.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "required": [
                "managedRequestHeaders",
                "managedResponseHeaders",
                "zoneId"
            ],
            "inputProperties": {
                "managedRequestHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedTransformsManagedRequestHeader:ManagedTransformsManagedRequestHeader"
                    },
                    "description": "The list of Managed Request Transforms.\n"
                },
                "managedResponseHeaders": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ManagedTransformsManagedResponseHeader:ManagedTransformsManagedResponseHeader"
                    },
                    "description": "The list of Managed Response Transforms.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "managedRequestHeaders",
                "managedResponseHeaders",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ManagedTransforms resources.\n",
                "properties": {
                    "managedRequestHeaders": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ManagedTransformsManagedRequestHeader:ManagedTransformsManagedRequestHeader"
                        },
                        "description": "The list of Managed Request Transforms.\n"
                    },
                    "managedResponseHeaders": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ManagedTransformsManagedResponseHeader:ManagedTransformsManagedResponseHeader"
                        },
                        "description": "The list of Managed Response Transforms.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/managedHeaders:ManagedHeaders"
                }
            ]
        },
        "cloudflare:index/mtlsCertificate:MtlsCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMtlsCertificate = new cloudflare.MtlsCertificate(\"example_mtls_certificate\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    ca: true,\n    certificates: `  -----BEGIN CERTIFICATE-----\n  MIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\n  -----END CERTIFICATE-----\n`,\n    name: \"example_ca_cert\",\n    privateKey: `  -----BEGIN PRIVATE KEY-----\n  MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKRx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKqB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7hMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGWqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+w46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnaihCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDTidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LDfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0d7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+FXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwDHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lqibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9lhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAsJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrLXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlxzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VNV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62xXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/vvfp9DWo1IS3EnQRrz6WMYA=\n  -----END PRIVATE KEY-----\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_mtls_certificate = cloudflare.MtlsCertificate(\"example_mtls_certificate\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    ca=True,\n    certificates=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\n  -----END CERTIFICATE-----\n\"\"\",\n    name=\"example_ca_cert\",\n    private_key=\"\"\"  -----BEGIN PRIVATE KEY-----\n  MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKRx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKqB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7hMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGWqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+w46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnaihCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDTidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LDfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0d7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+FXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwDHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lqibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9lhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAsJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrLXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlxzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VNV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62xXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/vvfp9DWo1IS3EnQRrz6WMYA=\n  -----END PRIVATE KEY-----\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMtlsCertificate = new Cloudflare.Index.MtlsCertificate(\"example_mtls_certificate\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Ca = true,\n        Certificates = @\"  -----BEGIN CERTIFICATE-----\n  MIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\n  -----END CERTIFICATE-----\n\",\n        Name = \"example_ca_cert\",\n        PrivateKey = @\"  -----BEGIN PRIVATE KEY-----\n  MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKRx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKqB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7hMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGWqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+w46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnaihCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDTidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LDfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0d7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+FXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwDHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lqibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9lhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAsJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrLXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlxzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VNV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62xXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/vvfp9DWo1IS3EnQRrz6WMYA=\n  -----END PRIVATE KEY-----\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMtlsCertificate(ctx, \"example_mtls_certificate\", \u0026cloudflare.MtlsCertificateArgs{\n\t\t\tAccountId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCa:           pulumi.Bool(true),\n\t\t\tCertificates: pulumi.String(\"  -----BEGIN CERTIFICATE-----\\n  MIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\\n  -----END CERTIFICATE-----\\n\"),\n\t\t\tName:         pulumi.String(\"example_ca_cert\"),\n\t\t\tPrivateKey:   pulumi.String(\"  -----BEGIN PRIVATE KEY-----\\n  MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKRx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKqB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7hMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGWqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+w46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnaihCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDTidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LDfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0d7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+FXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwDHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lqibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9lhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAsJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrLXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlxzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VNV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62xXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/vvfp9DWo1IS3EnQRrz6WMYA=\\n  -----END PRIVATE KEY-----\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MtlsCertificate;\nimport com.pulumi.cloudflare.MtlsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMtlsCertificate = new MtlsCertificate(\"exampleMtlsCertificate\", MtlsCertificateArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .ca(true)\n            .certificates(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\n  -----END CERTIFICATE-----\n            \"\"\")\n            .name(\"example_ca_cert\")\n            .privateKey(\"\"\"\n  -----BEGIN PRIVATE KEY-----\n  MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKRx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKqB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7hMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGWqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+w46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnaihCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDTidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LDfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0d7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+FXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwDHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lqibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9lhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAsJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrLXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlxzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VNV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62xXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/vvfp9DWo1IS3EnQRrz6WMYA=\n  -----END PRIVATE KEY-----\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMtlsCertificate:\n    type: cloudflare:MtlsCertificate\n    name: example_mtls_certificate\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      ca: true\n      certificates: |2\n          -----BEGIN CERTIFICATE-----\n          MIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\n          -----END CERTIFICATE-----\n      name: example_ca_cert\n      privateKey: |2\n          -----BEGIN PRIVATE KEY-----\n          MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKRx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKqB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7hMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGWqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+w46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnaihCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDTidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LDfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0d7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+FXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwDHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lqibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9lhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAsJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrLXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlxzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VNV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62xXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/vvfp9DWo1IS3EnQRrz6WMYA=\n          -----END PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/mtlsCertificate:MtlsCertificate example '\u003caccount_id\u003e/\u003cmtls_certificate_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "ca": {
                    "type": "boolean",
                    "description": "Indicates whether the certificate is a CA or leaf certificate.\n"
                },
                "certificates": {
                    "type": "string",
                    "description": "The uploaded root CA certificate or certificate chain. Certificates must be provided in PEM format with the certificate matching the\u003cspan pulumi-lang-nodejs=\" privateKey \" pulumi-lang-dotnet=\" PrivateKey \" pulumi-lang-go=\" privateKey \" pulumi-lang-python=\" private_key \" pulumi-lang-yaml=\" privateKey \" pulumi-lang-java=\" privateKey \"\u003e privateKey \u003c/span\u003efirst in the chain.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate expires.\n"
                },
                "issuer": {
                    "type": "string",
                    "description": "The certificate authority that issued the certificate.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Optional unique name for the certificate. Only used for human readability.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The private key for the certificate. This field is only needed for specific use cases such as using a custom certificate with Zero Trust's block page.\n",
                    "secret": true
                },
                "serialNumber": {
                    "type": "string",
                    "description": "The certificate serial number.\n"
                },
                "signature": {
                    "type": "string",
                    "description": "The type of hash used for the certificate.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "This is the time the certificate was updated.\n"
                },
                "uploadedOn": {
                    "type": "string",
                    "description": "This is the time the certificate was uploaded.\n"
                }
            },
            "required": [
                "accountId",
                "ca",
                "certificates",
                "expiresOn",
                "issuer",
                "serialNumber",
                "signature",
                "updatedAt",
                "uploadedOn"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "ca": {
                    "type": "boolean",
                    "description": "Indicates whether the certificate is a CA or leaf certificate.\n"
                },
                "certificates": {
                    "type": "string",
                    "description": "The uploaded root CA certificate or certificate chain. Certificates must be provided in PEM format with the certificate matching the\u003cspan pulumi-lang-nodejs=\" privateKey \" pulumi-lang-dotnet=\" PrivateKey \" pulumi-lang-go=\" privateKey \" pulumi-lang-python=\" private_key \" pulumi-lang-yaml=\" privateKey \" pulumi-lang-java=\" privateKey \"\u003e privateKey \u003c/span\u003efirst in the chain.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Optional unique name for the certificate. Only used for human readability.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "The private key for the certificate. This field is only needed for specific use cases such as using a custom certificate with Zero Trust's block page.\n",
                    "secret": true
                }
            },
            "requiredInputs": [
                "accountId",
                "ca",
                "certificates"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MtlsCertificate resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "ca": {
                        "type": "boolean",
                        "description": "Indicates whether the certificate is a CA or leaf certificate.\n"
                    },
                    "certificates": {
                        "type": "string",
                        "description": "The uploaded root CA certificate or certificate chain. Certificates must be provided in PEM format with the certificate matching the\u003cspan pulumi-lang-nodejs=\" privateKey \" pulumi-lang-dotnet=\" PrivateKey \" pulumi-lang-go=\" privateKey \" pulumi-lang-python=\" private_key \" pulumi-lang-yaml=\" privateKey \" pulumi-lang-java=\" privateKey \"\u003e privateKey \u003c/span\u003efirst in the chain.\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "When the certificate expires.\n"
                    },
                    "issuer": {
                        "type": "string",
                        "description": "The certificate authority that issued the certificate.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Optional unique name for the certificate. Only used for human readability.\n"
                    },
                    "privateKey": {
                        "type": "string",
                        "description": "The private key for the certificate. This field is only needed for specific use cases such as using a custom certificate with Zero Trust's block page.\n",
                        "secret": true
                    },
                    "serialNumber": {
                        "type": "string",
                        "description": "The certificate serial number.\n"
                    },
                    "signature": {
                        "type": "string",
                        "description": "The type of hash used for the certificate.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "This is the time the certificate was updated.\n"
                    },
                    "uploadedOn": {
                        "type": "string",
                        "description": "This is the time the certificate was uploaded.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/notificationPolicy:NotificationPolicy": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Notifications Read`\n- `Notifications Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleNotificationPolicy = new cloudflare.NotificationPolicy(\"example_notification_policy\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    alertType: \"universal_ssl_event_type\",\n    enabled: true,\n    mechanisms: {\n        emails: [{\n            id: \"id\",\n        }],\n        pagerduties: [{\n            id: \"f174e90afafe4643bbbc4a0ed4fc8415\",\n        }],\n        webhooks: [{\n            id: \"f174e90afafe4643bbbc4a0ed4fc8415\",\n        }],\n    },\n    name: \"SSL Notification Event Policy\",\n    alertInterval: \"30m\",\n    description: \"Something describing the policy.\",\n    filters: {\n        actions: [\"string\"],\n        affectedAsns: [\"string\"],\n        affectedComponents: [\"string\"],\n        affectedLocations: [\"string\"],\n        airportCodes: [\"string\"],\n        alertTriggerPreferences: [\"string\"],\n        alertTriggerPreferencesValues: [\"string\"],\n        enableds: [\"string\"],\n        environments: [\"string\"],\n        events: [\"string\"],\n        eventSources: [\"string\"],\n        eventTypes: [\"string\"],\n        groupBies: [\"string\"],\n        healthCheckIds: [\"string\"],\n        incidentImpacts: [\"INCIDENT_IMPACT_NONE\"],\n        inputIds: [\"string\"],\n        insightClasses: [\"string\"],\n        limits: [\"string\"],\n        logoTags: [\"string\"],\n        megabitsPerSeconds: [\"string\"],\n        newHealths: [\"string\"],\n        newStatuses: [\"string\"],\n        packetsPerSeconds: [\"string\"],\n        poolIds: [\"string\"],\n        popNames: [\"string\"],\n        products: [\"string\"],\n        projectIds: [\"string\"],\n        protocols: [\"string\"],\n        queryTags: [\"string\"],\n        requestsPerSeconds: [\"string\"],\n        selectors: [\"string\"],\n        services: [\"string\"],\n        slos: [\"99.9\"],\n        statuses: [\"string\"],\n        targetHostnames: [\"string\"],\n        targetIps: [\"string\"],\n        targetZoneNames: [\"string\"],\n        trafficExclusions: [\"security_events\"],\n        tunnelIds: [\"string\"],\n        tunnelNames: [\"string\"],\n        types: [\"string\"],\n        wheres: [\"string\"],\n        zones: [\"string\"],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_notification_policy = cloudflare.NotificationPolicy(\"example_notification_policy\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    alert_type=\"universal_ssl_event_type\",\n    enabled=True,\n    mechanisms={\n        \"emails\": [{\n            \"id\": \"id\",\n        }],\n        \"pagerduties\": [{\n            \"id\": \"f174e90afafe4643bbbc4a0ed4fc8415\",\n        }],\n        \"webhooks\": [{\n            \"id\": \"f174e90afafe4643bbbc4a0ed4fc8415\",\n        }],\n    },\n    name=\"SSL Notification Event Policy\",\n    alert_interval=\"30m\",\n    description=\"Something describing the policy.\",\n    filters={\n        \"actions\": [\"string\"],\n        \"affected_asns\": [\"string\"],\n        \"affected_components\": [\"string\"],\n        \"affected_locations\": [\"string\"],\n        \"airport_codes\": [\"string\"],\n        \"alert_trigger_preferences\": [\"string\"],\n        \"alert_trigger_preferences_values\": [\"string\"],\n        \"enableds\": [\"string\"],\n        \"environments\": [\"string\"],\n        \"events\": [\"string\"],\n        \"event_sources\": [\"string\"],\n        \"event_types\": [\"string\"],\n        \"group_bies\": [\"string\"],\n        \"health_check_ids\": [\"string\"],\n        \"incident_impacts\": [\"INCIDENT_IMPACT_NONE\"],\n        \"input_ids\": [\"string\"],\n        \"insight_classes\": [\"string\"],\n        \"limits\": [\"string\"],\n        \"logo_tags\": [\"string\"],\n        \"megabits_per_seconds\": [\"string\"],\n        \"new_healths\": [\"string\"],\n        \"new_statuses\": [\"string\"],\n        \"packets_per_seconds\": [\"string\"],\n        \"pool_ids\": [\"string\"],\n        \"pop_names\": [\"string\"],\n        \"products\": [\"string\"],\n        \"project_ids\": [\"string\"],\n        \"protocols\": [\"string\"],\n        \"query_tags\": [\"string\"],\n        \"requests_per_seconds\": [\"string\"],\n        \"selectors\": [\"string\"],\n        \"services\": [\"string\"],\n        \"slos\": [\"99.9\"],\n        \"statuses\": [\"string\"],\n        \"target_hostnames\": [\"string\"],\n        \"target_ips\": [\"string\"],\n        \"target_zone_names\": [\"string\"],\n        \"traffic_exclusions\": [\"security_events\"],\n        \"tunnel_ids\": [\"string\"],\n        \"tunnel_names\": [\"string\"],\n        \"types\": [\"string\"],\n        \"wheres\": [\"string\"],\n        \"zones\": [\"string\"],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleNotificationPolicy = new Cloudflare.Index.NotificationPolicy(\"example_notification_policy\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AlertType = \"universal_ssl_event_type\",\n        Enabled = true,\n        Mechanisms = new Cloudflare.Inputs.NotificationPolicyMechanismsArgs\n        {\n            Emails = new[]\n            {\n                new Cloudflare.Inputs.NotificationPolicyMechanismsEmailArgs\n                {\n                    Id = \"id\",\n                },\n            },\n            Pagerduties = new[]\n            {\n                new Cloudflare.Inputs.NotificationPolicyMechanismsPagerdutyArgs\n                {\n                    Id = \"f174e90afafe4643bbbc4a0ed4fc8415\",\n                },\n            },\n            Webhooks = new[]\n            {\n                new Cloudflare.Inputs.NotificationPolicyMechanismsWebhookArgs\n                {\n                    Id = \"f174e90afafe4643bbbc4a0ed4fc8415\",\n                },\n            },\n        },\n        Name = \"SSL Notification Event Policy\",\n        AlertInterval = \"30m\",\n        Description = \"Something describing the policy.\",\n        Filters = new Cloudflare.Inputs.NotificationPolicyFiltersArgs\n        {\n            Actions = new[]\n            {\n                \"string\",\n            },\n            AffectedAsns = new[]\n            {\n                \"string\",\n            },\n            AffectedComponents = new[]\n            {\n                \"string\",\n            },\n            AffectedLocations = new[]\n            {\n                \"string\",\n            },\n            AirportCodes = new[]\n            {\n                \"string\",\n            },\n            AlertTriggerPreferences = new[]\n            {\n                \"string\",\n            },\n            AlertTriggerPreferencesValues = new[]\n            {\n                \"string\",\n            },\n            Enableds = new[]\n            {\n                \"string\",\n            },\n            Environments = new[]\n            {\n                \"string\",\n            },\n            Events = new[]\n            {\n                \"string\",\n            },\n            EventSources = new[]\n            {\n                \"string\",\n            },\n            EventTypes = new[]\n            {\n                \"string\",\n            },\n            GroupBies = new[]\n            {\n                \"string\",\n            },\n            HealthCheckIds = new[]\n            {\n                \"string\",\n            },\n            IncidentImpacts = new[]\n            {\n                \"INCIDENT_IMPACT_NONE\",\n            },\n            InputIds = new[]\n            {\n                \"string\",\n            },\n            InsightClasses = new[]\n            {\n                \"string\",\n            },\n            Limits = new[]\n            {\n                \"string\",\n            },\n            LogoTags = new[]\n            {\n                \"string\",\n            },\n            MegabitsPerSeconds = new[]\n            {\n                \"string\",\n            },\n            NewHealths = new[]\n            {\n                \"string\",\n            },\n            NewStatuses = new[]\n            {\n                \"string\",\n            },\n            PacketsPerSeconds = new[]\n            {\n                \"string\",\n            },\n            PoolIds = new[]\n            {\n                \"string\",\n            },\n            PopNames = new[]\n            {\n                \"string\",\n            },\n            Products = new[]\n            {\n                \"string\",\n            },\n            ProjectIds = new[]\n            {\n                \"string\",\n            },\n            Protocols = new[]\n            {\n                \"string\",\n            },\n            QueryTags = new[]\n            {\n                \"string\",\n            },\n            RequestsPerSeconds = new[]\n            {\n                \"string\",\n            },\n            Selectors = new[]\n            {\n                \"string\",\n            },\n            Services = new[]\n            {\n                \"string\",\n            },\n            Slos = new[]\n            {\n                \"99.9\",\n            },\n            Statuses = new[]\n            {\n                \"string\",\n            },\n            TargetHostnames = new[]\n            {\n                \"string\",\n            },\n            TargetIps = new[]\n            {\n                \"string\",\n            },\n            TargetZoneNames = new[]\n            {\n                \"string\",\n            },\n            TrafficExclusions = new[]\n            {\n                \"security_events\",\n            },\n            TunnelIds = new[]\n            {\n                \"string\",\n            },\n            TunnelNames = new[]\n            {\n                \"string\",\n            },\n            Types = new[]\n            {\n                \"string\",\n            },\n            Wheres = new[]\n            {\n                \"string\",\n            },\n            Zones = new[]\n            {\n                \"string\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewNotificationPolicy(ctx, \"example_notification_policy\", \u0026cloudflare.NotificationPolicyArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAlertType: pulumi.String(\"universal_ssl_event_type\"),\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tMechanisms: \u0026cloudflare.NotificationPolicyMechanismsArgs{\n\t\t\t\tEmails: cloudflare.NotificationPolicyMechanismsEmailArray{\n\t\t\t\t\t\u0026cloudflare.NotificationPolicyMechanismsEmailArgs{\n\t\t\t\t\t\tId: pulumi.String(\"id\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPagerduties: cloudflare.NotificationPolicyMechanismsPagerdutyArray{\n\t\t\t\t\t\u0026cloudflare.NotificationPolicyMechanismsPagerdutyArgs{\n\t\t\t\t\t\tId: pulumi.String(\"f174e90afafe4643bbbc4a0ed4fc8415\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tWebhooks: cloudflare.NotificationPolicyMechanismsWebhookArray{\n\t\t\t\t\t\u0026cloudflare.NotificationPolicyMechanismsWebhookArgs{\n\t\t\t\t\t\tId: pulumi.String(\"f174e90afafe4643bbbc4a0ed4fc8415\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:          pulumi.String(\"SSL Notification Event Policy\"),\n\t\t\tAlertInterval: pulumi.String(\"30m\"),\n\t\t\tDescription:   pulumi.String(\"Something describing the policy.\"),\n\t\t\tFilters: \u0026cloudflare.NotificationPolicyFiltersArgs{\n\t\t\t\tActions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tAffectedAsns: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tAffectedComponents: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tAffectedLocations: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tAirportCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tAlertTriggerPreferences: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tAlertTriggerPreferencesValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tEnableds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tEnvironments: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tEvents: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tEventSources: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tEventTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tGroupBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tHealthCheckIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tIncidentImpacts: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"INCIDENT_IMPACT_NONE\"),\n\t\t\t\t},\n\t\t\t\tInputIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tInsightClasses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tLimits: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tLogoTags: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tMegabitsPerSeconds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tNewHealths: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tNewStatuses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tPacketsPerSeconds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tPoolIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tPopNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tProducts: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tProjectIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tQueryTags: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tRequestsPerSeconds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tSelectors: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tServices: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tSlos: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"99.9\"),\n\t\t\t\t},\n\t\t\t\tStatuses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tTargetHostnames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tTargetIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tTargetZoneNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tTrafficExclusions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"security_events\"),\n\t\t\t\t},\n\t\t\t\tTunnelIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tTunnelNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tWheres: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tZones: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.NotificationPolicy;\nimport com.pulumi.cloudflare.NotificationPolicyArgs;\nimport com.pulumi.cloudflare.inputs.NotificationPolicyMechanismsArgs;\nimport com.pulumi.cloudflare.inputs.NotificationPolicyFiltersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleNotificationPolicy = new NotificationPolicy(\"exampleNotificationPolicy\", NotificationPolicyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .alertType(\"universal_ssl_event_type\")\n            .enabled(true)\n            .mechanisms(NotificationPolicyMechanismsArgs.builder()\n                .emails(NotificationPolicyMechanismsEmailArgs.builder()\n                    .id(\"id\")\n                    .build())\n                .pagerduties(NotificationPolicyMechanismsPagerdutyArgs.builder()\n                    .id(\"f174e90afafe4643bbbc4a0ed4fc8415\")\n                    .build())\n                .webhooks(NotificationPolicyMechanismsWebhookArgs.builder()\n                    .id(\"f174e90afafe4643bbbc4a0ed4fc8415\")\n                    .build())\n                .build())\n            .name(\"SSL Notification Event Policy\")\n            .alertInterval(\"30m\")\n            .description(\"Something describing the policy.\")\n            .filters(NotificationPolicyFiltersArgs.builder()\n                .actions(\"string\")\n                .affectedAsns(\"string\")\n                .affectedComponents(\"string\")\n                .affectedLocations(\"string\")\n                .airportCodes(\"string\")\n                .alertTriggerPreferences(\"string\")\n                .alertTriggerPreferencesValues(\"string\")\n                .enableds(\"string\")\n                .environments(\"string\")\n                .events(\"string\")\n                .eventSources(\"string\")\n                .eventTypes(\"string\")\n                .groupBies(\"string\")\n                .healthCheckIds(\"string\")\n                .incidentImpacts(\"INCIDENT_IMPACT_NONE\")\n                .inputIds(\"string\")\n                .insightClasses(\"string\")\n                .limits(\"string\")\n                .logoTags(\"string\")\n                .megabitsPerSeconds(\"string\")\n                .newHealths(\"string\")\n                .newStatuses(\"string\")\n                .packetsPerSeconds(\"string\")\n                .poolIds(\"string\")\n                .popNames(\"string\")\n                .products(\"string\")\n                .projectIds(\"string\")\n                .protocols(\"string\")\n                .queryTags(\"string\")\n                .requestsPerSeconds(\"string\")\n                .selectors(\"string\")\n                .services(\"string\")\n                .slos(\"99.9\")\n                .statuses(\"string\")\n                .targetHostnames(\"string\")\n                .targetIps(\"string\")\n                .targetZoneNames(\"string\")\n                .trafficExclusions(\"security_events\")\n                .tunnelIds(\"string\")\n                .tunnelNames(\"string\")\n                .types(\"string\")\n                .wheres(\"string\")\n                .zones(\"string\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleNotificationPolicy:\n    type: cloudflare:NotificationPolicy\n    name: example_notification_policy\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      alertType: universal_ssl_event_type\n      enabled: true\n      mechanisms:\n        emails:\n          - id: id\n        pagerduties:\n          - id: f174e90afafe4643bbbc4a0ed4fc8415\n        webhooks:\n          - id: f174e90afafe4643bbbc4a0ed4fc8415\n      name: SSL Notification Event Policy\n      alertInterval: 30m\n      description: Something describing the policy.\n      filters:\n        actions:\n          - string\n        affectedAsns:\n          - string\n        affectedComponents:\n          - string\n        affectedLocations:\n          - string\n        airportCodes:\n          - string\n        alertTriggerPreferences:\n          - string\n        alertTriggerPreferencesValues:\n          - string\n        enableds:\n          - string\n        environments:\n          - string\n        events:\n          - string\n        eventSources:\n          - string\n        eventTypes:\n          - string\n        groupBies:\n          - string\n        healthCheckIds:\n          - string\n        incidentImpacts:\n          - INCIDENT_IMPACT_NONE\n        inputIds:\n          - string\n        insightClasses:\n          - string\n        limits:\n          - string\n        logoTags:\n          - string\n        megabitsPerSeconds:\n          - string\n        newHealths:\n          - string\n        newStatuses:\n          - string\n        packetsPerSeconds:\n          - string\n        poolIds:\n          - string\n        popNames:\n          - string\n        products:\n          - string\n        projectIds:\n          - string\n        protocols:\n          - string\n        queryTags:\n          - string\n        requestsPerSeconds:\n          - string\n        selectors:\n          - string\n        services:\n          - string\n        slos:\n          - '99.9'\n        statuses:\n          - string\n        targetHostnames:\n          - string\n        targetIps:\n          - string\n        targetZoneNames:\n          - string\n        trafficExclusions:\n          - security_events\n        tunnelIds:\n          - string\n        tunnelNames:\n          - string\n        types:\n          - string\n        wheres:\n          - string\n        zones:\n          - string\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/notificationPolicy:NotificationPolicy example '\u003caccount_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account id\n"
                },
                "alertInterval": {
                    "type": "string",
                    "description": "Optional specification of how often to re-alert from the same incident, not support on all alert types.\n"
                },
                "alertType": {
                    "type": "string",
                    "description": "Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values.\nAvailable values: \"abuse*report*alert\", \"access*custom*certificate*expiration*type\", \"advanced*ddos*attack*l4*alert\", \"advanced*ddos*attack*l7*alert\", \"advanced*http*alert*error\", \"bgp*hijack*notification\", \"billing*usage*alert\", \"block*notification*block*removed\", \"block*notification*new*block\", \"block*notification*review*rejected\", \"bot*traffic*basic*alert\", \"brand*protection*alert\", \"brand*protection*digest\", \"clickhouse*alert*fw*anomaly\", \"clickhouse*alert*fw*ent*anomaly\", \"cloudforce*one*request*notification\", \"cni*maintenance*notification\", \"custom*analytics\", \"custom*bot*detection*alert\", \"custom*ssl*certificate*event*type\", \"dedicated*ssl*certificate*event*type\", \"device*connectivity*anomaly*alert\", \"dos*attack*l4\", \"dos*attack*l7\", \"expiring*service*token*alert\", \"failing*logpush*job*disabled*alert\", \"fbm*auto*advertisement\", \"fbm*dosd*attack\", \"fbm*volumetric*attack\", \"health*check*status*notification\", \"hostname*aop*custom*certificate*expiration*type\", \"http*alert*edge*error\", \"http*alert*origin*error\", \"image*notification\", \"image*resizing*notification\", \"incident*alert\", \"load*balancing*health*alert\", \"load*balancing*pool*enablement*alert\", \"logo*match*alert\", \"magic*tunnel*health*check*event\", \"magic*wan*tunnel*health\", \"maintenance*event*notification\", \"mtls*certificate*store*certificate*expiration*type\", \"pages*event*alert\", \"radar*notification\", \"real*origin*monitoring\", \"scriptmonitor*alert*new*code*change*detections\", \"scriptmonitor*alert*new*hosts\", \"scriptmonitor*alert*new*malicious*hosts\", \"scriptmonitor*alert*new*malicious*scripts\", \"scriptmonitor*alert*new*malicious*url\", \"scriptmonitor*alert*new*max*length*resource*url\", \"scriptmonitor*alert*new*resources\", \"secondary*dns*all*primaries*failing\", \"secondary*dns*primaries*failing\", \"secondary*dns*warning\", \"secondary*dns*zone*successfully*updated\", \"secondary*dns*zone*validation*warning\", \"security*insights*alert\", \"sentinel*alert\", \"stream*live*notifications\", \"synthetic*test*latency*alert\", \"synthetic*test*low*availability*alert\", \"traffic*anomalies*alert\", \"tunnel*health*event\", \"tunnel*update*event\", \"universal*ssl*event*type\", \"web*analytics*metrics*update\", \"zone*aop*custom*certificate*expiration*type\".\n"
                },
                "created": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Optional description for the Notification policy.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Notification policy is enabled.\n"
                },
                "filters": {
                    "$ref": "#/types/cloudflare:index/NotificationPolicyFilters:NotificationPolicyFilters",
                    "description": "Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details.\n"
                },
                "mechanisms": {
                    "$ref": "#/types/cloudflare:index/NotificationPolicyMechanisms:NotificationPolicyMechanisms",
                    "description": "List of IDs that will be used when dispatching a notification. IDs for email type will be the email address.\n"
                },
                "modified": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the policy.\n"
                }
            },
            "required": [
                "alertType",
                "created",
                "enabled",
                "mechanisms",
                "modified",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account id\n"
                },
                "alertInterval": {
                    "type": "string",
                    "description": "Optional specification of how often to re-alert from the same incident, not support on all alert types.\n"
                },
                "alertType": {
                    "type": "string",
                    "description": "Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values.\nAvailable values: \"abuse*report*alert\", \"access*custom*certificate*expiration*type\", \"advanced*ddos*attack*l4*alert\", \"advanced*ddos*attack*l7*alert\", \"advanced*http*alert*error\", \"bgp*hijack*notification\", \"billing*usage*alert\", \"block*notification*block*removed\", \"block*notification*new*block\", \"block*notification*review*rejected\", \"bot*traffic*basic*alert\", \"brand*protection*alert\", \"brand*protection*digest\", \"clickhouse*alert*fw*anomaly\", \"clickhouse*alert*fw*ent*anomaly\", \"cloudforce*one*request*notification\", \"cni*maintenance*notification\", \"custom*analytics\", \"custom*bot*detection*alert\", \"custom*ssl*certificate*event*type\", \"dedicated*ssl*certificate*event*type\", \"device*connectivity*anomaly*alert\", \"dos*attack*l4\", \"dos*attack*l7\", \"expiring*service*token*alert\", \"failing*logpush*job*disabled*alert\", \"fbm*auto*advertisement\", \"fbm*dosd*attack\", \"fbm*volumetric*attack\", \"health*check*status*notification\", \"hostname*aop*custom*certificate*expiration*type\", \"http*alert*edge*error\", \"http*alert*origin*error\", \"image*notification\", \"image*resizing*notification\", \"incident*alert\", \"load*balancing*health*alert\", \"load*balancing*pool*enablement*alert\", \"logo*match*alert\", \"magic*tunnel*health*check*event\", \"magic*wan*tunnel*health\", \"maintenance*event*notification\", \"mtls*certificate*store*certificate*expiration*type\", \"pages*event*alert\", \"radar*notification\", \"real*origin*monitoring\", \"scriptmonitor*alert*new*code*change*detections\", \"scriptmonitor*alert*new*hosts\", \"scriptmonitor*alert*new*malicious*hosts\", \"scriptmonitor*alert*new*malicious*scripts\", \"scriptmonitor*alert*new*malicious*url\", \"scriptmonitor*alert*new*max*length*resource*url\", \"scriptmonitor*alert*new*resources\", \"secondary*dns*all*primaries*failing\", \"secondary*dns*primaries*failing\", \"secondary*dns*warning\", \"secondary*dns*zone*successfully*updated\", \"secondary*dns*zone*validation*warning\", \"security*insights*alert\", \"sentinel*alert\", \"stream*live*notifications\", \"synthetic*test*latency*alert\", \"synthetic*test*low*availability*alert\", \"traffic*anomalies*alert\", \"tunnel*health*event\", \"tunnel*update*event\", \"universal*ssl*event*type\", \"web*analytics*metrics*update\", \"zone*aop*custom*certificate*expiration*type\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "Optional description for the Notification policy.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the Notification policy is enabled.\n"
                },
                "filters": {
                    "$ref": "#/types/cloudflare:index/NotificationPolicyFilters:NotificationPolicyFilters",
                    "description": "Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details.\n"
                },
                "mechanisms": {
                    "$ref": "#/types/cloudflare:index/NotificationPolicyMechanisms:NotificationPolicyMechanisms",
                    "description": "List of IDs that will be used when dispatching a notification. IDs for email type will be the email address.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the policy.\n"
                }
            },
            "requiredInputs": [
                "alertType",
                "mechanisms",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering NotificationPolicy resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account id\n"
                    },
                    "alertInterval": {
                        "type": "string",
                        "description": "Optional specification of how often to re-alert from the same incident, not support on all alert types.\n"
                    },
                    "alertType": {
                        "type": "string",
                        "description": "Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values.\nAvailable values: \"abuse*report*alert\", \"access*custom*certificate*expiration*type\", \"advanced*ddos*attack*l4*alert\", \"advanced*ddos*attack*l7*alert\", \"advanced*http*alert*error\", \"bgp*hijack*notification\", \"billing*usage*alert\", \"block*notification*block*removed\", \"block*notification*new*block\", \"block*notification*review*rejected\", \"bot*traffic*basic*alert\", \"brand*protection*alert\", \"brand*protection*digest\", \"clickhouse*alert*fw*anomaly\", \"clickhouse*alert*fw*ent*anomaly\", \"cloudforce*one*request*notification\", \"cni*maintenance*notification\", \"custom*analytics\", \"custom*bot*detection*alert\", \"custom*ssl*certificate*event*type\", \"dedicated*ssl*certificate*event*type\", \"device*connectivity*anomaly*alert\", \"dos*attack*l4\", \"dos*attack*l7\", \"expiring*service*token*alert\", \"failing*logpush*job*disabled*alert\", \"fbm*auto*advertisement\", \"fbm*dosd*attack\", \"fbm*volumetric*attack\", \"health*check*status*notification\", \"hostname*aop*custom*certificate*expiration*type\", \"http*alert*edge*error\", \"http*alert*origin*error\", \"image*notification\", \"image*resizing*notification\", \"incident*alert\", \"load*balancing*health*alert\", \"load*balancing*pool*enablement*alert\", \"logo*match*alert\", \"magic*tunnel*health*check*event\", \"magic*wan*tunnel*health\", \"maintenance*event*notification\", \"mtls*certificate*store*certificate*expiration*type\", \"pages*event*alert\", \"radar*notification\", \"real*origin*monitoring\", \"scriptmonitor*alert*new*code*change*detections\", \"scriptmonitor*alert*new*hosts\", \"scriptmonitor*alert*new*malicious*hosts\", \"scriptmonitor*alert*new*malicious*scripts\", \"scriptmonitor*alert*new*malicious*url\", \"scriptmonitor*alert*new*max*length*resource*url\", \"scriptmonitor*alert*new*resources\", \"secondary*dns*all*primaries*failing\", \"secondary*dns*primaries*failing\", \"secondary*dns*warning\", \"secondary*dns*zone*successfully*updated\", \"secondary*dns*zone*validation*warning\", \"security*insights*alert\", \"sentinel*alert\", \"stream*live*notifications\", \"synthetic*test*latency*alert\", \"synthetic*test*low*availability*alert\", \"traffic*anomalies*alert\", \"tunnel*health*event\", \"tunnel*update*event\", \"universal*ssl*event*type\", \"web*analytics*metrics*update\", \"zone*aop*custom*certificate*expiration*type\".\n"
                    },
                    "created": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "Optional description for the Notification policy.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether or not the Notification policy is enabled.\n"
                    },
                    "filters": {
                        "$ref": "#/types/cloudflare:index/NotificationPolicyFilters:NotificationPolicyFilters",
                        "description": "Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details.\n"
                    },
                    "mechanisms": {
                        "$ref": "#/types/cloudflare:index/NotificationPolicyMechanisms:NotificationPolicyMechanisms",
                        "description": "List of IDs that will be used when dispatching a notification. IDs for email type will be the email address.\n"
                    },
                    "modified": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the policy.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/notificationPolicyWebhooks:NotificationPolicyWebhooks": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Notifications Read`\n- `Notifications Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleNotificationPolicyWebhooks = new cloudflare.NotificationPolicyWebhooks(\"example_notification_policy_webhooks\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"Slack Webhook\",\n    url: \"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd\",\n    secret: \"secret\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_notification_policy_webhooks = cloudflare.NotificationPolicyWebhooks(\"example_notification_policy_webhooks\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"Slack Webhook\",\n    url=\"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd\",\n    secret=\"secret\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleNotificationPolicyWebhooks = new Cloudflare.Index.NotificationPolicyWebhooks(\"example_notification_policy_webhooks\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"Slack Webhook\",\n        Url = \"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd\",\n        Secret = \"secret\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewNotificationPolicyWebhooks(ctx, \"example_notification_policy_webhooks\", \u0026cloudflare.NotificationPolicyWebhooksArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"Slack Webhook\"),\n\t\t\tUrl:       pulumi.String(\"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd\"),\n\t\t\tSecret:    pulumi.String(\"secret\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.NotificationPolicyWebhooks;\nimport com.pulumi.cloudflare.NotificationPolicyWebhooksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleNotificationPolicyWebhooks = new NotificationPolicyWebhooks(\"exampleNotificationPolicyWebhooks\", NotificationPolicyWebhooksArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"Slack Webhook\")\n            .url(\"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd\")\n            .secret(\"secret\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleNotificationPolicyWebhooks:\n    type: cloudflare:NotificationPolicyWebhooks\n    name: example_notification_policy_webhooks\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: Slack Webhook\n      url: https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd\n      secret: secret\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/notificationPolicyWebhooks:NotificationPolicyWebhooks example '\u003caccount_id\u003e/\u003cwebhook_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account id\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the webhook destination was created.\n"
                },
                "lastFailure": {
                    "type": "string",
                    "description": "Timestamp of the last time an attempt to dispatch a notification to this webhook failed.\n"
                },
                "lastSuccess": {
                    "type": "string",
                    "description": "Timestamp of the last time Cloudflare was able to successfully dispatch a notification using this webhook.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the webhook destination. This will be included in the request body when you receive a webhook notification.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.\n",
                    "secret": true
                },
                "type": {
                    "type": "string",
                    "description": "Type of webhook endpoint.\nAvailable values: \"datadog\", \"discord\", \"feishu\", \"gchat\", \"generic\", \"opsgenie\", \"slack\", \"splunk\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "The POST endpoint to call when dispatching a notification.\n"
                }
            },
            "required": [
                "createdAt",
                "lastFailure",
                "lastSuccess",
                "name",
                "type",
                "url"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account id\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the webhook destination. This will be included in the request body when you receive a webhook notification.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.\n",
                    "secret": true
                },
                "url": {
                    "type": "string",
                    "description": "The POST endpoint to call when dispatching a notification.\n"
                }
            },
            "requiredInputs": [
                "name",
                "url"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering NotificationPolicyWebhooks resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account id\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the webhook destination was created.\n"
                    },
                    "lastFailure": {
                        "type": "string",
                        "description": "Timestamp of the last time an attempt to dispatch a notification to this webhook failed.\n"
                    },
                    "lastSuccess": {
                        "type": "string",
                        "description": "Timestamp of the last time Cloudflare was able to successfully dispatch a notification using this webhook.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the webhook destination. This will be included in the request body when you receive a webhook notification.\n"
                    },
                    "secret": {
                        "type": "string",
                        "description": "Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.\n",
                        "secret": true
                    },
                    "type": {
                        "type": "string",
                        "description": "Type of webhook endpoint.\nAvailable values: \"datadog\", \"discord\", \"feishu\", \"gchat\", \"generic\", \"opsgenie\", \"slack\", \"splunk\".\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The POST endpoint to call when dispatching a notification.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/observatoryScheduledTest:ObservatoryScheduledTest": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleObservatoryScheduledTest = new cloudflare.ObservatoryScheduledTest(\"example_observatory_scheduled_test\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    url: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_observatory_scheduled_test = cloudflare.ObservatoryScheduledTest(\"example_observatory_scheduled_test\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    url=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleObservatoryScheduledTest = new Cloudflare.Index.ObservatoryScheduledTest(\"example_observatory_scheduled_test\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Url = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewObservatoryScheduledTest(ctx, \"example_observatory_scheduled_test\", \u0026cloudflare.ObservatoryScheduledTestArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tUrl:    pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ObservatoryScheduledTest;\nimport com.pulumi.cloudflare.ObservatoryScheduledTestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleObservatoryScheduledTest = new ObservatoryScheduledTest(\"exampleObservatoryScheduledTest\", ObservatoryScheduledTestArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .url(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleObservatoryScheduledTest:\n    type: cloudflare:ObservatoryScheduledTest\n    name: example_observatory_scheduled_test\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      url: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/observatoryScheduledTest:ObservatoryScheduledTest example '\u003czone_id\u003e/\u003curl\u003e'\n```\n\n",
            "properties": {
                "frequency": {
                    "type": "string",
                    "description": "The frequency of the scheduled test. Defaults to WEEKLY for free plans, DAILY for paid plans.\n"
                },
                "region": {
                    "type": "string",
                    "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n"
                },
                "schedule": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestSchedule:ObservatoryScheduledTestSchedule",
                    "description": "The test schedule.\n"
                },
                "test": {
                    "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTest:ObservatoryScheduledTestTest"
                },
                "url": {
                    "type": "string",
                    "description": "A URL.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "frequency",
                "region",
                "schedule",
                "test",
                "url"
            ],
            "inputProperties": {
                "frequency": {
                    "type": "string",
                    "description": "The frequency of the scheduled test. Defaults to WEEKLY for free plans, DAILY for paid plans.\n"
                },
                "region": {
                    "type": "string",
                    "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n"
                },
                "url": {
                    "type": "string",
                    "description": "A URL.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "url"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ObservatoryScheduledTest resources.\n",
                "properties": {
                    "frequency": {
                        "type": "string",
                        "description": "The frequency of the scheduled test. Defaults to WEEKLY for free plans, DAILY for paid plans.\n"
                    },
                    "region": {
                        "type": "string",
                        "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n"
                    },
                    "schedule": {
                        "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestSchedule:ObservatoryScheduledTestSchedule",
                        "description": "The test schedule.\n"
                    },
                    "test": {
                        "$ref": "#/types/cloudflare:index/ObservatoryScheduledTestTest:ObservatoryScheduledTestTest"
                    },
                    "url": {
                        "type": "string",
                        "description": "A URL.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/organization:Organization": {
            "description": "Accepted Permissions\n\n- `User Details Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOrganization = new cloudflare.Organization(\"example_organization\", {\n    name: \"name\",\n    parent: {\n        id: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    },\n    profile: {\n        businessAddress: \"business_address\",\n        businessEmail: \"business_email\",\n        businessName: \"business_name\",\n        businessPhone: \"business_phone\",\n        externalMetadata: \"external_metadata\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_organization = cloudflare.Organization(\"example_organization\",\n    name=\"name\",\n    parent={\n        \"id\": \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    },\n    profile={\n        \"business_address\": \"business_address\",\n        \"business_email\": \"business_email\",\n        \"business_name\": \"business_name\",\n        \"business_phone\": \"business_phone\",\n        \"external_metadata\": \"external_metadata\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOrganization = new Cloudflare.Index.Organization(\"example_organization\", new()\n    {\n        Name = \"name\",\n        Parent = new Cloudflare.Inputs.OrganizationParentArgs\n        {\n            Id = \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n        },\n        Profile = new Cloudflare.Inputs.OrganizationProfileArgs\n        {\n            BusinessAddress = \"business_address\",\n            BusinessEmail = \"business_email\",\n            BusinessName = \"business_name\",\n            BusinessPhone = \"business_phone\",\n            ExternalMetadata = \"external_metadata\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewOrganization(ctx, \"example_organization\", \u0026cloudflare.OrganizationArgs{\n\t\t\tName: pulumi.String(\"name\"),\n\t\t\tParent: \u0026cloudflare.OrganizationParentArgs{\n\t\t\t\tId: pulumi.String(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\"),\n\t\t\t},\n\t\t\tProfile: \u0026cloudflare.OrganizationProfileTypeArgs{\n\t\t\t\tBusinessAddress:  pulumi.String(\"business_address\"),\n\t\t\t\tBusinessEmail:    pulumi.String(\"business_email\"),\n\t\t\t\tBusinessName:     pulumi.String(\"business_name\"),\n\t\t\t\tBusinessPhone:    pulumi.String(\"business_phone\"),\n\t\t\t\tExternalMetadata: pulumi.String(\"external_metadata\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Organization;\nimport com.pulumi.cloudflare.OrganizationArgs;\nimport com.pulumi.cloudflare.inputs.OrganizationParentArgs;\nimport com.pulumi.cloudflare.inputs.OrganizationProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleOrganization = new Organization(\"exampleOrganization\", OrganizationArgs.builder()\n            .name(\"name\")\n            .parent(OrganizationParentArgs.builder()\n                .id(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n                .build())\n            .profile(OrganizationProfileArgs.builder()\n                .businessAddress(\"business_address\")\n                .businessEmail(\"business_email\")\n                .businessName(\"business_name\")\n                .businessPhone(\"business_phone\")\n                .externalMetadata(\"external_metadata\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleOrganization:\n    type: cloudflare:Organization\n    name: example_organization\n    properties:\n      name: name\n      parent:\n        id: a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\n      profile:\n        businessAddress: business_address\n        businessEmail: business_email\n        businessName: business_name\n        businessPhone: business_phone\n        externalMetadata: external_metadata\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/organization:Organization example '\u003corganization_id\u003e'\n```\n\n",
            "properties": {
                "createTime": {
                    "type": "string"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/OrganizationMeta:OrganizationMeta"
                },
                "name": {
                    "type": "string"
                },
                "parent": {
                    "$ref": "#/types/cloudflare:index/OrganizationParent:OrganizationParent"
                },
                "profile": {
                    "$ref": "#/types/cloudflare:index/OrganizationProfile:OrganizationProfile"
                }
            },
            "required": [
                "createTime",
                "meta",
                "name",
                "parent"
            ],
            "inputProperties": {
                "name": {
                    "type": "string"
                },
                "parent": {
                    "$ref": "#/types/cloudflare:index/OrganizationParent:OrganizationParent"
                },
                "profile": {
                    "$ref": "#/types/cloudflare:index/OrganizationProfile:OrganizationProfile"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Organization resources.\n",
                "properties": {
                    "createTime": {
                        "type": "string"
                    },
                    "meta": {
                        "$ref": "#/types/cloudflare:index/OrganizationMeta:OrganizationMeta"
                    },
                    "name": {
                        "type": "string"
                    },
                    "parent": {
                        "$ref": "#/types/cloudflare:index/OrganizationParent:OrganizationParent"
                    },
                    "profile": {
                        "$ref": "#/types/cloudflare:index/OrganizationProfile:OrganizationProfile"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/organizationProfile:OrganizationProfile": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOrganizationProfile = new cloudflare.OrganizationProfile(\"example_organization_profile\", {\n    organizationId: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    businessAddress: \"business_address\",\n    businessEmail: \"business_email\",\n    businessName: \"business_name\",\n    businessPhone: \"business_phone\",\n    externalMetadata: \"external_metadata\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_organization_profile = cloudflare.OrganizationProfile(\"example_organization_profile\",\n    organization_id=\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    business_address=\"business_address\",\n    business_email=\"business_email\",\n    business_name=\"business_name\",\n    business_phone=\"business_phone\",\n    external_metadata=\"external_metadata\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOrganizationProfile = new Cloudflare.Index.OrganizationProfile(\"example_organization_profile\", new()\n    {\n        OrganizationId = \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n        BusinessAddress = \"business_address\",\n        BusinessEmail = \"business_email\",\n        BusinessName = \"business_name\",\n        BusinessPhone = \"business_phone\",\n        ExternalMetadata = \"external_metadata\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewOrganizationProfile(ctx, \"example_organization_profile\", \u0026cloudflare.OrganizationProfileArgs{\n\t\t\tOrganizationId:   pulumi.String(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\"),\n\t\t\tBusinessAddress:  pulumi.String(\"business_address\"),\n\t\t\tBusinessEmail:    pulumi.String(\"business_email\"),\n\t\t\tBusinessName:     pulumi.String(\"business_name\"),\n\t\t\tBusinessPhone:    pulumi.String(\"business_phone\"),\n\t\t\tExternalMetadata: pulumi.String(\"external_metadata\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.OrganizationProfile;\nimport com.pulumi.cloudflare.OrganizationProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleOrganizationProfile = new OrganizationProfile(\"exampleOrganizationProfile\", OrganizationProfileArgs.builder()\n            .organizationId(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n            .businessAddress(\"business_address\")\n            .businessEmail(\"business_email\")\n            .businessName(\"business_name\")\n            .businessPhone(\"business_phone\")\n            .externalMetadata(\"external_metadata\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleOrganizationProfile:\n    type: cloudflare:OrganizationProfile\n    name: example_organization_profile\n    properties:\n      organizationId: a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\n      businessAddress: business_address\n      businessEmail: business_email\n      businessName: business_name\n      businessPhone: business_phone\n      externalMetadata: external_metadata\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "businessAddress": {
                    "type": "string"
                },
                "businessEmail": {
                    "type": "string"
                },
                "businessName": {
                    "type": "string"
                },
                "businessPhone": {
                    "type": "string"
                },
                "externalMetadata": {
                    "type": "string"
                },
                "organizationId": {
                    "type": "string"
                }
            },
            "required": [
                "businessAddress",
                "businessEmail",
                "businessName",
                "businessPhone",
                "externalMetadata",
                "organizationId"
            ],
            "inputProperties": {
                "businessAddress": {
                    "type": "string"
                },
                "businessEmail": {
                    "type": "string"
                },
                "businessName": {
                    "type": "string"
                },
                "businessPhone": {
                    "type": "string"
                },
                "externalMetadata": {
                    "type": "string"
                },
                "organizationId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "businessAddress",
                "businessEmail",
                "businessName",
                "businessPhone",
                "externalMetadata",
                "organizationId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OrganizationProfile resources.\n",
                "properties": {
                    "businessAddress": {
                        "type": "string"
                    },
                    "businessEmail": {
                        "type": "string"
                    },
                    "businessName": {
                        "type": "string"
                    },
                    "businessPhone": {
                        "type": "string"
                    },
                    "externalMetadata": {
                        "type": "string"
                    },
                    "organizationId": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/originCaCertificate:OriginCaCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOriginCaCertificate = new cloudflare.OriginCaCertificate(\"example_origin_ca_certificate\", {\n    csr: `  -----BEGIN CERTIFICATE REQUEST-----\n  MIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\n  Y28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\n  hvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\n  Hu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n  4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\n  N8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\n  g7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\n  uOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\n  CSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\n  cGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\n  pTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\n  auRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\n  yc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\n  hXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\n  dcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n  -----END CERTIFICATE REQUEST-----\n`,\n    hostnames: [\n        \"example.com\",\n        \"*.example.com\",\n        \"sub.example.com\",\n    ],\n    requestType: \"origin-rsa\",\n    requestedValidity: 5475,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_origin_ca_certificate = cloudflare.OriginCaCertificate(\"example_origin_ca_certificate\",\n    csr=\"\"\"  -----BEGIN CERTIFICATE REQUEST-----\n  MIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\n  Y28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\n  hvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\n  Hu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n  4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\n  N8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\n  g7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\n  uOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\n  CSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\n  cGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\n  pTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\n  auRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\n  yc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\n  hXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\n  dcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n  -----END CERTIFICATE REQUEST-----\n\"\"\",\n    hostnames=[\n        \"example.com\",\n        \"*.example.com\",\n        \"sub.example.com\",\n    ],\n    request_type=\"origin-rsa\",\n    requested_validity=5475)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOriginCaCertificate = new Cloudflare.Index.OriginCaCertificate(\"example_origin_ca_certificate\", new()\n    {\n        Csr = @\"  -----BEGIN CERTIFICATE REQUEST-----\n  MIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\n  Y28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\n  hvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\n  Hu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n  4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\n  N8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\n  g7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\n  uOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\n  CSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\n  cGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\n  pTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\n  auRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\n  yc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\n  hXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\n  dcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n  -----END CERTIFICATE REQUEST-----\n\",\n        Hostnames = new[]\n        {\n            \"example.com\",\n            \"*.example.com\",\n            \"sub.example.com\",\n        },\n        RequestType = \"origin-rsa\",\n        RequestedValidity = 5475,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewOriginCaCertificate(ctx, \"example_origin_ca_certificate\", \u0026cloudflare.OriginCaCertificateArgs{\n\t\t\tCsr: pulumi.String(`  -----BEGIN CERTIFICATE REQUEST-----\n  MIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\n  Y28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\n  hvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\n  Hu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n  4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\n  N8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\n  g7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\n  uOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\n  CSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\n  cGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\n  pTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\n  auRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\n  yc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\n  hXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\n  dcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n  -----END CERTIFICATE REQUEST-----\n`),\n\t\t\tHostnames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\tpulumi.String(\"*.example.com\"),\n\t\t\t\tpulumi.String(\"sub.example.com\"),\n\t\t\t},\n\t\t\tRequestType:       pulumi.String(\"origin-rsa\"),\n\t\t\tRequestedValidity: pulumi.Float64(5475),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.OriginCaCertificate;\nimport com.pulumi.cloudflare.OriginCaCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleOriginCaCertificate = new OriginCaCertificate(\"exampleOriginCaCertificate\", OriginCaCertificateArgs.builder()\n            .csr(\"\"\"\n  -----BEGIN CERTIFICATE REQUEST-----\n  MIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\n  Y28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\n  hvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\n  Hu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n  4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\n  N8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\n  g7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\n  uOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\n  CSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\n  cGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\n  pTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\n  auRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\n  yc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\n  hXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\n  dcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n  -----END CERTIFICATE REQUEST-----\n            \"\"\")\n            .hostnames(            \n                \"example.com\",\n                \"*.example.com\",\n                \"sub.example.com\")\n            .requestType(\"origin-rsa\")\n            .requestedValidity(5475.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleOriginCaCertificate:\n    type: cloudflare:OriginCaCertificate\n    name: example_origin_ca_certificate\n    properties:\n      csr: |2\n          -----BEGIN CERTIFICATE REQUEST-----\n          MIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\n          Y28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\n          hvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\n          Hu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n          4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\n          N8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\n          g7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\n          uOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\n          CSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\n          cGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\n          pTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\n          auRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\n          yc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\n          hXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\n          dcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n          -----END CERTIFICATE REQUEST-----\n      hostnames:\n        - example.com\n        - '*.example.com'\n        - sub.example.com\n      requestType: origin-rsa\n      requestedValidity: 5475\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/originCaCertificate:OriginCaCertificate example '\u003ccertificate_id\u003e'\n```\n\n",
            "properties": {
                "certificate": {
                    "type": "string",
                    "description": "The Origin CA certificate. Will be newline-encoded.\n"
                },
                "csr": {
                    "type": "string",
                    "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                },
                "expiresOn": {
                    "type": "string",
                    "description": "When the certificate will expire.\n"
                },
                "hostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of hostnames or wildcard names bound to the certificate.\nHostnames must be fully qualified domain names (FQDNs) belonging to zones on your account (e.g., `example.com` or `sub.example.com`). Wildcards are supported only as a `*.` prefix for a single level (e.g., `*.example.com`). Double wildcards (`*.*.example.com`) and interior wildcards (`foo.*.example.com`) are not allowed. The wildcard suffix must be a multi-label domain (`*.example.com` is valid, but `*.com` is not). Unicode/IDN hostnames are accepted and automatically converted to punycode.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).\nAvailable values: \"origin-rsa\", \"origin-ecc\", \"keyless-certificate\".\n"
                },
                "requestedValidity": {
                    "type": "number",
                    "description": "The number of days for which the certificate should be valid.\nAvailable values: 7, 30, 90, 365, 730, 1095, 5475.\n"
                }
            },
            "required": [
                "certificate",
                "csr",
                "expiresOn",
                "hostnames",
                "requestType",
                "requestedValidity"
            ],
            "inputProperties": {
                "csr": {
                    "type": "string",
                    "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                },
                "hostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of hostnames or wildcard names bound to the certificate.\nHostnames must be fully qualified domain names (FQDNs) belonging to zones on your account (e.g., `example.com` or `sub.example.com`). Wildcards are supported only as a `*.` prefix for a single level (e.g., `*.example.com`). Double wildcards (`*.*.example.com`) and interior wildcards (`foo.*.example.com`) are not allowed. The wildcard suffix must be a multi-label domain (`*.example.com` is valid, but `*.com` is not). Unicode/IDN hostnames are accepted and automatically converted to punycode.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).\nAvailable values: \"origin-rsa\", \"origin-ecc\", \"keyless-certificate\".\n"
                },
                "requestedValidity": {
                    "type": "number",
                    "description": "The number of days for which the certificate should be valid.\nAvailable values: 7, 30, 90, 365, 730, 1095, 5475.\n"
                }
            },
            "requiredInputs": [
                "csr",
                "hostnames",
                "requestType"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OriginCaCertificate resources.\n",
                "properties": {
                    "certificate": {
                        "type": "string",
                        "description": "The Origin CA certificate. Will be newline-encoded.\n"
                    },
                    "csr": {
                        "type": "string",
                        "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n"
                    },
                    "expiresOn": {
                        "type": "string",
                        "description": "When the certificate will expire.\n"
                    },
                    "hostnames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Array of hostnames or wildcard names bound to the certificate.\nHostnames must be fully qualified domain names (FQDNs) belonging to zones on your account (e.g., `example.com` or `sub.example.com`). Wildcards are supported only as a `*.` prefix for a single level (e.g., `*.example.com`). Double wildcards (`*.*.example.com`) and interior wildcards (`foo.*.example.com`) are not allowed. The wildcard suffix must be a multi-label domain (`*.example.com` is valid, but `*.com` is not). Unicode/IDN hostnames are accepted and automatically converted to punycode.\n"
                    },
                    "requestType": {
                        "type": "string",
                        "description": "Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).\nAvailable values: \"origin-rsa\", \"origin-ecc\", \"keyless-certificate\".\n"
                    },
                    "requestedValidity": {
                        "type": "number",
                        "description": "The number of days for which the certificate should be valid.\nAvailable values: 7, 30, 90, 365, 730, 1095, 5475.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pageRule:PageRule": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageRule = new cloudflare.PageRule(\"example_page_rule\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    target: \"example.com/*\",\n    priority: 1,\n    status: \"active\",\n    actions: {\n        forwardingUrl: {\n            url: \"https://example.com/foo\",\n            statusCode: 301,\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_rule = cloudflare.PageRule(\"example_page_rule\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    target=\"example.com/*\",\n    priority=1,\n    status=\"active\",\n    actions={\n        \"forwarding_url\": {\n            \"url\": \"https://example.com/foo\",\n            \"status_code\": 301,\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageRule = new Cloudflare.Index.PageRule(\"example_page_rule\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Target = \"example.com/*\",\n        Priority = 1,\n        Status = \"active\",\n        Actions = new Cloudflare.Inputs.PageRuleActionsArgs\n        {\n            ForwardingUrl = new Cloudflare.Inputs.PageRuleActionsForwardingUrlArgs\n            {\n                Url = \"https://example.com/foo\",\n                StatusCode = 301,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewPageRule(ctx, \"example_page_rule\", \u0026cloudflare.PageRuleArgs{\n\t\t\tZoneId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTarget:   pulumi.String(\"example.com/*\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tStatus:   pulumi.String(\"active\"),\n\t\t\tActions: \u0026cloudflare.PageRuleActionsArgs{\n\t\t\t\tForwardingUrl: \u0026cloudflare.PageRuleActionsForwardingUrlArgs{\n\t\t\t\t\tUrl:        pulumi.String(\"https://example.com/foo\"),\n\t\t\t\t\tStatusCode: pulumi.Int(301),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.PageRule;\nimport com.pulumi.cloudflare.PageRuleArgs;\nimport com.pulumi.cloudflare.inputs.PageRuleActionsArgs;\nimport com.pulumi.cloudflare.inputs.PageRuleActionsForwardingUrlArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var examplePageRule = new PageRule(\"examplePageRule\", PageRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .target(\"example.com/*\")\n            .priority(1)\n            .status(\"active\")\n            .actions(PageRuleActionsArgs.builder()\n                .forwardingUrl(PageRuleActionsForwardingUrlArgs.builder()\n                    .url(\"https://example.com/foo\")\n                    .statusCode(301)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  examplePageRule:\n    type: cloudflare:PageRule\n    name: example_page_rule\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      target: example.com/*\n      priority: 1\n      status: active\n      actions:\n        forwardingUrl:\n          url: https://example.com/foo\n          statusCode: 301\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/pageRule:PageRule example '\u003czone_id\u003e/\u003cpagerule_id\u003e'\n```\n\n",
            "properties": {
                "actions": {
                    "$ref": "#/types/cloudflare:index/PageRuleActions:PageRuleActions"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the Page Rule was created.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the Page Rule was last modified.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "The priority of the rule, used to define which Page Rule is processed\nover another. A higher number indicates a higher priority. For example,\nif you have a catch-all Page Rule (rule A: `/images/*`) but want a more\nspecific Page Rule to take precedence (rule B: `/images/special/*`),\nspecify a higher priority for rule B so it overrides rule A.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the Page Rule.\nAvailable values: \"active\", \"disabled\".\n"
                },
                "target": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "actions",
                "createdOn",
                "modifiedOn",
                "priority",
                "status",
                "target"
            ],
            "inputProperties": {
                "actions": {
                    "$ref": "#/types/cloudflare:index/PageRuleActions:PageRuleActions"
                },
                "priority": {
                    "type": "integer",
                    "description": "The priority of the rule, used to define which Page Rule is processed\nover another. A higher number indicates a higher priority. For example,\nif you have a catch-all Page Rule (rule A: `/images/*`) but want a more\nspecific Page Rule to take precedence (rule B: `/images/special/*`),\nspecify a higher priority for rule B so it overrides rule A.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the Page Rule.\nAvailable values: \"active\", \"disabled\".\n"
                },
                "target": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "actions",
                "target"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering PageRule resources.\n",
                "properties": {
                    "actions": {
                        "$ref": "#/types/cloudflare:index/PageRuleActions:PageRuleActions"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The timestamp of when the Page Rule was created.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The timestamp of when the Page Rule was last modified.\n"
                    },
                    "priority": {
                        "type": "integer",
                        "description": "The priority of the rule, used to define which Page Rule is processed\nover another. A higher number indicates a higher priority. For example,\nif you have a catch-all Page Rule (rule A: `/images/*`) but want a more\nspecific Page Rule to take precedence (rule B: `/images/special/*`),\nspecify a higher priority for rule B so it overrides rule A.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the Page Rule.\nAvailable values: \"active\", \"disabled\".\n"
                    },
                    "target": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pageShieldPolicy:PageShieldPolicy": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/pageShieldPolicy:PageShieldPolicy example '\u003czone_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to take if the expression matches\nAvailable values: \"allow\", \"log\", \"add*reporting*directives\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the policy\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy is enabled\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax\n"
                },
                "value": {
                    "type": "string",
                    "description": "The policy which will be applied\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "required": [
                "action",
                "description",
                "enabled",
                "expression",
                "value"
            ],
            "inputProperties": {
                "action": {
                    "type": "string",
                    "description": "The action to take if the expression matches\nAvailable values: \"allow\", \"log\", \"add*reporting*directives\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the policy\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy is enabled\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax\n"
                },
                "value": {
                    "type": "string",
                    "description": "The policy which will be applied\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "requiredInputs": [
                "action",
                "description",
                "enabled",
                "expression",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering PageShieldPolicy resources.\n",
                "properties": {
                    "action": {
                        "type": "string",
                        "description": "The action to take if the expression matches\nAvailable values: \"allow\", \"log\", \"add*reporting*directives\".\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A description for the policy\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the policy is enabled\n"
                    },
                    "expression": {
                        "type": "string",
                        "description": "The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "The policy which will be applied\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pagesDomain:PagesDomain": {
            "description": "Accepted Permissions\n\n- `Pages Read`\n- `Pages Write`\n\n\u003e A DNS record for the domain is not automatically created. You need to create\n   a \u003cspan pulumi-lang-nodejs=\"`cloudflareRecord`\" pulumi-lang-dotnet=\"`CloudflareRecord`\" pulumi-lang-go=\"`cloudflareRecord`\" pulumi-lang-python=\"`cloudflare_record`\" pulumi-lang-yaml=\"`cloudflareRecord`\" pulumi-lang-java=\"`cloudflareRecord`\"\u003e`cloudflareRecord`\u003c/span\u003e resource for the domain you want to use.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePagesDomain = new cloudflare.PagesDomain(\"example_pages_domain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    projectName: \"this-is-my-project-01\",\n    name: \"this-is-my-domain-01.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pages_domain = cloudflare.PagesDomain(\"example_pages_domain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    project_name=\"this-is-my-project-01\",\n    name=\"this-is-my-domain-01.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePagesDomain = new Cloudflare.Index.PagesDomain(\"example_pages_domain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ProjectName = \"this-is-my-project-01\",\n        Name = \"this-is-my-domain-01.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewPagesDomain(ctx, \"example_pages_domain\", \u0026cloudflare.PagesDomainArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tProjectName: pulumi.String(\"this-is-my-project-01\"),\n\t\t\tName:        pulumi.String(\"this-is-my-domain-01.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.PagesDomain;\nimport com.pulumi.cloudflare.PagesDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var examplePagesDomain = new PagesDomain(\"examplePagesDomain\", PagesDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .projectName(\"this-is-my-project-01\")\n            .name(\"this-is-my-domain-01.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  examplePagesDomain:\n    type: cloudflare:PagesDomain\n    name: example_pages_domain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      projectName: this-is-my-project-01\n      name: this-is-my-domain-01.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/pagesDomain:PagesDomain example '\u003caccount_id\u003e/\u003cproject_name\u003e/\u003cdomain_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "certificateAuthority": {
                    "type": "string",
                    "description": "Available values: \"google\", \u003cspan pulumi-lang-nodejs=\"\"letsEncrypt\"\" pulumi-lang-dotnet=\"\"LetsEncrypt\"\" pulumi-lang-go=\"\"letsEncrypt\"\" pulumi-lang-python=\"\"lets_encrypt\"\" pulumi-lang-yaml=\"\"letsEncrypt\"\" pulumi-lang-java=\"\"letsEncrypt\"\"\u003e\"letsEncrypt\"\u003c/span\u003e.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "domainId": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The domain name.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n"
                },
                "validationData": {
                    "$ref": "#/types/cloudflare:index/PagesDomainValidationData:PagesDomainValidationData"
                },
                "verificationData": {
                    "$ref": "#/types/cloudflare:index/PagesDomainVerificationData:PagesDomainVerificationData"
                },
                "zoneTag": {
                    "type": "string"
                }
            },
            "required": [
                "certificateAuthority",
                "createdOn",
                "domainId",
                "name",
                "projectName",
                "status",
                "validationData",
                "verificationData",
                "zoneTag"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The domain name.\n"
                },
                "projectName": {
                    "type": "string",
                    "description": "Name of the project.\n"
                }
            },
            "requiredInputs": [
                "name",
                "projectName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering PagesDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "certificateAuthority": {
                        "type": "string",
                        "description": "Available values: \"google\", \u003cspan pulumi-lang-nodejs=\"\"letsEncrypt\"\" pulumi-lang-dotnet=\"\"LetsEncrypt\"\" pulumi-lang-go=\"\"letsEncrypt\"\" pulumi-lang-python=\"\"lets_encrypt\"\" pulumi-lang-yaml=\"\"letsEncrypt\"\" pulumi-lang-java=\"\"letsEncrypt\"\"\u003e\"letsEncrypt\"\u003c/span\u003e.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "domainId": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "The domain name.\n"
                    },
                    "projectName": {
                        "type": "string",
                        "description": "Name of the project.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n"
                    },
                    "validationData": {
                        "$ref": "#/types/cloudflare:index/PagesDomainValidationData:PagesDomainValidationData"
                    },
                    "verificationData": {
                        "$ref": "#/types/cloudflare:index/PagesDomainVerificationData:PagesDomainVerificationData"
                    },
                    "zoneTag": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pagesProject:PagesProject": {
            "description": "Accepted Permissions\n\n- `Pages Read`\n- `Pages Write`\n\n\u003e If you are using a \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e block configuration, you must first have a\n   connected GitHub or GitLab account connected to Cloudflare. See the\n   [Getting Started with Pages](https://developers.cloudflare.com/pages/get-started/git-integration/)\n   documentation on how to link your accounts.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePagesProject = new cloudflare.PagesProject(\"example_pages_project\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my-pages-app\",\n    productionBranch: \"main\",\n    buildConfig: {\n        buildCaching: true,\n        buildCommand: \"npm run build\",\n        destinationDir: \"build\",\n        rootDir: \"/\",\n        webAnalyticsTag: \"cee1c73f6e4743d0b5e6bb1a0bcaabcc\",\n        webAnalyticsToken: \"021e1057c18547eca7b79f2516f06o7x\",\n    },\n    deploymentConfigs: {\n        preview: {\n            aiBindings: {\n                AI_BINDING: {\n                    projectId: \"some-project-id\",\n                },\n            },\n            alwaysUseLatestCompatibilityDate: false,\n            analyticsEngineDatasets: {\n                ANALYTICS_ENGINE_BINDING: {\n                    dataset: \"api_analytics\",\n                },\n            },\n            browsers: {\n                BROWSER: {},\n            },\n            buildImageMajorVersion: 3,\n            compatibilityDate: \"2025-01-01\",\n            compatibilityFlags: [\"url_standard\"],\n            d1Databases: {\n                D1_BINDING: {\n                    id: \"445e2955-951a-43f8-a35b-a4d0c8138f63\",\n                },\n            },\n            durableObjectNamespaces: {\n                DO_BINDING: {\n                    namespaceId: \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            envVars: {\n                foo: {\n                    type: \"plain_text\",\n                    value: \"hello world\",\n                },\n            },\n            failOpen: true,\n            hyperdriveBindings: {\n                HYPERDRIVE: {\n                    id: \"a76a99bc342644deb02c38d66082262a\",\n                },\n            },\n            kvNamespaces: {\n                KV_BINDING: {\n                    namespaceId: \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            limits: {\n                cpuMs: 100,\n            },\n            mtlsCertificates: {\n                MTLS: {\n                    certificateId: \"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\",\n                },\n            },\n            placement: {\n                mode: \"smart\",\n            },\n            queueProducers: {\n                QUEUE_PRODUCER_BINDING: {\n                    name: \"some-queue\",\n                },\n            },\n            r2Buckets: {\n                R2_BINDING: {\n                    name: \"some-bucket\",\n                    jurisdiction: \"eu\",\n                },\n            },\n            services: {\n                SERVICE_BINDING: {\n                    service: \"example-worker\",\n                    entrypoint: \"MyHandler\",\n                    environment: \"production\",\n                },\n            },\n            usageModel: \"standard\",\n            vectorizeBindings: {\n                VECTORIZE: {\n                    indexName: \"my_index\",\n                },\n            },\n            wranglerConfigHash: \"abc123def456\",\n        },\n        production: {\n            aiBindings: {\n                AI_BINDING: {\n                    projectId: \"some-project-id\",\n                },\n            },\n            alwaysUseLatestCompatibilityDate: false,\n            analyticsEngineDatasets: {\n                ANALYTICS_ENGINE_BINDING: {\n                    dataset: \"api_analytics\",\n                },\n            },\n            browsers: {\n                BROWSER: {},\n            },\n            buildImageMajorVersion: 3,\n            compatibilityDate: \"2025-01-01\",\n            compatibilityFlags: [\"url_standard\"],\n            d1Databases: {\n                D1_BINDING: {\n                    id: \"445e2955-951a-43f8-a35b-a4d0c8138f63\",\n                },\n            },\n            durableObjectNamespaces: {\n                DO_BINDING: {\n                    namespaceId: \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            envVars: {\n                foo: {\n                    type: \"plain_text\",\n                    value: \"hello world\",\n                },\n            },\n            failOpen: true,\n            hyperdriveBindings: {\n                HYPERDRIVE: {\n                    id: \"a76a99bc342644deb02c38d66082262a\",\n                },\n            },\n            kvNamespaces: {\n                KV_BINDING: {\n                    namespaceId: \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            limits: {\n                cpuMs: 100,\n            },\n            mtlsCertificates: {\n                MTLS: {\n                    certificateId: \"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\",\n                },\n            },\n            placement: {\n                mode: \"smart\",\n            },\n            queueProducers: {\n                QUEUE_PRODUCER_BINDING: {\n                    name: \"some-queue\",\n                },\n            },\n            r2Buckets: {\n                R2_BINDING: {\n                    name: \"some-bucket\",\n                    jurisdiction: \"eu\",\n                },\n            },\n            services: {\n                SERVICE_BINDING: {\n                    service: \"example-worker\",\n                    entrypoint: \"MyHandler\",\n                    environment: \"production\",\n                },\n            },\n            usageModel: \"standard\",\n            vectorizeBindings: {\n                VECTORIZE: {\n                    indexName: \"my_index\",\n                },\n            },\n            wranglerConfigHash: \"abc123def456\",\n        },\n    },\n    source: {\n        config: {\n            deploymentsEnabled: true,\n            owner: \"my-org\",\n            ownerId: \"12345678\",\n            pathExcludes: [\"string\"],\n            pathIncludes: [\"string\"],\n            prCommentsEnabled: true,\n            previewBranchExcludes: [\"string\"],\n            previewBranchIncludes: [\"string\"],\n            previewDeploymentSetting: \"all\",\n            productionBranch: \"main\",\n            productionDeploymentsEnabled: true,\n            repoId: \"12345678\",\n            repoName: \"my-repo\",\n        },\n        type: \"github\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pages_project = cloudflare.PagesProject(\"example_pages_project\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my-pages-app\",\n    production_branch=\"main\",\n    build_config={\n        \"build_caching\": True,\n        \"build_command\": \"npm run build\",\n        \"destination_dir\": \"build\",\n        \"root_dir\": \"/\",\n        \"web_analytics_tag\": \"cee1c73f6e4743d0b5e6bb1a0bcaabcc\",\n        \"web_analytics_token\": \"021e1057c18547eca7b79f2516f06o7x\",\n    },\n    deployment_configs={\n        \"preview\": {\n            \"ai_bindings\": {\n                \"AI_BINDING\": {\n                    \"project_id\": \"some-project-id\",\n                },\n            },\n            \"always_use_latest_compatibility_date\": False,\n            \"analytics_engine_datasets\": {\n                \"ANALYTICS_ENGINE_BINDING\": {\n                    \"dataset\": \"api_analytics\",\n                },\n            },\n            \"browsers\": {\n                \"BROWSER\": {},\n            },\n            \"build_image_major_version\": 3,\n            \"compatibility_date\": \"2025-01-01\",\n            \"compatibility_flags\": [\"url_standard\"],\n            \"d1_databases\": {\n                \"D1_BINDING\": {\n                    \"id\": \"445e2955-951a-43f8-a35b-a4d0c8138f63\",\n                },\n            },\n            \"durable_object_namespaces\": {\n                \"DO_BINDING\": {\n                    \"namespace_id\": \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            \"env_vars\": {\n                \"foo\": {\n                    \"type\": \"plain_text\",\n                    \"value\": \"hello world\",\n                },\n            },\n            \"fail_open\": True,\n            \"hyperdrive_bindings\": {\n                \"HYPERDRIVE\": {\n                    \"id\": \"a76a99bc342644deb02c38d66082262a\",\n                },\n            },\n            \"kv_namespaces\": {\n                \"KV_BINDING\": {\n                    \"namespace_id\": \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            \"limits\": {\n                \"cpu_ms\": 100,\n            },\n            \"mtls_certificates\": {\n                \"MTLS\": {\n                    \"certificate_id\": \"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\",\n                },\n            },\n            \"placement\": {\n                \"mode\": \"smart\",\n            },\n            \"queue_producers\": {\n                \"QUEUE_PRODUCER_BINDING\": {\n                    \"name\": \"some-queue\",\n                },\n            },\n            \"r2_buckets\": {\n                \"R2_BINDING\": {\n                    \"name\": \"some-bucket\",\n                    \"jurisdiction\": \"eu\",\n                },\n            },\n            \"services\": {\n                \"SERVICE_BINDING\": {\n                    \"service\": \"example-worker\",\n                    \"entrypoint\": \"MyHandler\",\n                    \"environment\": \"production\",\n                },\n            },\n            \"usage_model\": \"standard\",\n            \"vectorize_bindings\": {\n                \"VECTORIZE\": {\n                    \"index_name\": \"my_index\",\n                },\n            },\n            \"wrangler_config_hash\": \"abc123def456\",\n        },\n        \"production\": {\n            \"ai_bindings\": {\n                \"AI_BINDING\": {\n                    \"project_id\": \"some-project-id\",\n                },\n            },\n            \"always_use_latest_compatibility_date\": False,\n            \"analytics_engine_datasets\": {\n                \"ANALYTICS_ENGINE_BINDING\": {\n                    \"dataset\": \"api_analytics\",\n                },\n            },\n            \"browsers\": {\n                \"BROWSER\": {},\n            },\n            \"build_image_major_version\": 3,\n            \"compatibility_date\": \"2025-01-01\",\n            \"compatibility_flags\": [\"url_standard\"],\n            \"d1_databases\": {\n                \"D1_BINDING\": {\n                    \"id\": \"445e2955-951a-43f8-a35b-a4d0c8138f63\",\n                },\n            },\n            \"durable_object_namespaces\": {\n                \"DO_BINDING\": {\n                    \"namespace_id\": \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            \"env_vars\": {\n                \"foo\": {\n                    \"type\": \"plain_text\",\n                    \"value\": \"hello world\",\n                },\n            },\n            \"fail_open\": True,\n            \"hyperdrive_bindings\": {\n                \"HYPERDRIVE\": {\n                    \"id\": \"a76a99bc342644deb02c38d66082262a\",\n                },\n            },\n            \"kv_namespaces\": {\n                \"KV_BINDING\": {\n                    \"namespace_id\": \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                },\n            },\n            \"limits\": {\n                \"cpu_ms\": 100,\n            },\n            \"mtls_certificates\": {\n                \"MTLS\": {\n                    \"certificate_id\": \"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\",\n                },\n            },\n            \"placement\": {\n                \"mode\": \"smart\",\n            },\n            \"queue_producers\": {\n                \"QUEUE_PRODUCER_BINDING\": {\n                    \"name\": \"some-queue\",\n                },\n            },\n            \"r2_buckets\": {\n                \"R2_BINDING\": {\n                    \"name\": \"some-bucket\",\n                    \"jurisdiction\": \"eu\",\n                },\n            },\n            \"services\": {\n                \"SERVICE_BINDING\": {\n                    \"service\": \"example-worker\",\n                    \"entrypoint\": \"MyHandler\",\n                    \"environment\": \"production\",\n                },\n            },\n            \"usage_model\": \"standard\",\n            \"vectorize_bindings\": {\n                \"VECTORIZE\": {\n                    \"index_name\": \"my_index\",\n                },\n            },\n            \"wrangler_config_hash\": \"abc123def456\",\n        },\n    },\n    source={\n        \"config\": {\n            \"deployments_enabled\": True,\n            \"owner\": \"my-org\",\n            \"owner_id\": \"12345678\",\n            \"path_excludes\": [\"string\"],\n            \"path_includes\": [\"string\"],\n            \"pr_comments_enabled\": True,\n            \"preview_branch_excludes\": [\"string\"],\n            \"preview_branch_includes\": [\"string\"],\n            \"preview_deployment_setting\": \"all\",\n            \"production_branch\": \"main\",\n            \"production_deployments_enabled\": True,\n            \"repo_id\": \"12345678\",\n            \"repo_name\": \"my-repo\",\n        },\n        \"type\": \"github\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePagesProject = new Cloudflare.Index.PagesProject(\"example_pages_project\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my-pages-app\",\n        ProductionBranch = \"main\",\n        BuildConfig = new Cloudflare.Inputs.PagesProjectBuildConfigArgs\n        {\n            BuildCaching = true,\n            BuildCommand = \"npm run build\",\n            DestinationDir = \"build\",\n            RootDir = \"/\",\n            WebAnalyticsTag = \"cee1c73f6e4743d0b5e6bb1a0bcaabcc\",\n            WebAnalyticsToken = \"021e1057c18547eca7b79f2516f06o7x\",\n        },\n        DeploymentConfigs = new Cloudflare.Inputs.PagesProjectDeploymentConfigsArgs\n        {\n            Preview = new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewArgs\n            {\n                AiBindings = \n                {\n                    { \"AI_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewAiBindingsArgs\n                    {\n                        ProjectId = \"some-project-id\",\n                    } },\n                },\n                AlwaysUseLatestCompatibilityDate = false,\n                AnalyticsEngineDatasets = \n                {\n                    { \"ANALYTICS_ENGINE_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasetsArgs\n                    {\n                        Dataset = \"api_analytics\",\n                    } },\n                },\n                Browsers = \n                {\n                    { \"BROWSER\", null },\n                },\n                BuildImageMajorVersion = 3,\n                CompatibilityDate = \"2025-01-01\",\n                CompatibilityFlags = new[]\n                {\n                    \"url_standard\",\n                },\n                D1Databases = \n                {\n                    { \"D1_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewD1DatabasesArgs\n                    {\n                        Id = \"445e2955-951a-43f8-a35b-a4d0c8138f63\",\n                    } },\n                },\n                DurableObjectNamespaces = \n                {\n                    { \"DO_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewDurableObjectNamespacesArgs\n                    {\n                        NamespaceId = \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                    } },\n                },\n                EnvVars = \n                {\n                    { \"foo\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewEnvVarsArgs\n                    {\n                        Type = \"plain_text\",\n                        Value = \"hello world\",\n                    } },\n                },\n                FailOpen = true,\n                HyperdriveBindings = \n                {\n                    { \"HYPERDRIVE\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewHyperdriveBindingsArgs\n                    {\n                        Id = \"a76a99bc342644deb02c38d66082262a\",\n                    } },\n                },\n                KvNamespaces = \n                {\n                    { \"KV_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewKvNamespacesArgs\n                    {\n                        NamespaceId = \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                    } },\n                },\n                Limits = new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewLimitsArgs\n                {\n                    CpuMs = 100,\n                },\n                MtlsCertificates = \n                {\n                    { \"MTLS\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewMtlsCertificatesArgs\n                    {\n                        CertificateId = \"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\",\n                    } },\n                },\n                Placement = new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewPlacementArgs\n                {\n                    Mode = \"smart\",\n                },\n                QueueProducers = \n                {\n                    { \"QUEUE_PRODUCER_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewQueueProducersArgs\n                    {\n                        Name = \"some-queue\",\n                    } },\n                },\n                R2Buckets = \n                {\n                    { \"R2_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewR2BucketsArgs\n                    {\n                        Name = \"some-bucket\",\n                        Jurisdiction = \"eu\",\n                    } },\n                },\n                Services = \n                {\n                    { \"SERVICE_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewServicesArgs\n                    {\n                        Service = \"example-worker\",\n                        Entrypoint = \"MyHandler\",\n                        Environment = \"production\",\n                    } },\n                },\n                UsageModel = \"standard\",\n                VectorizeBindings = \n                {\n                    { \"VECTORIZE\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsPreviewVectorizeBindingsArgs\n                    {\n                        IndexName = \"my_index\",\n                    } },\n                },\n                WranglerConfigHash = \"abc123def456\",\n            },\n            Production = new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionArgs\n            {\n                AiBindings = \n                {\n                    { \"AI_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionAiBindingsArgs\n                    {\n                        ProjectId = \"some-project-id\",\n                    } },\n                },\n                AlwaysUseLatestCompatibilityDate = false,\n                AnalyticsEngineDatasets = \n                {\n                    { \"ANALYTICS_ENGINE_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasetsArgs\n                    {\n                        Dataset = \"api_analytics\",\n                    } },\n                },\n                Browsers = \n                {\n                    { \"BROWSER\", null },\n                },\n                BuildImageMajorVersion = 3,\n                CompatibilityDate = \"2025-01-01\",\n                CompatibilityFlags = new[]\n                {\n                    \"url_standard\",\n                },\n                D1Databases = \n                {\n                    { \"D1_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionD1DatabasesArgs\n                    {\n                        Id = \"445e2955-951a-43f8-a35b-a4d0c8138f63\",\n                    } },\n                },\n                DurableObjectNamespaces = \n                {\n                    { \"DO_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionDurableObjectNamespacesArgs\n                    {\n                        NamespaceId = \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                    } },\n                },\n                EnvVars = \n                {\n                    { \"foo\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionEnvVarsArgs\n                    {\n                        Type = \"plain_text\",\n                        Value = \"hello world\",\n                    } },\n                },\n                FailOpen = true,\n                HyperdriveBindings = \n                {\n                    { \"HYPERDRIVE\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionHyperdriveBindingsArgs\n                    {\n                        Id = \"a76a99bc342644deb02c38d66082262a\",\n                    } },\n                },\n                KvNamespaces = \n                {\n                    { \"KV_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionKvNamespacesArgs\n                    {\n                        NamespaceId = \"5eb63bbbe01eeed093cb22bb8f5acdc3\",\n                    } },\n                },\n                Limits = new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionLimitsArgs\n                {\n                    CpuMs = 100,\n                },\n                MtlsCertificates = \n                {\n                    { \"MTLS\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionMtlsCertificatesArgs\n                    {\n                        CertificateId = \"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\",\n                    } },\n                },\n                Placement = new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionPlacementArgs\n                {\n                    Mode = \"smart\",\n                },\n                QueueProducers = \n                {\n                    { \"QUEUE_PRODUCER_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionQueueProducersArgs\n                    {\n                        Name = \"some-queue\",\n                    } },\n                },\n                R2Buckets = \n                {\n                    { \"R2_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionR2BucketsArgs\n                    {\n                        Name = \"some-bucket\",\n                        Jurisdiction = \"eu\",\n                    } },\n                },\n                Services = \n                {\n                    { \"SERVICE_BINDING\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionServicesArgs\n                    {\n                        Service = \"example-worker\",\n                        Entrypoint = \"MyHandler\",\n                        Environment = \"production\",\n                    } },\n                },\n                UsageModel = \"standard\",\n                VectorizeBindings = \n                {\n                    { \"VECTORIZE\", new Cloudflare.Inputs.PagesProjectDeploymentConfigsProductionVectorizeBindingsArgs\n                    {\n                        IndexName = \"my_index\",\n                    } },\n                },\n                WranglerConfigHash = \"abc123def456\",\n            },\n        },\n        Source = new Cloudflare.Inputs.PagesProjectSourceArgs\n        {\n            Config = new Cloudflare.Inputs.PagesProjectSourceConfigArgs\n            {\n                DeploymentsEnabled = true,\n                Owner = \"my-org\",\n                OwnerId = \"12345678\",\n                PathExcludes = new[]\n                {\n                    \"string\",\n                },\n                PathIncludes = new[]\n                {\n                    \"string\",\n                },\n                PrCommentsEnabled = true,\n                PreviewBranchExcludes = new[]\n                {\n                    \"string\",\n                },\n                PreviewBranchIncludes = new[]\n                {\n                    \"string\",\n                },\n                PreviewDeploymentSetting = \"all\",\n                ProductionBranch = \"main\",\n                ProductionDeploymentsEnabled = true,\n                RepoId = \"12345678\",\n                RepoName = \"my-repo\",\n            },\n            Type = \"github\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewPagesProject(ctx, \"example_pages_project\", \u0026cloudflare.PagesProjectArgs{\n\t\t\tAccountId:        pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:             pulumi.String(\"my-pages-app\"),\n\t\t\tProductionBranch: pulumi.String(\"main\"),\n\t\t\tBuildConfig: \u0026cloudflare.PagesProjectBuildConfigArgs{\n\t\t\t\tBuildCaching:      pulumi.Bool(true),\n\t\t\t\tBuildCommand:      pulumi.String(\"npm run build\"),\n\t\t\t\tDestinationDir:    pulumi.String(\"build\"),\n\t\t\t\tRootDir:           pulumi.String(\"/\"),\n\t\t\t\tWebAnalyticsTag:   pulumi.String(\"cee1c73f6e4743d0b5e6bb1a0bcaabcc\"),\n\t\t\t\tWebAnalyticsToken: pulumi.String(\"021e1057c18547eca7b79f2516f06o7x\"),\n\t\t\t},\n\t\t\tDeploymentConfigs: \u0026cloudflare.PagesProjectDeploymentConfigsArgs{\n\t\t\t\tPreview: \u0026cloudflare.PagesProjectDeploymentConfigsPreviewArgs{\n\t\t\t\t\tAiBindings: cloudflare.PagesProjectDeploymentConfigsPreviewAiBindingsMap{\n\t\t\t\t\t\t\"AI_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewAiBindingsArgs{\n\t\t\t\t\t\t\tProjectId: pulumi.String(\"some-project-id\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tAlwaysUseLatestCompatibilityDate: pulumi.Bool(false),\n\t\t\t\t\tAnalyticsEngineDatasets: cloudflare.PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasetsMap{\n\t\t\t\t\t\t\"ANALYTICS_ENGINE_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasetsArgs{\n\t\t\t\t\t\t\tDataset: pulumi.String(\"api_analytics\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBrowsers: cloudflare.PagesProjectDeploymentConfigsPreviewBrowsersMap{\n\t\t\t\t\t\t\"BROWSER\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewBrowsersArgs{},\n\t\t\t\t\t},\n\t\t\t\t\tBuildImageMajorVersion: pulumi.Int(3),\n\t\t\t\t\tCompatibilityDate:      pulumi.String(\"2025-01-01\"),\n\t\t\t\t\tCompatibilityFlags: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"url_standard\"),\n\t\t\t\t\t},\n\t\t\t\t\tD1Databases: cloudflare.PagesProjectDeploymentConfigsPreviewD1DatabasesMap{\n\t\t\t\t\t\t\"D1_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewD1DatabasesArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"445e2955-951a-43f8-a35b-a4d0c8138f63\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDurableObjectNamespaces: cloudflare.PagesProjectDeploymentConfigsPreviewDurableObjectNamespacesMap{\n\t\t\t\t\t\t\"DO_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewDurableObjectNamespacesArgs{\n\t\t\t\t\t\t\tNamespaceId: pulumi.String(\"5eb63bbbe01eeed093cb22bb8f5acdc3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tEnvVars: cloudflare.PagesProjectDeploymentConfigsPreviewEnvVarsMap{\n\t\t\t\t\t\t\"foo\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewEnvVarsArgs{\n\t\t\t\t\t\t\tType:  pulumi.String(\"plain_text\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"hello world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tFailOpen: pulumi.Bool(true),\n\t\t\t\t\tHyperdriveBindings: cloudflare.PagesProjectDeploymentConfigsPreviewHyperdriveBindingsMap{\n\t\t\t\t\t\t\"HYPERDRIVE\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewHyperdriveBindingsArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"a76a99bc342644deb02c38d66082262a\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tKvNamespaces: cloudflare.PagesProjectDeploymentConfigsPreviewKvNamespacesMap{\n\t\t\t\t\t\t\"KV_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewKvNamespacesArgs{\n\t\t\t\t\t\t\tNamespaceId: pulumi.String(\"5eb63bbbe01eeed093cb22bb8f5acdc3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tLimits: \u0026cloudflare.PagesProjectDeploymentConfigsPreviewLimitsArgs{\n\t\t\t\t\t\tCpuMs: pulumi.Int(100),\n\t\t\t\t\t},\n\t\t\t\t\tMtlsCertificates: cloudflare.PagesProjectDeploymentConfigsPreviewMtlsCertificatesMap{\n\t\t\t\t\t\t\"MTLS\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewMtlsCertificatesArgs{\n\t\t\t\t\t\t\tCertificateId: pulumi.String(\"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tPlacement: \u0026cloudflare.PagesProjectDeploymentConfigsPreviewPlacementArgs{\n\t\t\t\t\t\tMode: pulumi.String(\"smart\"),\n\t\t\t\t\t},\n\t\t\t\t\tQueueProducers: cloudflare.PagesProjectDeploymentConfigsPreviewQueueProducersMap{\n\t\t\t\t\t\t\"QUEUE_PRODUCER_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewQueueProducersArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"some-queue\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tR2Buckets: cloudflare.PagesProjectDeploymentConfigsPreviewR2BucketsMap{\n\t\t\t\t\t\t\"R2_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewR2BucketsArgs{\n\t\t\t\t\t\t\tName:         pulumi.String(\"some-bucket\"),\n\t\t\t\t\t\t\tJurisdiction: pulumi.String(\"eu\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tServices: cloudflare.PagesProjectDeploymentConfigsPreviewServicesMap{\n\t\t\t\t\t\t\"SERVICE_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewServicesArgs{\n\t\t\t\t\t\t\tService:     pulumi.String(\"example-worker\"),\n\t\t\t\t\t\t\tEntrypoint:  pulumi.String(\"MyHandler\"),\n\t\t\t\t\t\t\tEnvironment: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUsageModel: pulumi.String(\"standard\"),\n\t\t\t\t\tVectorizeBindings: cloudflare.PagesProjectDeploymentConfigsPreviewVectorizeBindingsMap{\n\t\t\t\t\t\t\"VECTORIZE\": \u0026cloudflare.PagesProjectDeploymentConfigsPreviewVectorizeBindingsArgs{\n\t\t\t\t\t\t\tIndexName: pulumi.String(\"my_index\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tWranglerConfigHash: pulumi.String(\"abc123def456\"),\n\t\t\t\t},\n\t\t\t\tProduction: \u0026cloudflare.PagesProjectDeploymentConfigsProductionArgs{\n\t\t\t\t\tAiBindings: cloudflare.PagesProjectDeploymentConfigsProductionAiBindingsMap{\n\t\t\t\t\t\t\"AI_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionAiBindingsArgs{\n\t\t\t\t\t\t\tProjectId: pulumi.String(\"some-project-id\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tAlwaysUseLatestCompatibilityDate: pulumi.Bool(false),\n\t\t\t\t\tAnalyticsEngineDatasets: cloudflare.PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasetsMap{\n\t\t\t\t\t\t\"ANALYTICS_ENGINE_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasetsArgs{\n\t\t\t\t\t\t\tDataset: pulumi.String(\"api_analytics\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBrowsers: cloudflare.PagesProjectDeploymentConfigsProductionBrowsersMap{\n\t\t\t\t\t\t\"BROWSER\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionBrowsersArgs{},\n\t\t\t\t\t},\n\t\t\t\t\tBuildImageMajorVersion: pulumi.Int(3),\n\t\t\t\t\tCompatibilityDate:      pulumi.String(\"2025-01-01\"),\n\t\t\t\t\tCompatibilityFlags: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"url_standard\"),\n\t\t\t\t\t},\n\t\t\t\t\tD1Databases: cloudflare.PagesProjectDeploymentConfigsProductionD1DatabasesMap{\n\t\t\t\t\t\t\"D1_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionD1DatabasesArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"445e2955-951a-43f8-a35b-a4d0c8138f63\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDurableObjectNamespaces: cloudflare.PagesProjectDeploymentConfigsProductionDurableObjectNamespacesMap{\n\t\t\t\t\t\t\"DO_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionDurableObjectNamespacesArgs{\n\t\t\t\t\t\t\tNamespaceId: pulumi.String(\"5eb63bbbe01eeed093cb22bb8f5acdc3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tEnvVars: cloudflare.PagesProjectDeploymentConfigsProductionEnvVarsMap{\n\t\t\t\t\t\t\"foo\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionEnvVarsArgs{\n\t\t\t\t\t\t\tType:  pulumi.String(\"plain_text\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"hello world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tFailOpen: pulumi.Bool(true),\n\t\t\t\t\tHyperdriveBindings: cloudflare.PagesProjectDeploymentConfigsProductionHyperdriveBindingsMap{\n\t\t\t\t\t\t\"HYPERDRIVE\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionHyperdriveBindingsArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"a76a99bc342644deb02c38d66082262a\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tKvNamespaces: cloudflare.PagesProjectDeploymentConfigsProductionKvNamespacesMap{\n\t\t\t\t\t\t\"KV_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionKvNamespacesArgs{\n\t\t\t\t\t\t\tNamespaceId: pulumi.String(\"5eb63bbbe01eeed093cb22bb8f5acdc3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tLimits: \u0026cloudflare.PagesProjectDeploymentConfigsProductionLimitsArgs{\n\t\t\t\t\t\tCpuMs: pulumi.Int(100),\n\t\t\t\t\t},\n\t\t\t\t\tMtlsCertificates: cloudflare.PagesProjectDeploymentConfigsProductionMtlsCertificatesMap{\n\t\t\t\t\t\t\"MTLS\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionMtlsCertificatesArgs{\n\t\t\t\t\t\t\tCertificateId: pulumi.String(\"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tPlacement: \u0026cloudflare.PagesProjectDeploymentConfigsProductionPlacementArgs{\n\t\t\t\t\t\tMode: pulumi.String(\"smart\"),\n\t\t\t\t\t},\n\t\t\t\t\tQueueProducers: cloudflare.PagesProjectDeploymentConfigsProductionQueueProducersMap{\n\t\t\t\t\t\t\"QUEUE_PRODUCER_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionQueueProducersArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"some-queue\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tR2Buckets: cloudflare.PagesProjectDeploymentConfigsProductionR2BucketsMap{\n\t\t\t\t\t\t\"R2_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionR2BucketsArgs{\n\t\t\t\t\t\t\tName:         pulumi.String(\"some-bucket\"),\n\t\t\t\t\t\t\tJurisdiction: pulumi.String(\"eu\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tServices: cloudflare.PagesProjectDeploymentConfigsProductionServicesMap{\n\t\t\t\t\t\t\"SERVICE_BINDING\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionServicesArgs{\n\t\t\t\t\t\t\tService:     pulumi.String(\"example-worker\"),\n\t\t\t\t\t\t\tEntrypoint:  pulumi.String(\"MyHandler\"),\n\t\t\t\t\t\t\tEnvironment: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUsageModel: pulumi.String(\"standard\"),\n\t\t\t\t\tVectorizeBindings: cloudflare.PagesProjectDeploymentConfigsProductionVectorizeBindingsMap{\n\t\t\t\t\t\t\"VECTORIZE\": \u0026cloudflare.PagesProjectDeploymentConfigsProductionVectorizeBindingsArgs{\n\t\t\t\t\t\t\tIndexName: pulumi.String(\"my_index\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tWranglerConfigHash: pulumi.String(\"abc123def456\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSource: \u0026cloudflare.PagesProjectSourceArgs{\n\t\t\t\tConfig: \u0026cloudflare.PagesProjectSourceConfigArgs{\n\t\t\t\t\tDeploymentsEnabled: pulumi.Bool(true),\n\t\t\t\t\tOwner:              pulumi.String(\"my-org\"),\n\t\t\t\t\tOwnerId:            pulumi.String(\"12345678\"),\n\t\t\t\t\tPathExcludes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tPathIncludes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrCommentsEnabled: pulumi.Bool(true),\n\t\t\t\t\tPreviewBranchExcludes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tPreviewBranchIncludes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tPreviewDeploymentSetting:     pulumi.String(\"all\"),\n\t\t\t\t\tProductionBranch:             pulumi.String(\"main\"),\n\t\t\t\t\tProductionDeploymentsEnabled: pulumi.Bool(true),\n\t\t\t\t\tRepoId:                       pulumi.String(\"12345678\"),\n\t\t\t\t\tRepoName:                     pulumi.String(\"my-repo\"),\n\t\t\t\t},\n\t\t\t\tType: pulumi.String(\"github\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.PagesProject;\nimport com.pulumi.cloudflare.PagesProjectArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectBuildConfigArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsPreviewArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsPreviewLimitsArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsPreviewPlacementArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsProductionArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsProductionLimitsArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectDeploymentConfigsProductionPlacementArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectSourceArgs;\nimport com.pulumi.cloudflare.inputs.PagesProjectSourceConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var examplePagesProject = new PagesProject(\"examplePagesProject\", PagesProjectArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my-pages-app\")\n            .productionBranch(\"main\")\n            .buildConfig(PagesProjectBuildConfigArgs.builder()\n                .buildCaching(true)\n                .buildCommand(\"npm run build\")\n                .destinationDir(\"build\")\n                .rootDir(\"/\")\n                .webAnalyticsTag(\"cee1c73f6e4743d0b5e6bb1a0bcaabcc\")\n                .webAnalyticsToken(\"021e1057c18547eca7b79f2516f06o7x\")\n                .build())\n            .deploymentConfigs(PagesProjectDeploymentConfigsArgs.builder()\n                .preview(PagesProjectDeploymentConfigsPreviewArgs.builder()\n                    .aiBindings(Map.of(\"AI_BINDING\", PagesProjectDeploymentConfigsPreviewAiBindingsArgs.builder()\n                        .projectId(\"some-project-id\")\n                        .build()))\n                    .alwaysUseLatestCompatibilityDate(false)\n                    .analyticsEngineDatasets(Map.of(\"ANALYTICS_ENGINE_BINDING\", PagesProjectDeploymentConfigsPreviewAnalyticsEngineDatasetsArgs.builder()\n                        .dataset(\"api_analytics\")\n                        .build()))\n                    .browsers(Map.of(\"BROWSER\", PagesProjectDeploymentConfigsPreviewBrowsersArgs.builder()\n                        .build()))\n                    .buildImageMajorVersion(3)\n                    .compatibilityDate(\"2025-01-01\")\n                    .compatibilityFlags(\"url_standard\")\n                    .d1Databases(Map.of(\"D1_BINDING\", PagesProjectDeploymentConfigsPreviewD1DatabasesArgs.builder()\n                        .id(\"445e2955-951a-43f8-a35b-a4d0c8138f63\")\n                        .build()))\n                    .durableObjectNamespaces(Map.of(\"DO_BINDING\", PagesProjectDeploymentConfigsPreviewDurableObjectNamespacesArgs.builder()\n                        .namespaceId(\"5eb63bbbe01eeed093cb22bb8f5acdc3\")\n                        .build()))\n                    .envVars(Map.of(\"foo\", PagesProjectDeploymentConfigsPreviewEnvVarsArgs.builder()\n                        .type(\"plain_text\")\n                        .value(\"hello world\")\n                        .build()))\n                    .failOpen(true)\n                    .hyperdriveBindings(Map.of(\"HYPERDRIVE\", PagesProjectDeploymentConfigsPreviewHyperdriveBindingsArgs.builder()\n                        .id(\"a76a99bc342644deb02c38d66082262a\")\n                        .build()))\n                    .kvNamespaces(Map.of(\"KV_BINDING\", PagesProjectDeploymentConfigsPreviewKvNamespacesArgs.builder()\n                        .namespaceId(\"5eb63bbbe01eeed093cb22bb8f5acdc3\")\n                        .build()))\n                    .limits(PagesProjectDeploymentConfigsPreviewLimitsArgs.builder()\n                        .cpuMs(100)\n                        .build())\n                    .mtlsCertificates(Map.of(\"MTLS\", PagesProjectDeploymentConfigsPreviewMtlsCertificatesArgs.builder()\n                        .certificateId(\"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\")\n                        .build()))\n                    .placement(PagesProjectDeploymentConfigsPreviewPlacementArgs.builder()\n                        .mode(\"smart\")\n                        .build())\n                    .queueProducers(Map.of(\"QUEUE_PRODUCER_BINDING\", PagesProjectDeploymentConfigsPreviewQueueProducersArgs.builder()\n                        .name(\"some-queue\")\n                        .build()))\n                    .r2Buckets(Map.of(\"R2_BINDING\", PagesProjectDeploymentConfigsPreviewR2BucketsArgs.builder()\n                        .name(\"some-bucket\")\n                        .jurisdiction(\"eu\")\n                        .build()))\n                    .services(Map.of(\"SERVICE_BINDING\", PagesProjectDeploymentConfigsPreviewServicesArgs.builder()\n                        .service(\"example-worker\")\n                        .entrypoint(\"MyHandler\")\n                        .environment(\"production\")\n                        .build()))\n                    .usageModel(\"standard\")\n                    .vectorizeBindings(Map.of(\"VECTORIZE\", PagesProjectDeploymentConfigsPreviewVectorizeBindingsArgs.builder()\n                        .indexName(\"my_index\")\n                        .build()))\n                    .wranglerConfigHash(\"abc123def456\")\n                    .build())\n                .production(PagesProjectDeploymentConfigsProductionArgs.builder()\n                    .aiBindings(Map.of(\"AI_BINDING\", PagesProjectDeploymentConfigsProductionAiBindingsArgs.builder()\n                        .projectId(\"some-project-id\")\n                        .build()))\n                    .alwaysUseLatestCompatibilityDate(false)\n                    .analyticsEngineDatasets(Map.of(\"ANALYTICS_ENGINE_BINDING\", PagesProjectDeploymentConfigsProductionAnalyticsEngineDatasetsArgs.builder()\n                        .dataset(\"api_analytics\")\n                        .build()))\n                    .browsers(Map.of(\"BROWSER\", PagesProjectDeploymentConfigsProductionBrowsersArgs.builder()\n                        .build()))\n                    .buildImageMajorVersion(3)\n                    .compatibilityDate(\"2025-01-01\")\n                    .compatibilityFlags(\"url_standard\")\n                    .d1Databases(Map.of(\"D1_BINDING\", PagesProjectDeploymentConfigsProductionD1DatabasesArgs.builder()\n                        .id(\"445e2955-951a-43f8-a35b-a4d0c8138f63\")\n                        .build()))\n                    .durableObjectNamespaces(Map.of(\"DO_BINDING\", PagesProjectDeploymentConfigsProductionDurableObjectNamespacesArgs.builder()\n                        .namespaceId(\"5eb63bbbe01eeed093cb22bb8f5acdc3\")\n                        .build()))\n                    .envVars(Map.of(\"foo\", PagesProjectDeploymentConfigsProductionEnvVarsArgs.builder()\n                        .type(\"plain_text\")\n                        .value(\"hello world\")\n                        .build()))\n                    .failOpen(true)\n                    .hyperdriveBindings(Map.of(\"HYPERDRIVE\", PagesProjectDeploymentConfigsProductionHyperdriveBindingsArgs.builder()\n                        .id(\"a76a99bc342644deb02c38d66082262a\")\n                        .build()))\n                    .kvNamespaces(Map.of(\"KV_BINDING\", PagesProjectDeploymentConfigsProductionKvNamespacesArgs.builder()\n                        .namespaceId(\"5eb63bbbe01eeed093cb22bb8f5acdc3\")\n                        .build()))\n                    .limits(PagesProjectDeploymentConfigsProductionLimitsArgs.builder()\n                        .cpuMs(100)\n                        .build())\n                    .mtlsCertificates(Map.of(\"MTLS\", PagesProjectDeploymentConfigsProductionMtlsCertificatesArgs.builder()\n                        .certificateId(\"d7cdd17c-916f-4cb7-aabe-585eb382ec4e\")\n                        .build()))\n                    .placement(PagesProjectDeploymentConfigsProductionPlacementArgs.builder()\n                        .mode(\"smart\")\n                        .build())\n                    .queueProducers(Map.of(\"QUEUE_PRODUCER_BINDING\", PagesProjectDeploymentConfigsProductionQueueProducersArgs.builder()\n                        .name(\"some-queue\")\n                        .build()))\n                    .r2Buckets(Map.of(\"R2_BINDING\", PagesProjectDeploymentConfigsProductionR2BucketsArgs.builder()\n                        .name(\"some-bucket\")\n                        .jurisdiction(\"eu\")\n                        .build()))\n                    .services(Map.of(\"SERVICE_BINDING\", PagesProjectDeploymentConfigsProductionServicesArgs.builder()\n                        .service(\"example-worker\")\n                        .entrypoint(\"MyHandler\")\n                        .environment(\"production\")\n                        .build()))\n                    .usageModel(\"standard\")\n                    .vectorizeBindings(Map.of(\"VECTORIZE\", PagesProjectDeploymentConfigsProductionVectorizeBindingsArgs.builder()\n                        .indexName(\"my_index\")\n                        .build()))\n                    .wranglerConfigHash(\"abc123def456\")\n                    .build())\n                .build())\n            .source(PagesProjectSourceArgs.builder()\n                .config(PagesProjectSourceConfigArgs.builder()\n                    .deploymentsEnabled(true)\n                    .owner(\"my-org\")\n                    .ownerId(\"12345678\")\n                    .pathExcludes(\"string\")\n                    .pathIncludes(\"string\")\n                    .prCommentsEnabled(true)\n                    .previewBranchExcludes(\"string\")\n                    .previewBranchIncludes(\"string\")\n                    .previewDeploymentSetting(\"all\")\n                    .productionBranch(\"main\")\n                    .productionDeploymentsEnabled(true)\n                    .repoId(\"12345678\")\n                    .repoName(\"my-repo\")\n                    .build())\n                .type(\"github\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  examplePagesProject:\n    type: cloudflare:PagesProject\n    name: example_pages_project\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my-pages-app\n      productionBranch: main\n      buildConfig:\n        buildCaching: true\n        buildCommand: npm run build\n        destinationDir: build\n        rootDir: /\n        webAnalyticsTag: cee1c73f6e4743d0b5e6bb1a0bcaabcc\n        webAnalyticsToken: 021e1057c18547eca7b79f2516f06o7x\n      deploymentConfigs:\n        preview:\n          aiBindings:\n            AI_BINDING:\n              projectId: some-project-id\n          alwaysUseLatestCompatibilityDate: false\n          analyticsEngineDatasets:\n            ANALYTICS_ENGINE_BINDING:\n              dataset: api_analytics\n          browsers:\n            BROWSER: {}\n          buildImageMajorVersion: 3\n          compatibilityDate: 2025-01-01\n          compatibilityFlags:\n            - url_standard\n          d1Databases:\n            D1_BINDING:\n              id: 445e2955-951a-43f8-a35b-a4d0c8138f63\n          durableObjectNamespaces:\n            DO_BINDING:\n              namespaceId: 5eb63bbbe01eeed093cb22bb8f5acdc3\n          envVars:\n            foo:\n              type: plain_text\n              value: hello world\n          failOpen: true\n          hyperdriveBindings:\n            HYPERDRIVE:\n              id: a76a99bc342644deb02c38d66082262a\n          kvNamespaces:\n            KV_BINDING:\n              namespaceId: 5eb63bbbe01eeed093cb22bb8f5acdc3\n          limits:\n            cpuMs: 100\n          mtlsCertificates:\n            MTLS:\n              certificateId: d7cdd17c-916f-4cb7-aabe-585eb382ec4e\n          placement:\n            mode: smart\n          queueProducers:\n            QUEUE_PRODUCER_BINDING:\n              name: some-queue\n          r2Buckets:\n            R2_BINDING:\n              name: some-bucket\n              jurisdiction: eu\n          services:\n            SERVICE_BINDING:\n              service: example-worker\n              entrypoint: MyHandler\n              environment: production\n          usageModel: standard\n          vectorizeBindings:\n            VECTORIZE:\n              indexName: my_index\n          wranglerConfigHash: abc123def456\n        production:\n          aiBindings:\n            AI_BINDING:\n              projectId: some-project-id\n          alwaysUseLatestCompatibilityDate: false\n          analyticsEngineDatasets:\n            ANALYTICS_ENGINE_BINDING:\n              dataset: api_analytics\n          browsers:\n            BROWSER: {}\n          buildImageMajorVersion: 3\n          compatibilityDate: 2025-01-01\n          compatibilityFlags:\n            - url_standard\n          d1Databases:\n            D1_BINDING:\n              id: 445e2955-951a-43f8-a35b-a4d0c8138f63\n          durableObjectNamespaces:\n            DO_BINDING:\n              namespaceId: 5eb63bbbe01eeed093cb22bb8f5acdc3\n          envVars:\n            foo:\n              type: plain_text\n              value: hello world\n          failOpen: true\n          hyperdriveBindings:\n            HYPERDRIVE:\n              id: a76a99bc342644deb02c38d66082262a\n          kvNamespaces:\n            KV_BINDING:\n              namespaceId: 5eb63bbbe01eeed093cb22bb8f5acdc3\n          limits:\n            cpuMs: 100\n          mtlsCertificates:\n            MTLS:\n              certificateId: d7cdd17c-916f-4cb7-aabe-585eb382ec4e\n          placement:\n            mode: smart\n          queueProducers:\n            QUEUE_PRODUCER_BINDING:\n              name: some-queue\n          r2Buckets:\n            R2_BINDING:\n              name: some-bucket\n              jurisdiction: eu\n          services:\n            SERVICE_BINDING:\n              service: example-worker\n              entrypoint: MyHandler\n              environment: production\n          usageModel: standard\n          vectorizeBindings:\n            VECTORIZE:\n              indexName: my_index\n          wranglerConfigHash: abc123def456\n      source:\n        config:\n          deploymentsEnabled: true\n          owner: my-org\n          ownerId: '12345678'\n          pathExcludes:\n            - string\n          pathIncludes:\n            - string\n          prCommentsEnabled: true\n          previewBranchExcludes:\n            - string\n          previewBranchIncludes:\n            - string\n          previewDeploymentSetting: all\n          productionBranch: main\n          productionDeploymentsEnabled: true\n          repoId: '12345678'\n          repoName: my-repo\n        type: github\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n!\u003e It is not possible to import a pages project with secret environment variables. If you have a secret environment variable, you must remove it from your project before importing it.\n\n\n```sh\n$ pulumi import cloudflare:index/pagesProject:PagesProject example '\u003caccount_id\u003e/\u003cproject_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/PagesProjectBuildConfig:PagesProjectBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "canonicalDeployment": {
                    "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeployment:PagesProjectCanonicalDeployment",
                    "description": "Most recent production deployment of the project.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the project was created.\n"
                },
                "deploymentConfigs": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigs:PagesProjectDeploymentConfigs",
                    "description": "Configs for deployments in a project.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of associated custom domains for the project.\n"
                },
                "framework": {
                    "type": "string",
                    "description": "Framework the project is using.\n"
                },
                "frameworkVersion": {
                    "type": "string",
                    "description": "Version of the framework the project is using.\n"
                },
                "latestDeployment": {
                    "$ref": "#/types/cloudflare:index/PagesProjectLatestDeployment:PagesProjectLatestDeployment",
                    "description": "Most recent deployment of the project.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "previewScriptName": {
                    "type": "string",
                    "description": "Name of the preview script.\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "Production branch of the project. Used to identify production deployments.\n"
                },
                "productionScriptName": {
                    "type": "string",
                    "description": "Name of the production script.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/PagesProjectSource:PagesProjectSource",
                    "description": "Configs for the project source control.\n"
                },
                "subdomain": {
                    "type": "string",
                    "description": "The Cloudflare subdomain associated with the project.\n"
                },
                "usesFunctions": {
                    "type": "boolean",
                    "description": "Whether the project uses functions.\n"
                }
            },
            "required": [
                "buildConfig",
                "canonicalDeployment",
                "createdOn",
                "deploymentConfigs",
                "domains",
                "framework",
                "frameworkVersion",
                "latestDeployment",
                "name",
                "previewScriptName",
                "productionBranch",
                "productionScriptName",
                "subdomain",
                "usesFunctions"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "buildConfig": {
                    "$ref": "#/types/cloudflare:index/PagesProjectBuildConfig:PagesProjectBuildConfig",
                    "description": "Configs for the project build process.\n"
                },
                "deploymentConfigs": {
                    "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigs:PagesProjectDeploymentConfigs",
                    "description": "Configs for deployments in a project.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the project.\n"
                },
                "productionBranch": {
                    "type": "string",
                    "description": "Production branch of the project. Used to identify production deployments.\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/PagesProjectSource:PagesProjectSource",
                    "description": "Configs for the project source control.\n"
                }
            },
            "requiredInputs": [
                "name",
                "productionBranch"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering PagesProject resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "buildConfig": {
                        "$ref": "#/types/cloudflare:index/PagesProjectBuildConfig:PagesProjectBuildConfig",
                        "description": "Configs for the project build process.\n"
                    },
                    "canonicalDeployment": {
                        "$ref": "#/types/cloudflare:index/PagesProjectCanonicalDeployment:PagesProjectCanonicalDeployment",
                        "description": "Most recent production deployment of the project.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the project was created.\n"
                    },
                    "deploymentConfigs": {
                        "$ref": "#/types/cloudflare:index/PagesProjectDeploymentConfigs:PagesProjectDeploymentConfigs",
                        "description": "Configs for deployments in a project.\n"
                    },
                    "domains": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of associated custom domains for the project.\n"
                    },
                    "framework": {
                        "type": "string",
                        "description": "Framework the project is using.\n"
                    },
                    "frameworkVersion": {
                        "type": "string",
                        "description": "Version of the framework the project is using.\n"
                    },
                    "latestDeployment": {
                        "$ref": "#/types/cloudflare:index/PagesProjectLatestDeployment:PagesProjectLatestDeployment",
                        "description": "Most recent deployment of the project.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the project.\n"
                    },
                    "previewScriptName": {
                        "type": "string",
                        "description": "Name of the preview script.\n"
                    },
                    "productionBranch": {
                        "type": "string",
                        "description": "Production branch of the project. Used to identify production deployments.\n"
                    },
                    "productionScriptName": {
                        "type": "string",
                        "description": "Name of the production script.\n"
                    },
                    "source": {
                        "$ref": "#/types/cloudflare:index/PagesProjectSource:PagesProjectSource",
                        "description": "Configs for the project source control.\n"
                    },
                    "subdomain": {
                        "type": "string",
                        "description": "The Cloudflare subdomain associated with the project.\n"
                    },
                    "usesFunctions": {
                        "type": "boolean",
                        "description": "Whether the project uses functions.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pipeline:Pipeline": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipeline = new cloudflare.Pipeline(\"example_pipeline\", {\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my_pipeline\",\n    sql: \"insert into sink select * from source;\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline = cloudflare.Pipeline(\"example_pipeline\",\n    account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my_pipeline\",\n    sql=\"insert into sink select * from source;\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipeline = new Cloudflare.Index.Pipeline(\"example_pipeline\", new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my_pipeline\",\n        Sql = \"insert into sink select * from source;\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewPipeline(ctx, \"example_pipeline\", \u0026cloudflare.PipelineArgs{\n\t\t\tAccountId: pulumi.String(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my_pipeline\"),\n\t\t\tSql:       pulumi.String(\"insert into sink select * from source;\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Pipeline;\nimport com.pulumi.cloudflare.PipelineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var examplePipeline = new Pipeline(\"examplePipeline\", PipelineArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my_pipeline\")\n            .sql(\"insert into sink select * from source;\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  examplePipeline:\n    type: cloudflare:Pipeline\n    name: example_pipeline\n    properties:\n      accountId: 0123105f4ecef8ad9ca31a8372d0c353\n      name: my_pipeline\n      sql: insert into sink select * from source;\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/pipeline:Pipeline example '\u003caccount_id\u003e/\u003cpipeline_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Specifies the public ID of the account.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "failureReason": {
                    "type": "string",
                    "description": "Indicates the reason for the failure of the Pipeline.\n"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Specifies the name of the Pipeline.\n"
                },
                "sql": {
                    "type": "string",
                    "description": "Specifies SQL for the Pipeline processing flow.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Indicates the current status of the Pipeline.\n"
                },
                "tables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/PipelineTable:PipelineTable"
                    },
                    "description": "List of streams and sinks used by this pipeline.\n"
                }
            },
            "required": [
                "createdAt",
                "failureReason",
                "modifiedAt",
                "name",
                "sql",
                "status",
                "tables"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Specifies the public ID of the account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specifies the name of the Pipeline.\n"
                },
                "sql": {
                    "type": "string",
                    "description": "Specifies SQL for the Pipeline processing flow.\n"
                }
            },
            "requiredInputs": [
                "name",
                "sql"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Pipeline resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "failureReason": {
                        "type": "string",
                        "description": "Indicates the reason for the failure of the Pipeline.\n"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specifies the name of the Pipeline.\n"
                    },
                    "sql": {
                        "type": "string",
                        "description": "Specifies SQL for the Pipeline processing flow.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Indicates the current status of the Pipeline.\n"
                    },
                    "tables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/PipelineTable:PipelineTable"
                        },
                        "description": "List of streams and sinks used by this pipeline.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pipelineSink:PipelineSink": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipelineSink = new cloudflare.PipelineSink(\"example_pipeline_sink\", {\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my_sink\",\n    type: \"r2\",\n    config: {\n        accountId: \"account_id\",\n        bucket: \"bucket\",\n        credentials: {\n            accessKeyId: \"access_key_id\",\n            secretAccessKey: \"secret_access_key\",\n        },\n        fileNaming: {\n            prefix: \"prefix\",\n            strategy: \"serial\",\n            suffix: \"suffix\",\n        },\n        jurisdiction: \"jurisdiction\",\n        partitioning: {\n            timePattern: \"year=%Y/month=%m/day=%d/hour=%H\",\n        },\n        path: \"path\",\n        rollingPolicy: {\n            fileSizeBytes: 0,\n            inactivitySeconds: 1,\n            intervalSeconds: 1,\n        },\n    },\n    format: {\n        type: \"json\",\n        decimalEncoding: \"number\",\n        timestampFormat: \"rfc3339\",\n        unstructured: true,\n    },\n    schema: {\n        fields: [{\n            type: \"int32\",\n            metadataKey: \"metadata_key\",\n            name: \"name\",\n            required: true,\n            sqlName: \"sql_name\",\n        }],\n        format: {\n            type: \"json\",\n            decimalEncoding: \"number\",\n            timestampFormat: \"rfc3339\",\n            unstructured: true,\n        },\n        inferred: true,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline_sink = cloudflare.PipelineSink(\"example_pipeline_sink\",\n    account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my_sink\",\n    type=\"r2\",\n    config={\n        \"account_id\": \"account_id\",\n        \"bucket\": \"bucket\",\n        \"credentials\": {\n            \"access_key_id\": \"access_key_id\",\n            \"secret_access_key\": \"secret_access_key\",\n        },\n        \"file_naming\": {\n            \"prefix\": \"prefix\",\n            \"strategy\": \"serial\",\n            \"suffix\": \"suffix\",\n        },\n        \"jurisdiction\": \"jurisdiction\",\n        \"partitioning\": {\n            \"time_pattern\": \"year=%Y/month=%m/day=%d/hour=%H\",\n        },\n        \"path\": \"path\",\n        \"rolling_policy\": {\n            \"file_size_bytes\": 0,\n            \"inactivity_seconds\": 1,\n            \"interval_seconds\": 1,\n        },\n    },\n    format={\n        \"type\": \"json\",\n        \"decimal_encoding\": \"number\",\n        \"timestamp_format\": \"rfc3339\",\n        \"unstructured\": True,\n    },\n    schema={\n        \"fields\": [{\n            \"type\": \"int32\",\n            \"metadata_key\": \"metadata_key\",\n            \"name\": \"name\",\n            \"required\": True,\n            \"sql_name\": \"sql_name\",\n        }],\n        \"format\": {\n            \"type\": \"json\",\n            \"decimal_encoding\": \"number\",\n            \"timestamp_format\": \"rfc3339\",\n            \"unstructured\": True,\n        },\n        \"inferred\": True,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipelineSink = new Cloudflare.Index.PipelineSink(\"example_pipeline_sink\", new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my_sink\",\n        Type = \"r2\",\n        Config = new Cloudflare.Inputs.PipelineSinkConfigArgs\n        {\n            AccountId = \"account_id\",\n            Bucket = \"bucket\",\n            Credentials = new Cloudflare.Inputs.PipelineSinkConfigCredentialsArgs\n            {\n                AccessKeyId = \"access_key_id\",\n                SecretAccessKey = \"secret_access_key\",\n            },\n            FileNaming = new Cloudflare.Inputs.PipelineSinkConfigFileNamingArgs\n            {\n                Prefix = \"prefix\",\n                Strategy = \"serial\",\n                Suffix = \"suffix\",\n            },\n            Jurisdiction = \"jurisdiction\",\n            Partitioning = new Cloudflare.Inputs.PipelineSinkConfigPartitioningArgs\n            {\n                TimePattern = \"year=%Y/month=%m/day=%d/hour=%H\",\n            },\n            Path = \"path\",\n            RollingPolicy = new Cloudflare.Inputs.PipelineSinkConfigRollingPolicyArgs\n            {\n                FileSizeBytes = 0,\n                InactivitySeconds = 1,\n                IntervalSeconds = 1,\n            },\n        },\n        Format = new Cloudflare.Inputs.PipelineSinkFormatArgs\n        {\n            Type = \"json\",\n            DecimalEncoding = \"number\",\n            TimestampFormat = \"rfc3339\",\n            Unstructured = true,\n        },\n        Schema = new Cloudflare.Inputs.PipelineSinkSchemaArgs\n        {\n            Fields = new[]\n            {\n                new Cloudflare.Inputs.PipelineSinkSchemaFieldArgs\n                {\n                    Type = \"int32\",\n                    MetadataKey = \"metadata_key\",\n                    Name = \"name\",\n                    Required = true,\n                    SqlName = \"sql_name\",\n                },\n            },\n            Format = new Cloudflare.Inputs.PipelineSinkSchemaFormatArgs\n            {\n                Type = \"json\",\n                DecimalEncoding = \"number\",\n                TimestampFormat = \"rfc3339\",\n                Unstructured = true,\n            },\n            Inferred = true,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewPipelineSink(ctx, \"example_pipeline_sink\", \u0026cloudflare.PipelineSinkArgs{\n\t\t\tAccountId: pulumi.String(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my_sink\"),\n\t\t\tType:      pulumi.String(\"r2\"),\n\t\t\tConfig: \u0026cloudflare.PipelineSinkConfigArgs{\n\t\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\t\tBucket:    pulumi.String(\"bucket\"),\n\t\t\t\tCredentials: \u0026cloudflare.PipelineSinkConfigCredentialsArgs{\n\t\t\t\t\tAccessKeyId:     pulumi.String(\"access_key_id\"),\n\t\t\t\t\tSecretAccessKey: pulumi.String(\"secret_access_key\"),\n\t\t\t\t},\n\t\t\t\tFileNaming: \u0026cloudflare.PipelineSinkConfigFileNamingArgs{\n\t\t\t\t\tPrefix:   pulumi.String(\"prefix\"),\n\t\t\t\t\tStrategy: pulumi.String(\"serial\"),\n\t\t\t\t\tSuffix:   pulumi.String(\"suffix\"),\n\t\t\t\t},\n\t\t\t\tJurisdiction: pulumi.String(\"jurisdiction\"),\n\t\t\t\tPartitioning: \u0026cloudflare.PipelineSinkConfigPartitioningArgs{\n\t\t\t\t\tTimePattern: pulumi.String(\"year=%Y/month=%m/day=%d/hour=%H\"),\n\t\t\t\t},\n\t\t\t\tPath: pulumi.String(\"path\"),\n\t\t\t\tRollingPolicy: \u0026cloudflare.PipelineSinkConfigRollingPolicyArgs{\n\t\t\t\t\tFileSizeBytes:     pulumi.Int(0),\n\t\t\t\t\tInactivitySeconds: pulumi.Int(1),\n\t\t\t\t\tIntervalSeconds:   pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFormat: \u0026cloudflare.PipelineSinkFormatArgs{\n\t\t\t\tType:            pulumi.String(\"json\"),\n\t\t\t\tDecimalEncoding: pulumi.String(\"number\"),\n\t\t\t\tTimestampFormat: pulumi.String(\"rfc3339\"),\n\t\t\t\tUnstructured:    pulumi.Bool(true),\n\t\t\t},\n\t\t\tSchema: \u0026cloudflare.PipelineSinkSchemaArgs{\n\t\t\t\tFields: cloudflare.PipelineSinkSchemaFieldArray{\n\t\t\t\t\t\u0026cloudflare.PipelineSinkSchemaFieldArgs{\n\t\t\t\t\t\tType:        pulumi.String(\"int32\"),\n\t\t\t\t\t\tMetadataKey: pulumi.String(\"metadata_key\"),\n\t\t\t\t\t\tName:        pulumi.String(\"name\"),\n\t\t\t\t\t\tRequired:    pulumi.Bool(true),\n\t\t\t\t\t\tSqlName:     pulumi.String(\"sql_name\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tFormat: \u0026cloudflare.PipelineSinkSchemaFormatArgs{\n\t\t\t\t\tType:            pulumi.String(\"json\"),\n\t\t\t\t\tDecimalEncoding: pulumi.String(\"number\"),\n\t\t\t\t\tTimestampFormat: pulumi.String(\"rfc3339\"),\n\t\t\t\t\tUnstructured:    pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tInferred: pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.PipelineSink;\nimport com.pulumi.cloudflare.PipelineSinkArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkConfigArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkConfigCredentialsArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkConfigFileNamingArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkConfigPartitioningArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkConfigRollingPolicyArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkFormatArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkSchemaArgs;\nimport com.pulumi.cloudflare.inputs.PipelineSinkSchemaFormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var examplePipelineSink = new PipelineSink(\"examplePipelineSink\", PipelineSinkArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my_sink\")\n            .type(\"r2\")\n            .config(PipelineSinkConfigArgs.builder()\n                .accountId(\"account_id\")\n                .bucket(\"bucket\")\n                .credentials(PipelineSinkConfigCredentialsArgs.builder()\n                    .accessKeyId(\"access_key_id\")\n                    .secretAccessKey(\"secret_access_key\")\n                    .build())\n                .fileNaming(PipelineSinkConfigFileNamingArgs.builder()\n                    .prefix(\"prefix\")\n                    .strategy(\"serial\")\n                    .suffix(\"suffix\")\n                    .build())\n                .jurisdiction(\"jurisdiction\")\n                .partitioning(PipelineSinkConfigPartitioningArgs.builder()\n                    .timePattern(\"year=%Y/month=%m/day=%d/hour=%H\")\n                    .build())\n                .path(\"path\")\n                .rollingPolicy(PipelineSinkConfigRollingPolicyArgs.builder()\n                    .fileSizeBytes(0)\n                    .inactivitySeconds(1)\n                    .intervalSeconds(1)\n                    .build())\n                .build())\n            .format(PipelineSinkFormatArgs.builder()\n                .type(\"json\")\n                .decimalEncoding(\"number\")\n                .timestampFormat(\"rfc3339\")\n                .unstructured(true)\n                .build())\n            .schema(PipelineSinkSchemaArgs.builder()\n                .fields(PipelineSinkSchemaFieldArgs.builder()\n                    .type(\"int32\")\n                    .metadataKey(\"metadata_key\")\n                    .name(\"name\")\n                    .required(true)\n                    .sqlName(\"sql_name\")\n                    .build())\n                .format(PipelineSinkSchemaFormatArgs.builder()\n                    .type(\"json\")\n                    .decimalEncoding(\"number\")\n                    .timestampFormat(\"rfc3339\")\n                    .unstructured(true)\n                    .build())\n                .inferred(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  examplePipelineSink:\n    type: cloudflare:PipelineSink\n    name: example_pipeline_sink\n    properties:\n      accountId: 0123105f4ecef8ad9ca31a8372d0c353\n      name: my_sink\n      type: r2\n      config:\n        accountId: account_id\n        bucket: bucket\n        credentials:\n          accessKeyId: access_key_id\n          secretAccessKey: secret_access_key\n        fileNaming:\n          prefix: prefix\n          strategy: serial\n          suffix: suffix\n        jurisdiction: jurisdiction\n        partitioning:\n          timePattern: year=%Y/month=%m/day=%d/hour=%H\n        path: path\n        rollingPolicy:\n          fileSizeBytes: 0\n          inactivitySeconds: 1\n          intervalSeconds: 1\n      format:\n        type: json\n        decimalEncoding: number\n        timestampFormat: rfc3339\n        unstructured: true\n      schema:\n        fields:\n          - type: int32\n            metadataKey: metadata_key\n            name: name\n            required: true\n            sqlName: sql_name\n        format:\n          type: json\n          decimalEncoding: number\n          timestampFormat: rfc3339\n          unstructured: true\n        inferred: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/pipelineSink:PipelineSink example '\u003caccount_id\u003e/\u003csink_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Specifies the public ID of the account.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkConfig:PipelineSinkConfig",
                    "description": "Defines the configuration of the R2 Sink.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkFormat:PipelineSinkFormat"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Defines the name of the Sink.\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkSchema:PipelineSinkSchema"
                },
                "type": {
                    "type": "string",
                    "description": "Specifies the type of sink.\nAvailable values: \"r2\", \"r2*data*catalog\".\n"
                }
            },
            "required": [
                "createdAt",
                "modifiedAt",
                "name",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Specifies the public ID of the account.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkConfig:PipelineSinkConfig",
                    "description": "Defines the configuration of the R2 Sink.\n"
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkFormat:PipelineSinkFormat"
                },
                "name": {
                    "type": "string",
                    "description": "Defines the name of the Sink.\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/PipelineSinkSchema:PipelineSinkSchema"
                },
                "type": {
                    "type": "string",
                    "description": "Specifies the type of sink.\nAvailable values: \"r2\", \"r2*data*catalog\".\n"
                }
            },
            "requiredInputs": [
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering PipelineSink resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/PipelineSinkConfig:PipelineSinkConfig",
                        "description": "Defines the configuration of the R2 Sink.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "format": {
                        "$ref": "#/types/cloudflare:index/PipelineSinkFormat:PipelineSinkFormat"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "Defines the name of the Sink.\n"
                    },
                    "schema": {
                        "$ref": "#/types/cloudflare:index/PipelineSinkSchema:PipelineSinkSchema"
                    },
                    "type": {
                        "type": "string",
                        "description": "Specifies the type of sink.\nAvailable values: \"r2\", \"r2*data*catalog\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/pipelineStream:PipelineStream": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipelineStream = new cloudflare.PipelineStream(\"example_pipeline_stream\", {\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my_stream\",\n    format: {\n        type: \"json\",\n        decimalEncoding: \"number\",\n        timestampFormat: \"rfc3339\",\n        unstructured: true,\n    },\n    http: {\n        authentication: false,\n        enabled: true,\n        cors: {\n            origins: [\"string\"],\n        },\n    },\n    schema: {\n        fields: [{\n            type: \"int32\",\n            metadataKey: \"metadata_key\",\n            name: \"name\",\n            required: true,\n            sqlName: \"sql_name\",\n        }],\n        format: {\n            type: \"json\",\n            decimalEncoding: \"number\",\n            timestampFormat: \"rfc3339\",\n            unstructured: true,\n        },\n        inferred: true,\n    },\n    workerBinding: {\n        enabled: true,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline_stream = cloudflare.PipelineStream(\"example_pipeline_stream\",\n    account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my_stream\",\n    format={\n        \"type\": \"json\",\n        \"decimal_encoding\": \"number\",\n        \"timestamp_format\": \"rfc3339\",\n        \"unstructured\": True,\n    },\n    http={\n        \"authentication\": False,\n        \"enabled\": True,\n        \"cors\": {\n            \"origins\": [\"string\"],\n        },\n    },\n    schema={\n        \"fields\": [{\n            \"type\": \"int32\",\n            \"metadata_key\": \"metadata_key\",\n            \"name\": \"name\",\n            \"required\": True,\n            \"sql_name\": \"sql_name\",\n        }],\n        \"format\": {\n            \"type\": \"json\",\n            \"decimal_encoding\": \"number\",\n            \"timestamp_format\": \"rfc3339\",\n            \"unstructured\": True,\n        },\n        \"inferred\": True,\n    },\n    worker_binding={\n        \"enabled\": True,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipelineStream = new Cloudflare.Index.PipelineStream(\"example_pipeline_stream\", new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my_stream\",\n        Format = new Cloudflare.Inputs.PipelineStreamFormatArgs\n        {\n            Type = \"json\",\n            DecimalEncoding = \"number\",\n            TimestampFormat = \"rfc3339\",\n            Unstructured = true,\n        },\n        Http = new Cloudflare.Inputs.PipelineStreamHttpArgs\n        {\n            Authentication = false,\n            Enabled = true,\n            Cors = new Cloudflare.Inputs.PipelineStreamHttpCorsArgs\n            {\n                Origins = new[]\n                {\n                    \"string\",\n                },\n            },\n        },\n        Schema = new Cloudflare.Inputs.PipelineStreamSchemaArgs\n        {\n            Fields = new[]\n            {\n                new Cloudflare.Inputs.PipelineStreamSchemaFieldArgs\n                {\n                    Type = \"int32\",\n                    MetadataKey = \"metadata_key\",\n                    Name = \"name\",\n                    Required = true,\n                    SqlName = \"sql_name\",\n                },\n            },\n            Format = new Cloudflare.Inputs.PipelineStreamSchemaFormatArgs\n            {\n                Type = \"json\",\n                DecimalEncoding = \"number\",\n                TimestampFormat = \"rfc3339\",\n                Unstructured = true,\n            },\n            Inferred = true,\n        },\n        WorkerBinding = new Cloudflare.Inputs.PipelineStreamWorkerBindingArgs\n        {\n            Enabled = true,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewPipelineStream(ctx, \"example_pipeline_stream\", \u0026cloudflare.PipelineStreamArgs{\n\t\t\tAccountId: pulumi.String(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my_stream\"),\n\t\t\tFormat: \u0026cloudflare.PipelineStreamFormatArgs{\n\t\t\t\tType:            pulumi.String(\"json\"),\n\t\t\t\tDecimalEncoding: pulumi.String(\"number\"),\n\t\t\t\tTimestampFormat: pulumi.String(\"rfc3339\"),\n\t\t\t\tUnstructured:    pulumi.Bool(true),\n\t\t\t},\n\t\t\tHttp: \u0026cloudflare.PipelineStreamHttpArgs{\n\t\t\t\tAuthentication: pulumi.Bool(false),\n\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\tCors: \u0026cloudflare.PipelineStreamHttpCorsArgs{\n\t\t\t\t\tOrigins: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSchema: \u0026cloudflare.PipelineStreamSchemaArgs{\n\t\t\t\tFields: cloudflare.PipelineStreamSchemaFieldArray{\n\t\t\t\t\t\u0026cloudflare.PipelineStreamSchemaFieldArgs{\n\t\t\t\t\t\tType:        pulumi.String(\"int32\"),\n\t\t\t\t\t\tMetadataKey: pulumi.String(\"metadata_key\"),\n\t\t\t\t\t\tName:        pulumi.String(\"name\"),\n\t\t\t\t\t\tRequired:    pulumi.Bool(true),\n\t\t\t\t\t\tSqlName:     pulumi.String(\"sql_name\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tFormat: \u0026cloudflare.PipelineStreamSchemaFormatArgs{\n\t\t\t\t\tType:            pulumi.String(\"json\"),\n\t\t\t\t\tDecimalEncoding: pulumi.String(\"number\"),\n\t\t\t\t\tTimestampFormat: pulumi.String(\"rfc3339\"),\n\t\t\t\t\tUnstructured:    pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tInferred: pulumi.Bool(true),\n\t\t\t},\n\t\t\tWorkerBinding: \u0026cloudflare.PipelineStreamWorkerBindingArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.PipelineStream;\nimport com.pulumi.cloudflare.PipelineStreamArgs;\nimport com.pulumi.cloudflare.inputs.PipelineStreamFormatArgs;\nimport com.pulumi.cloudflare.inputs.PipelineStreamHttpArgs;\nimport com.pulumi.cloudflare.inputs.PipelineStreamHttpCorsArgs;\nimport com.pulumi.cloudflare.inputs.PipelineStreamSchemaArgs;\nimport com.pulumi.cloudflare.inputs.PipelineStreamSchemaFormatArgs;\nimport com.pulumi.cloudflare.inputs.PipelineStreamWorkerBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var examplePipelineStream = new PipelineStream(\"examplePipelineStream\", PipelineStreamArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my_stream\")\n            .format(PipelineStreamFormatArgs.builder()\n                .type(\"json\")\n                .decimalEncoding(\"number\")\n                .timestampFormat(\"rfc3339\")\n                .unstructured(true)\n                .build())\n            .http(PipelineStreamHttpArgs.builder()\n                .authentication(false)\n                .enabled(true)\n                .cors(PipelineStreamHttpCorsArgs.builder()\n                    .origins(\"string\")\n                    .build())\n                .build())\n            .schema(PipelineStreamSchemaArgs.builder()\n                .fields(PipelineStreamSchemaFieldArgs.builder()\n                    .type(\"int32\")\n                    .metadataKey(\"metadata_key\")\n                    .name(\"name\")\n                    .required(true)\n                    .sqlName(\"sql_name\")\n                    .build())\n                .format(PipelineStreamSchemaFormatArgs.builder()\n                    .type(\"json\")\n                    .decimalEncoding(\"number\")\n                    .timestampFormat(\"rfc3339\")\n                    .unstructured(true)\n                    .build())\n                .inferred(true)\n                .build())\n            .workerBinding(PipelineStreamWorkerBindingArgs.builder()\n                .enabled(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  examplePipelineStream:\n    type: cloudflare:PipelineStream\n    name: example_pipeline_stream\n    properties:\n      accountId: 0123105f4ecef8ad9ca31a8372d0c353\n      name: my_stream\n      format:\n        type: json\n        decimalEncoding: number\n        timestampFormat: rfc3339\n        unstructured: true\n      http:\n        authentication: false\n        enabled: true\n        cors:\n          origins:\n            - string\n      schema:\n        fields:\n          - type: int32\n            metadataKey: metadata_key\n            name: name\n            required: true\n            sqlName: sql_name\n        format:\n          type: json\n          decimalEncoding: number\n          timestampFormat: rfc3339\n          unstructured: true\n        inferred: true\n      workerBinding:\n        enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/pipelineStream:PipelineStream example '\u003caccount_id\u003e/\u003cstream_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Specifies the public ID of the account.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "endpoint": {
                    "type": "string",
                    "description": "Indicates the endpoint URL of this stream.\n"
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamFormat:PipelineStreamFormat"
                },
                "http": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamHttp:PipelineStreamHttp"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Specifies the name of the Stream.\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamSchema:PipelineStreamSchema"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicates the current version of this stream.\n"
                },
                "workerBinding": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamWorkerBinding:PipelineStreamWorkerBinding"
                }
            },
            "required": [
                "createdAt",
                "endpoint",
                "http",
                "modifiedAt",
                "name",
                "version",
                "workerBinding"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Specifies the public ID of the account.\n"
                },
                "format": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamFormat:PipelineStreamFormat"
                },
                "http": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamHttp:PipelineStreamHttp"
                },
                "name": {
                    "type": "string",
                    "description": "Specifies the name of the Stream.\n"
                },
                "schema": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamSchema:PipelineStreamSchema"
                },
                "workerBinding": {
                    "$ref": "#/types/cloudflare:index/PipelineStreamWorkerBinding:PipelineStreamWorkerBinding"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering PipelineStream resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "endpoint": {
                        "type": "string",
                        "description": "Indicates the endpoint URL of this stream.\n"
                    },
                    "format": {
                        "$ref": "#/types/cloudflare:index/PipelineStreamFormat:PipelineStreamFormat"
                    },
                    "http": {
                        "$ref": "#/types/cloudflare:index/PipelineStreamHttp:PipelineStreamHttp"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specifies the name of the Stream.\n"
                    },
                    "schema": {
                        "$ref": "#/types/cloudflare:index/PipelineStreamSchema:PipelineStreamSchema"
                    },
                    "version": {
                        "type": "integer",
                        "description": "Indicates the current version of this stream.\n"
                    },
                    "workerBinding": {
                        "$ref": "#/types/cloudflare:index/PipelineStreamWorkerBinding:PipelineStreamWorkerBinding"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/queue:Queue": {
            "description": "Accepted Permissions\n\n- `Queues Read`\n- `Queues Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleQueue = new cloudflare.Queue(\"example_queue\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    queueName: \"example-queue\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_queue = cloudflare.Queue(\"example_queue\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    queue_name=\"example-queue\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleQueue = new Cloudflare.Index.Queue(\"example_queue\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        QueueName = \"example-queue\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewQueue(ctx, \"example_queue\", \u0026cloudflare.QueueArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tQueueName: pulumi.String(\"example-queue\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Queue;\nimport com.pulumi.cloudflare.QueueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleQueue = new Queue(\"exampleQueue\", QueueArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .queueName(\"example-queue\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleQueue:\n    type: cloudflare:Queue\n    name: example_queue\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      queueName: example-queue\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/queue:Queue example '\u003caccount_id\u003e/\u003cqueue_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "consumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/QueueConsumer:QueueConsumer"
                    }
                },
                "consumersTotalCount": {
                    "type": "number"
                },
                "createdOn": {
                    "type": "string"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "producers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/QueueProducer:QueueProducer"
                    }
                },
                "producersTotalCount": {
                    "type": "number"
                },
                "queueId": {
                    "type": "string"
                },
                "queueName": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/QueueSettings:QueueSettings"
                }
            },
            "required": [
                "consumers",
                "consumersTotalCount",
                "createdOn",
                "modifiedOn",
                "producers",
                "producersTotalCount",
                "queueId",
                "queueName",
                "settings"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "queueName": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/QueueSettings:QueueSettings"
                }
            },
            "requiredInputs": [
                "queueName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Queue resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "consumers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/QueueConsumer:QueueConsumer"
                        }
                    },
                    "consumersTotalCount": {
                        "type": "number"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "producers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/QueueProducer:QueueProducer"
                        }
                    },
                    "producersTotalCount": {
                        "type": "number"
                    },
                    "queueId": {
                        "type": "string"
                    },
                    "queueName": {
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/QueueSettings:QueueSettings"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/queueConsumer:QueueConsumer": {
            "description": "Accepted Permissions\n\n- `Queues Read`\n- `Queues Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleQueueConsumer = new cloudflare.QueueConsumer(\"example_queue_consumer\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    queueId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"my-consumer-worker\",\n    type: \"worker\",\n    deadLetterQueue: \"example-queue\",\n    settings: {\n        batchSize: 50,\n        maxConcurrency: 10,\n        maxRetries: 3,\n        maxWaitTimeMs: 5000,\n        retryDelay: 10,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_queue_consumer = cloudflare.QueueConsumer(\"example_queue_consumer\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    queue_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"my-consumer-worker\",\n    type=\"worker\",\n    dead_letter_queue=\"example-queue\",\n    settings={\n        \"batch_size\": 50,\n        \"max_concurrency\": 10,\n        \"max_retries\": 3,\n        \"max_wait_time_ms\": 5000,\n        \"retry_delay\": 10,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleQueueConsumer = new Cloudflare.Index.QueueConsumer(\"example_queue_consumer\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        QueueId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"my-consumer-worker\",\n        Type = \"worker\",\n        DeadLetterQueue = \"example-queue\",\n        Settings = new Cloudflare.Inputs.QueueConsumerSettingsArgs\n        {\n            BatchSize = 50,\n            MaxConcurrency = 10,\n            MaxRetries = 3,\n            MaxWaitTimeMs = 5000,\n            RetryDelay = 10,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewQueueConsumer(ctx, \"example_queue_consumer\", \u0026cloudflare.QueueConsumerArgs{\n\t\t\tAccountId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tQueueId:         pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName:      pulumi.String(\"my-consumer-worker\"),\n\t\t\tType:            pulumi.String(\"worker\"),\n\t\t\tDeadLetterQueue: pulumi.String(\"example-queue\"),\n\t\t\tSettings: \u0026cloudflare.QueueConsumerSettingsArgs{\n\t\t\t\tBatchSize:      pulumi.Float64(50),\n\t\t\t\tMaxConcurrency: pulumi.Float64(10),\n\t\t\t\tMaxRetries:     pulumi.Float64(3),\n\t\t\t\tMaxWaitTimeMs:  pulumi.Float64(5000),\n\t\t\t\tRetryDelay:     pulumi.Float64(10),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.QueueConsumer;\nimport com.pulumi.cloudflare.QueueConsumerArgs;\nimport com.pulumi.cloudflare.inputs.QueueConsumerSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleQueueConsumer = new QueueConsumer(\"exampleQueueConsumer\", QueueConsumerArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .queueId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"my-consumer-worker\")\n            .type(\"worker\")\n            .deadLetterQueue(\"example-queue\")\n            .settings(QueueConsumerSettingsArgs.builder()\n                .batchSize(50.0)\n                .maxConcurrency(10.0)\n                .maxRetries(3.0)\n                .maxWaitTimeMs(5000.0)\n                .retryDelay(10.0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleQueueConsumer:\n    type: cloudflare:QueueConsumer\n    name: example_queue_consumer\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      queueId: 023e105f4ecef8ad9ca31a8372d0c353\n      scriptName: my-consumer-worker\n      type: worker\n      deadLetterQueue: example-queue\n      settings:\n        batchSize: 50\n        maxConcurrency: 10\n        maxRetries: 3\n        maxWaitTimeMs: 5000\n        retryDelay: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "consumerId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "deadLetterQueue": {
                    "type": "string"
                },
                "queueId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "queueName": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of a Worker\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/QueueConsumerSettings:QueueConsumerSettings"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                }
            },
            "required": [
                "consumerId",
                "createdOn",
                "queueId",
                "queueName",
                "scriptName",
                "settings",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "deadLetterQueue": {
                    "type": "string"
                },
                "queueId": {
                    "type": "string",
                    "description": "A Resource identifier.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of a Worker\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/QueueConsumerSettings:QueueConsumerSettings"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "queueId",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering QueueConsumer resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "consumerId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "deadLetterQueue": {
                        "type": "string"
                    },
                    "queueId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "queueName": {
                        "type": "string"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of a Worker\n"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/QueueConsumerSettings:QueueConsumerSettings"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2Bucket:R2Bucket": {
            "description": "Accepted Permissions\n\n- `Workers R2 Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2Bucket = new cloudflare.R2Bucket(\"example_r2_bucket\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"example-bucket\",\n    location: \"apac\",\n    storageClass: \"Standard\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket = cloudflare.R2Bucket(\"example_r2_bucket\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"example-bucket\",\n    location=\"apac\",\n    storage_class=\"Standard\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2Bucket = new Cloudflare.Index.R2Bucket(\"example_r2_bucket\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"example-bucket\",\n        Location = \"apac\",\n        StorageClass = \"Standard\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2Bucket(ctx, \"example_r2_bucket\", \u0026cloudflare.R2BucketArgs{\n\t\t\tAccountId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:         pulumi.String(\"example-bucket\"),\n\t\t\tLocation:     pulumi.String(\"apac\"),\n\t\t\tStorageClass: pulumi.String(\"Standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2Bucket;\nimport com.pulumi.cloudflare.R2BucketArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2Bucket = new R2Bucket(\"exampleR2Bucket\", R2BucketArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"example-bucket\")\n            .location(\"apac\")\n            .storageClass(\"Standard\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2Bucket:\n    type: cloudflare:R2Bucket\n    name: example_r2_bucket\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: example-bucket\n      location: apac\n      storageClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/r2Bucket:R2Bucket example '\u003caccount_id\u003e/\u003cbucket_name\u003e/\u003cjurisdiction\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "creationDate": {
                    "type": "string",
                    "description": "Creation timestamp.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction where objects in this bucket are guaranteed to be stored.\nAvailable values: \"default\", \"eu\", \"fedramp\".\n"
                },
                "location": {
                    "type": "string",
                    "description": "Location of the bucket.\nAvailable values: \"apac\", \"eeur\", \"enam\", \"weur\", \"wnam\", \"oc\".  Note: \u003cspan pulumi-lang-nodejs=\"`location`\" pulumi-lang-dotnet=\"`Location`\" pulumi-lang-go=\"`location`\" pulumi-lang-python=\"`location`\" pulumi-lang-yaml=\"`location`\" pulumi-lang-java=\"`location`\"\u003e`location`\u003c/span\u003e is only honored the first time a bucket with a given name is created. If you delete and recreate a bucket with the same name, the original bucket location will be used. It is also a best-effort, not a guarantee, of bucket location.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "Storage class for newly uploaded objects, unless specified otherwise.\nAvailable values: \"Standard\", \"InfrequentAccess\".\n"
                }
            },
            "required": [
                "creationDate",
                "jurisdiction",
                "location",
                "name",
                "storageClass"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction where objects in this bucket are guaranteed to be stored.\nAvailable values: \"default\", \"eu\", \"fedramp\".\n"
                },
                "location": {
                    "type": "string",
                    "description": "Location of the bucket.\nAvailable values: \"apac\", \"eeur\", \"enam\", \"weur\", \"wnam\", \"oc\".  Note: \u003cspan pulumi-lang-nodejs=\"`location`\" pulumi-lang-dotnet=\"`Location`\" pulumi-lang-go=\"`location`\" pulumi-lang-python=\"`location`\" pulumi-lang-yaml=\"`location`\" pulumi-lang-java=\"`location`\"\u003e`location`\u003c/span\u003e is only honored the first time a bucket with a given name is created. If you delete and recreate a bucket with the same name, the original bucket location will be used. It is also a best-effort, not a guarantee, of bucket location.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "Storage class for newly uploaded objects, unless specified otherwise.\nAvailable values: \"Standard\", \"InfrequentAccess\".\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2Bucket resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "creationDate": {
                        "type": "string",
                        "description": "Creation timestamp.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction where objects in this bucket are guaranteed to be stored.\nAvailable values: \"default\", \"eu\", \"fedramp\".\n"
                    },
                    "location": {
                        "type": "string",
                        "description": "Location of the bucket.\nAvailable values: \"apac\", \"eeur\", \"enam\", \"weur\", \"wnam\", \"oc\".  Note: \u003cspan pulumi-lang-nodejs=\"`location`\" pulumi-lang-dotnet=\"`Location`\" pulumi-lang-go=\"`location`\" pulumi-lang-python=\"`location`\" pulumi-lang-yaml=\"`location`\" pulumi-lang-java=\"`location`\"\u003e`location`\u003c/span\u003e is only honored the first time a bucket with a given name is created. If you delete and recreate a bucket with the same name, the original bucket location will be used. It is also a best-effort, not a guarantee, of bucket location.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "storageClass": {
                        "type": "string",
                        "description": "Storage class for newly uploaded objects, unless specified otherwise.\nAvailable values: \"Standard\", \"InfrequentAccess\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2BucketCors:R2BucketCors": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketCors = new cloudflare.R2BucketCors(\"example_r2_bucket_cors\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    rules: [{\n        allowed: {\n            methods: [\"GET\"],\n            origins: [\"http://localhost:3000\"],\n            headers: [\"x-requested-by\"],\n        },\n        id: \"Allow Local Development\",\n        exposeHeaders: [\"Content-Encoding\"],\n        maxAgeSeconds: 3600,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_cors = cloudflare.R2BucketCors(\"example_r2_bucket_cors\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    rules=[{\n        \"allowed\": {\n            \"methods\": [\"GET\"],\n            \"origins\": [\"http://localhost:3000\"],\n            \"headers\": [\"x-requested-by\"],\n        },\n        \"id\": \"Allow Local Development\",\n        \"expose_headers\": [\"Content-Encoding\"],\n        \"max_age_seconds\": 3600,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketCors = new Cloudflare.Index.R2BucketCors(\"example_r2_bucket_cors\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.R2BucketCorsRuleArgs\n            {\n                Allowed = new Cloudflare.Inputs.R2BucketCorsRuleAllowedArgs\n                {\n                    Methods = new[]\n                    {\n                        \"GET\",\n                    },\n                    Origins = new[]\n                    {\n                        \"http://localhost:3000\",\n                    },\n                    Headers = new[]\n                    {\n                        \"x-requested-by\",\n                    },\n                },\n                Id = \"Allow Local Development\",\n                ExposeHeaders = new[]\n                {\n                    \"Content-Encoding\",\n                },\n                MaxAgeSeconds = 3600,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2BucketCors(ctx, \"example_r2_bucket_cors\", \u0026cloudflare.R2BucketCorsArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tRules: cloudflare.R2BucketCorsRuleArray{\n\t\t\t\t\u0026cloudflare.R2BucketCorsRuleArgs{\n\t\t\t\t\tAllowed: \u0026cloudflare.R2BucketCorsRuleAllowedArgs{\n\t\t\t\t\t\tMethods: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"GET\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tOrigins: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"http://localhost:3000\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"x-requested-by\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tId: pulumi.String(\"Allow Local Development\"),\n\t\t\t\t\tExposeHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Content-Encoding\"),\n\t\t\t\t\t},\n\t\t\t\t\tMaxAgeSeconds: pulumi.Float64(3600),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2BucketCors;\nimport com.pulumi.cloudflare.R2BucketCorsArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketCorsRuleArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketCorsRuleAllowedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2BucketCors = new R2BucketCors(\"exampleR2BucketCors\", R2BucketCorsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .rules(R2BucketCorsRuleArgs.builder()\n                .allowed(R2BucketCorsRuleAllowedArgs.builder()\n                    .methods(\"GET\")\n                    .origins(\"http://localhost:3000\")\n                    .headers(\"x-requested-by\")\n                    .build())\n                .id(\"Allow Local Development\")\n                .exposeHeaders(\"Content-Encoding\")\n                .maxAgeSeconds(3600.0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2BucketCors:\n    type: cloudflare:R2BucketCors\n    name: example_r2_bucket_cors\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      rules:\n        - allowed:\n            methods:\n              - GET\n            origins:\n              - http://localhost:3000\n            headers:\n              - x-requested-by\n          id: Allow Local Development\n          exposeHeaders:\n            - Content-Encoding\n          maxAgeSeconds: 3600\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketCorsRule:R2BucketCorsRule"
                    }
                }
            },
            "required": [
                "bucketName",
                "jurisdiction"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketCorsRule:R2BucketCorsRule"
                    }
                }
            },
            "requiredInputs": [
                "bucketName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2BucketCors resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/R2BucketCorsRule:R2BucketCorsRule"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2BucketEventNotification:R2BucketEventNotification": {
            "description": "Accepted Permissions\n\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketEventNotification = new cloudflare.R2BucketEventNotification(\"example_r2_bucket_event_notification\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    queueId: \"queue_id\",\n    rules: [{\n        actions: [\n            \"PutObject\",\n            \"CopyObject\",\n        ],\n        description: \"Notifications from source bucket to queue\",\n        prefix: \"img/\",\n        suffix: \".jpeg\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_event_notification = cloudflare.R2BucketEventNotification(\"example_r2_bucket_event_notification\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    queue_id=\"queue_id\",\n    rules=[{\n        \"actions\": [\n            \"PutObject\",\n            \"CopyObject\",\n        ],\n        \"description\": \"Notifications from source bucket to queue\",\n        \"prefix\": \"img/\",\n        \"suffix\": \".jpeg\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketEventNotification = new Cloudflare.Index.R2BucketEventNotification(\"example_r2_bucket_event_notification\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        QueueId = \"queue_id\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.R2BucketEventNotificationRuleArgs\n            {\n                Actions = new[]\n                {\n                    \"PutObject\",\n                    \"CopyObject\",\n                },\n                Description = \"Notifications from source bucket to queue\",\n                Prefix = \"img/\",\n                Suffix = \".jpeg\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2BucketEventNotification(ctx, \"example_r2_bucket_event_notification\", \u0026cloudflare.R2BucketEventNotificationArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tQueueId:    pulumi.String(\"queue_id\"),\n\t\t\tRules: cloudflare.R2BucketEventNotificationRuleArray{\n\t\t\t\t\u0026cloudflare.R2BucketEventNotificationRuleArgs{\n\t\t\t\t\tActions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"PutObject\"),\n\t\t\t\t\t\tpulumi.String(\"CopyObject\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"Notifications from source bucket to queue\"),\n\t\t\t\t\tPrefix:      pulumi.String(\"img/\"),\n\t\t\t\t\tSuffix:      pulumi.String(\".jpeg\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2BucketEventNotification;\nimport com.pulumi.cloudflare.R2BucketEventNotificationArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketEventNotificationRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2BucketEventNotification = new R2BucketEventNotification(\"exampleR2BucketEventNotification\", R2BucketEventNotificationArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .queueId(\"queue_id\")\n            .rules(R2BucketEventNotificationRuleArgs.builder()\n                .actions(                \n                    \"PutObject\",\n                    \"CopyObject\")\n                .description(\"Notifications from source bucket to queue\")\n                .prefix(\"img/\")\n                .suffix(\".jpeg\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2BucketEventNotification:\n    type: cloudflare:R2BucketEventNotification\n    name: example_r2_bucket_event_notification\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      queueId: queue_id\n      rules:\n        - actions:\n            - PutObject\n            - CopyObject\n          description: Notifications from source bucket to queue\n          prefix: img/\n          suffix: .jpeg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "queueId": {
                    "type": "string",
                    "description": "Queue ID.\n"
                },
                "queueName": {
                    "type": "string",
                    "description": "Name of the queue.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketEventNotificationRule:R2BucketEventNotificationRule"
                    },
                    "description": "Array of rules to drive notifications.\n"
                }
            },
            "required": [
                "bucketName",
                "jurisdiction",
                "queueId",
                "queueName",
                "rules"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "queueId": {
                    "type": "string",
                    "description": "Queue ID.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketEventNotificationRule:R2BucketEventNotificationRule"
                    },
                    "description": "Array of rules to drive notifications.\n"
                }
            },
            "requiredInputs": [
                "bucketName",
                "queueId",
                "rules"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2BucketEventNotification resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    },
                    "queueId": {
                        "type": "string",
                        "description": "Queue ID.\n"
                    },
                    "queueName": {
                        "type": "string",
                        "description": "Name of the queue.\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/R2BucketEventNotificationRule:R2BucketEventNotificationRule"
                        },
                        "description": "Array of rules to drive notifications.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2BucketLifecycle:R2BucketLifecycle": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketLifecycle = new cloudflare.R2BucketLifecycle(\"example_r2_bucket_lifecycle\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    rules: [{\n        id: \"Expire all objects older than 24 hours\",\n        conditions: {\n            prefix: \"prefix\",\n        },\n        enabled: true,\n        abortMultipartUploadsTransition: {\n            condition: {\n                maxAge: 0,\n                type: \"Age\",\n            },\n        },\n        deleteObjectsTransition: {\n            condition: {\n                maxAge: 0,\n                type: \"Age\",\n            },\n        },\n        storageClassTransitions: [{\n            condition: {\n                maxAge: 0,\n                type: \"Age\",\n            },\n            storageClass: \"InfrequentAccess\",\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_lifecycle = cloudflare.R2BucketLifecycle(\"example_r2_bucket_lifecycle\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    rules=[{\n        \"id\": \"Expire all objects older than 24 hours\",\n        \"conditions\": {\n            \"prefix\": \"prefix\",\n        },\n        \"enabled\": True,\n        \"abort_multipart_uploads_transition\": {\n            \"condition\": {\n                \"max_age\": 0,\n                \"type\": \"Age\",\n            },\n        },\n        \"delete_objects_transition\": {\n            \"condition\": {\n                \"max_age\": 0,\n                \"type\": \"Age\",\n            },\n        },\n        \"storage_class_transitions\": [{\n            \"condition\": {\n                \"max_age\": 0,\n                \"type\": \"Age\",\n            },\n            \"storage_class\": \"InfrequentAccess\",\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketLifecycle = new Cloudflare.Index.R2BucketLifecycle(\"example_r2_bucket_lifecycle\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.R2BucketLifecycleRuleArgs\n            {\n                Id = \"Expire all objects older than 24 hours\",\n                Conditions = new Cloudflare.Inputs.R2BucketLifecycleRuleConditionsArgs\n                {\n                    Prefix = \"prefix\",\n                },\n                Enabled = true,\n                AbortMultipartUploadsTransition = new Cloudflare.Inputs.R2BucketLifecycleRuleAbortMultipartUploadsTransitionArgs\n                {\n                    Condition = new Cloudflare.Inputs.R2BucketLifecycleRuleAbortMultipartUploadsTransitionConditionArgs\n                    {\n                        MaxAge = 0,\n                        Type = \"Age\",\n                    },\n                },\n                DeleteObjectsTransition = new Cloudflare.Inputs.R2BucketLifecycleRuleDeleteObjectsTransitionArgs\n                {\n                    Condition = new Cloudflare.Inputs.R2BucketLifecycleRuleDeleteObjectsTransitionConditionArgs\n                    {\n                        MaxAge = 0,\n                        Type = \"Age\",\n                    },\n                },\n                StorageClassTransitions = new[]\n                {\n                    new Cloudflare.Inputs.R2BucketLifecycleRuleStorageClassTransitionArgs\n                    {\n                        Condition = new Cloudflare.Inputs.R2BucketLifecycleRuleStorageClassTransitionConditionArgs\n                        {\n                            MaxAge = 0,\n                            Type = \"Age\",\n                        },\n                        StorageClass = \"InfrequentAccess\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2BucketLifecycle(ctx, \"example_r2_bucket_lifecycle\", \u0026cloudflare.R2BucketLifecycleArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tRules: cloudflare.R2BucketLifecycleRuleArray{\n\t\t\t\t\u0026cloudflare.R2BucketLifecycleRuleArgs{\n\t\t\t\t\tId: pulumi.String(\"Expire all objects older than 24 hours\"),\n\t\t\t\t\tConditions: \u0026cloudflare.R2BucketLifecycleRuleConditionsArgs{\n\t\t\t\t\t\tPrefix: pulumi.String(\"prefix\"),\n\t\t\t\t\t},\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tAbortMultipartUploadsTransition: \u0026cloudflare.R2BucketLifecycleRuleAbortMultipartUploadsTransitionArgs{\n\t\t\t\t\t\tCondition: \u0026cloudflare.R2BucketLifecycleRuleAbortMultipartUploadsTransitionConditionArgs{\n\t\t\t\t\t\t\tMaxAge: pulumi.Int(0),\n\t\t\t\t\t\t\tType:   pulumi.String(\"Age\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDeleteObjectsTransition: \u0026cloudflare.R2BucketLifecycleRuleDeleteObjectsTransitionArgs{\n\t\t\t\t\t\tCondition: \u0026cloudflare.R2BucketLifecycleRuleDeleteObjectsTransitionConditionArgs{\n\t\t\t\t\t\t\tMaxAge: pulumi.Int(0),\n\t\t\t\t\t\t\tType:   pulumi.String(\"Age\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tStorageClassTransitions: cloudflare.R2BucketLifecycleRuleStorageClassTransitionArray{\n\t\t\t\t\t\t\u0026cloudflare.R2BucketLifecycleRuleStorageClassTransitionArgs{\n\t\t\t\t\t\t\tCondition: \u0026cloudflare.R2BucketLifecycleRuleStorageClassTransitionConditionArgs{\n\t\t\t\t\t\t\t\tMaxAge: pulumi.Int(0),\n\t\t\t\t\t\t\t\tType:   pulumi.String(\"Age\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tStorageClass: pulumi.String(\"InfrequentAccess\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2BucketLifecycle;\nimport com.pulumi.cloudflare.R2BucketLifecycleArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLifecycleRuleArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLifecycleRuleConditionsArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLifecycleRuleAbortMultipartUploadsTransitionArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLifecycleRuleAbortMultipartUploadsTransitionConditionArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLifecycleRuleDeleteObjectsTransitionArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLifecycleRuleDeleteObjectsTransitionConditionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2BucketLifecycle = new R2BucketLifecycle(\"exampleR2BucketLifecycle\", R2BucketLifecycleArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .rules(R2BucketLifecycleRuleArgs.builder()\n                .id(\"Expire all objects older than 24 hours\")\n                .conditions(R2BucketLifecycleRuleConditionsArgs.builder()\n                    .prefix(\"prefix\")\n                    .build())\n                .enabled(true)\n                .abortMultipartUploadsTransition(R2BucketLifecycleRuleAbortMultipartUploadsTransitionArgs.builder()\n                    .condition(R2BucketLifecycleRuleAbortMultipartUploadsTransitionConditionArgs.builder()\n                        .maxAge(0)\n                        .type(\"Age\")\n                        .build())\n                    .build())\n                .deleteObjectsTransition(R2BucketLifecycleRuleDeleteObjectsTransitionArgs.builder()\n                    .condition(R2BucketLifecycleRuleDeleteObjectsTransitionConditionArgs.builder()\n                        .maxAge(0)\n                        .type(\"Age\")\n                        .build())\n                    .build())\n                .storageClassTransitions(R2BucketLifecycleRuleStorageClassTransitionArgs.builder()\n                    .condition(R2BucketLifecycleRuleStorageClassTransitionConditionArgs.builder()\n                        .maxAge(0)\n                        .type(\"Age\")\n                        .build())\n                    .storageClass(\"InfrequentAccess\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2BucketLifecycle:\n    type: cloudflare:R2BucketLifecycle\n    name: example_r2_bucket_lifecycle\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      rules:\n        - id: Expire all objects older than 24 hours\n          conditions:\n            prefix: prefix\n          enabled: true\n          abortMultipartUploadsTransition:\n            condition:\n              maxAge: 0\n              type: Age\n          deleteObjectsTransition:\n            condition:\n              maxAge: 0\n              type: Age\n          storageClassTransitions:\n            - condition:\n                maxAge: 0\n                type: Age\n              storageClass: InfrequentAccess\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketLifecycleRule:R2BucketLifecycleRule"
                    }
                }
            },
            "required": [
                "bucketName",
                "jurisdiction"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketLifecycleRule:R2BucketLifecycleRule"
                    }
                }
            },
            "requiredInputs": [
                "bucketName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2BucketLifecycle resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/R2BucketLifecycleRule:R2BucketLifecycleRule"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2BucketLock:R2BucketLock": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketLock = new cloudflare.R2BucketLock(\"example_r2_bucket_lock\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    rules: [{\n        id: \"Lock all objects for 24 hours\",\n        condition: {\n            maxAgeSeconds: 100,\n            type: \"Age\",\n        },\n        enabled: true,\n        prefix: \"prefix\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_lock = cloudflare.R2BucketLock(\"example_r2_bucket_lock\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    rules=[{\n        \"id\": \"Lock all objects for 24 hours\",\n        \"condition\": {\n            \"max_age_seconds\": 100,\n            \"type\": \"Age\",\n        },\n        \"enabled\": True,\n        \"prefix\": \"prefix\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketLock = new Cloudflare.Index.R2BucketLock(\"example_r2_bucket_lock\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.R2BucketLockRuleArgs\n            {\n                Id = \"Lock all objects for 24 hours\",\n                Condition = new Cloudflare.Inputs.R2BucketLockRuleConditionArgs\n                {\n                    MaxAgeSeconds = 100,\n                    Type = \"Age\",\n                },\n                Enabled = true,\n                Prefix = \"prefix\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2BucketLock(ctx, \"example_r2_bucket_lock\", \u0026cloudflare.R2BucketLockArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tRules: cloudflare.R2BucketLockRuleArray{\n\t\t\t\t\u0026cloudflare.R2BucketLockRuleArgs{\n\t\t\t\t\tId: pulumi.String(\"Lock all objects for 24 hours\"),\n\t\t\t\t\tCondition: \u0026cloudflare.R2BucketLockRuleConditionArgs{\n\t\t\t\t\t\tMaxAgeSeconds: pulumi.Int(100),\n\t\t\t\t\t\tType:          pulumi.String(\"Age\"),\n\t\t\t\t\t},\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tPrefix:  pulumi.String(\"prefix\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2BucketLock;\nimport com.pulumi.cloudflare.R2BucketLockArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLockRuleArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketLockRuleConditionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2BucketLock = new R2BucketLock(\"exampleR2BucketLock\", R2BucketLockArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .rules(R2BucketLockRuleArgs.builder()\n                .id(\"Lock all objects for 24 hours\")\n                .condition(R2BucketLockRuleConditionArgs.builder()\n                    .maxAgeSeconds(100)\n                    .type(\"Age\")\n                    .build())\n                .enabled(true)\n                .prefix(\"prefix\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2BucketLock:\n    type: cloudflare:R2BucketLock\n    name: example_r2_bucket_lock\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      rules:\n        - id: Lock all objects for 24 hours\n          condition:\n            maxAgeSeconds: 100\n            type: Age\n          enabled: true\n          prefix: prefix\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketLockRule:R2BucketLockRule"
                    }
                }
            },
            "required": [
                "bucketName",
                "jurisdiction"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/R2BucketLockRule:R2BucketLockRule"
                    }
                }
            },
            "requiredInputs": [
                "bucketName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2BucketLock resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/R2BucketLockRule:R2BucketLockRule"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2BucketSippy:R2BucketSippy": {
            "description": "Accepted Permissions\n\n- `Workers R2 Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketSippy = new cloudflare.R2BucketSippy(\"example_r2_bucket_sippy\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    destination: {\n        accessKeyId: \"accessKeyId\",\n        cloudProvider: \"r2\",\n        secretAccessKey: \"secretAccessKey\",\n    },\n    source: {\n        accessKeyId: \"accessKeyId\",\n        bucket: \"bucket\",\n        cloudProvider: \"aws\",\n        region: \"region\",\n        secretAccessKey: \"secretAccessKey\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_sippy = cloudflare.R2BucketSippy(\"example_r2_bucket_sippy\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    destination={\n        \"access_key_id\": \"accessKeyId\",\n        \"cloud_provider\": \"r2\",\n        \"secret_access_key\": \"secretAccessKey\",\n    },\n    source={\n        \"access_key_id\": \"accessKeyId\",\n        \"bucket\": \"bucket\",\n        \"cloud_provider\": \"aws\",\n        \"region\": \"region\",\n        \"secret_access_key\": \"secretAccessKey\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketSippy = new Cloudflare.Index.R2BucketSippy(\"example_r2_bucket_sippy\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Destination = new Cloudflare.Inputs.R2BucketSippyDestinationArgs\n        {\n            AccessKeyId = \"accessKeyId\",\n            CloudProvider = \"r2\",\n            SecretAccessKey = \"secretAccessKey\",\n        },\n        Source = new Cloudflare.Inputs.R2BucketSippySourceArgs\n        {\n            AccessKeyId = \"accessKeyId\",\n            Bucket = \"bucket\",\n            CloudProvider = \"aws\",\n            Region = \"region\",\n            SecretAccessKey = \"secretAccessKey\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2BucketSippy(ctx, \"example_r2_bucket_sippy\", \u0026cloudflare.R2BucketSippyArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tDestination: \u0026cloudflare.R2BucketSippyDestinationArgs{\n\t\t\t\tAccessKeyId:     pulumi.String(\"accessKeyId\"),\n\t\t\t\tCloudProvider:   pulumi.String(\"r2\"),\n\t\t\t\tSecretAccessKey: pulumi.String(\"secretAccessKey\"),\n\t\t\t},\n\t\t\tSource: \u0026cloudflare.R2BucketSippySourceArgs{\n\t\t\t\tAccessKeyId:     pulumi.String(\"accessKeyId\"),\n\t\t\t\tBucket:          pulumi.String(\"bucket\"),\n\t\t\t\tCloudProvider:   pulumi.String(\"aws\"),\n\t\t\t\tRegion:          pulumi.String(\"region\"),\n\t\t\t\tSecretAccessKey: pulumi.String(\"secretAccessKey\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2BucketSippy;\nimport com.pulumi.cloudflare.R2BucketSippyArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketSippyDestinationArgs;\nimport com.pulumi.cloudflare.inputs.R2BucketSippySourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2BucketSippy = new R2BucketSippy(\"exampleR2BucketSippy\", R2BucketSippyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .destination(R2BucketSippyDestinationArgs.builder()\n                .accessKeyId(\"accessKeyId\")\n                .cloudProvider(\"r2\")\n                .secretAccessKey(\"secretAccessKey\")\n                .build())\n            .source(R2BucketSippySourceArgs.builder()\n                .accessKeyId(\"accessKeyId\")\n                .bucket(\"bucket\")\n                .cloudProvider(\"aws\")\n                .region(\"region\")\n                .secretAccessKey(\"secretAccessKey\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2BucketSippy:\n    type: cloudflare:R2BucketSippy\n    name: example_r2_bucket_sippy\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      destination:\n        accessKeyId: accessKeyId\n        cloudProvider: r2\n        secretAccessKey: secretAccessKey\n      source:\n        accessKeyId: accessKeyId\n        bucket: bucket\n        cloudProvider: aws\n        region: region\n        secretAccessKey: secretAccessKey\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "destination": {
                    "$ref": "#/types/cloudflare:index/R2BucketSippyDestination:R2BucketSippyDestination",
                    "description": "R2 bucket to copy objects to.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "State of Sippy for this bucket.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/R2BucketSippySource:R2BucketSippySource",
                    "description": "AWS S3 bucket to copy objects from.\n"
                }
            },
            "required": [
                "bucketName",
                "enabled",
                "jurisdiction"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "destination": {
                    "$ref": "#/types/cloudflare:index/R2BucketSippyDestination:R2BucketSippyDestination",
                    "description": "R2 bucket to copy objects to.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "source": {
                    "$ref": "#/types/cloudflare:index/R2BucketSippySource:R2BucketSippySource",
                    "description": "AWS S3 bucket to copy objects from.\n"
                }
            },
            "requiredInputs": [
                "bucketName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2BucketSippy resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "destination": {
                        "$ref": "#/types/cloudflare:index/R2BucketSippyDestination:R2BucketSippyDestination",
                        "description": "R2 bucket to copy objects to.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "State of Sippy for this bucket.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    },
                    "source": {
                        "$ref": "#/types/cloudflare:index/R2BucketSippySource:R2BucketSippySource",
                        "description": "AWS S3 bucket to copy objects from.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2CustomDomain:R2CustomDomain": {
            "description": "Accepted Permissions\n\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2CustomDomain = new cloudflare.R2CustomDomain(\"example_r2_custom_domain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    domain: \"prefix.example-domain.com\",\n    enabled: true,\n    zoneId: \"36ca64a6d92827b8a6b90be344bb1bfd\",\n    ciphers: [\"string\"],\n    minTls: \"1.0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_custom_domain = cloudflare.R2CustomDomain(\"example_r2_custom_domain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    domain=\"prefix.example-domain.com\",\n    enabled=True,\n    zone_id=\"36ca64a6d92827b8a6b90be344bb1bfd\",\n    ciphers=[\"string\"],\n    min_tls=\"1.0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2CustomDomain = new Cloudflare.Index.R2CustomDomain(\"example_r2_custom_domain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Domain = \"prefix.example-domain.com\",\n        Enabled = true,\n        ZoneId = \"36ca64a6d92827b8a6b90be344bb1bfd\",\n        Ciphers = new[]\n        {\n            \"string\",\n        },\n        MinTls = \"1.0\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2CustomDomain(ctx, \"example_r2_custom_domain\", \u0026cloudflare.R2CustomDomainArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tDomain:     pulumi.String(\"prefix.example-domain.com\"),\n\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\tZoneId:     pulumi.String(\"36ca64a6d92827b8a6b90be344bb1bfd\"),\n\t\t\tCiphers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"string\"),\n\t\t\t},\n\t\t\tMinTls: pulumi.String(\"1.0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2CustomDomain;\nimport com.pulumi.cloudflare.R2CustomDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2CustomDomain = new R2CustomDomain(\"exampleR2CustomDomain\", R2CustomDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .domain(\"prefix.example-domain.com\")\n            .enabled(true)\n            .zoneId(\"36ca64a6d92827b8a6b90be344bb1bfd\")\n            .ciphers(\"string\")\n            .minTls(\"1.0\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2CustomDomain:\n    type: cloudflare:R2CustomDomain\n    name: example_r2_custom_domain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      domain: prefix.example-domain.com\n      enabled: true\n      zoneId: 36ca64a6d92827b8a6b90be344bb1bfd\n      ciphers:\n        - string\n      minTls: '1.0'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "ciphers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Name of the custom domain to be added.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable public bucket access at the custom domain. If undefined, the domain will be enabled.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "minTls": {
                    "type": "string",
                    "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n"
                },
                "status": {
                    "$ref": "#/types/cloudflare:index/R2CustomDomainStatus:R2CustomDomainStatus"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Zone ID of the custom domain.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Zone that the custom domain resides in.\n"
                }
            },
            "required": [
                "bucketName",
                "domain",
                "enabled",
                "jurisdiction",
                "status",
                "zoneId",
                "zoneName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "ciphers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Name of the custom domain to be added.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable public bucket access at the custom domain. If undefined, the domain will be enabled.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                },
                "minTls": {
                    "type": "string",
                    "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Zone ID of the custom domain.\n"
                }
            },
            "requiredInputs": [
                "bucketName",
                "domain",
                "enabled",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2CustomDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "ciphers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "Name of the custom domain to be added.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether to enable public bucket access at the custom domain. If undefined, the domain will be enabled.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    },
                    "minTls": {
                        "type": "string",
                        "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n"
                    },
                    "status": {
                        "$ref": "#/types/cloudflare:index/R2CustomDomainStatus:R2CustomDomainStatus"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Zone ID of the custom domain.\n"
                    },
                    "zoneName": {
                        "type": "string",
                        "description": "Zone that the custom domain resides in.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2DataCatalog:R2DataCatalog": {
            "description": "Accepted Permissions\n\n- `Workers R2 Data Catalog Read`\n- `Workers R2 Data Catalog Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2DataCatalog = new cloudflare.R2DataCatalog(\"example_r2_data_catalog\", {\n    accountId: \"0123456789abcdef0123456789abcdef\",\n    bucketName: \"my-data-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_data_catalog = cloudflare.R2DataCatalog(\"example_r2_data_catalog\",\n    account_id=\"0123456789abcdef0123456789abcdef\",\n    bucket_name=\"my-data-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2DataCatalog = new Cloudflare.Index.R2DataCatalog(\"example_r2_data_catalog\", new()\n    {\n        AccountId = \"0123456789abcdef0123456789abcdef\",\n        BucketName = \"my-data-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2DataCatalog(ctx, \"example_r2_data_catalog\", \u0026cloudflare.R2DataCatalogArgs{\n\t\t\tAccountId:  pulumi.String(\"0123456789abcdef0123456789abcdef\"),\n\t\t\tBucketName: pulumi.String(\"my-data-bucket\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2DataCatalog;\nimport com.pulumi.cloudflare.R2DataCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2DataCatalog = new R2DataCatalog(\"exampleR2DataCatalog\", R2DataCatalogArgs.builder()\n            .accountId(\"0123456789abcdef0123456789abcdef\")\n            .bucketName(\"my-data-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2DataCatalog:\n    type: cloudflare:R2DataCatalog\n    name: example_r2_data_catalog\n    properties:\n      accountId: 0123456789abcdef0123456789abcdef\n      bucketName: my-data-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/r2DataCatalog:R2DataCatalog example '\u003caccount_id\u003e/\u003cbucket_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Use this to identify the account.\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "Specifies the associated R2 bucket name.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Specifies the R2 bucket name.\n"
                },
                "credentialStatus": {
                    "type": "string",
                    "description": "Shows the credential configuration status.\nAvailable values: \"present\", \"absent\".\n"
                },
                "maintenanceConfig": {
                    "$ref": "#/types/cloudflare:index/R2DataCatalogMaintenanceConfig:R2DataCatalogMaintenanceConfig",
                    "description": "Configures maintenance for the catalog.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specifies the catalog name (generated from account and bucket name).\n"
                },
                "status": {
                    "type": "string",
                    "description": "Indicates the status of the catalog.\nAvailable values: \"active\", \"inactive\".\n"
                }
            },
            "required": [
                "bucket",
                "bucketName",
                "credentialStatus",
                "maintenanceConfig",
                "name",
                "status"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Use this to identify the account.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Specifies the R2 bucket name.\n"
                }
            },
            "requiredInputs": [
                "bucketName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2DataCatalog resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Use this to identify the account.\n"
                    },
                    "bucket": {
                        "type": "string",
                        "description": "Specifies the associated R2 bucket name.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Specifies the R2 bucket name.\n"
                    },
                    "credentialStatus": {
                        "type": "string",
                        "description": "Shows the credential configuration status.\nAvailable values: \"present\", \"absent\".\n"
                    },
                    "maintenanceConfig": {
                        "$ref": "#/types/cloudflare:index/R2DataCatalogMaintenanceConfig:R2DataCatalogMaintenanceConfig",
                        "description": "Configures maintenance for the catalog.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specifies the catalog name (generated from account and bucket name).\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Indicates the status of the catalog.\nAvailable values: \"active\", \"inactive\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/r2ManagedDomain:R2ManagedDomain": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2ManagedDomain = new cloudflare.R2ManagedDomain(\"example_r2_managed_domain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_managed_domain = cloudflare.R2ManagedDomain(\"example_r2_managed_domain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2ManagedDomain = new Cloudflare.Index.R2ManagedDomain(\"example_r2_managed_domain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewR2ManagedDomain(ctx, \"example_r2_managed_domain\", \u0026cloudflare.R2ManagedDomainArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: pulumi.String(\"example-bucket\"),\n\t\t\tEnabled:    pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.R2ManagedDomain;\nimport com.pulumi.cloudflare.R2ManagedDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleR2ManagedDomain = new R2ManagedDomain(\"exampleR2ManagedDomain\", R2ManagedDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleR2ManagedDomain:\n    type: cloudflare:R2ManagedDomain\n    name: example_r2_managed_domain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      bucketName: example-bucket\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketId": {
                    "type": "string",
                    "description": "Bucket ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "Domain name of the bucket's r2.dev domain.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable public bucket access at the r2.dev domain.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                }
            },
            "required": [
                "bucketId",
                "bucketName",
                "domain",
                "enabled",
                "jurisdiction"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "Name of the bucket.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to enable public bucket access at the r2.dev domain.\n"
                },
                "jurisdiction": {
                    "type": "string",
                    "description": "Jurisdiction of the bucket\n"
                }
            },
            "requiredInputs": [
                "bucketName",
                "enabled"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering R2ManagedDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketId": {
                        "type": "string",
                        "description": "Bucket ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "Domain name of the bucket's r2.dev domain.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether to enable public bucket access at the r2.dev domain.\n"
                    },
                    "jurisdiction": {
                        "type": "string",
                        "description": "Jurisdiction of the bucket\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/rateLimit:RateLimit": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n\u003e \u003cspan pulumi-lang-nodejs=\"`cloudflare.RateLimit`\" pulumi-lang-dotnet=\"`cloudflare.RateLimit`\" pulumi-lang-go=\"`RateLimit`\" pulumi-lang-python=\"`RateLimit`\" pulumi-lang-yaml=\"`cloudflare.RateLimit`\" pulumi-lang-java=\"`cloudflare.RateLimit`\"\u003e`cloudflare.RateLimit`\u003c/span\u003e is in a deprecation phase until June 15th, 2025.\n  During this time period, this resource is still\n  fully supported but you are strongly advised to move to the\n  \u003cspan pulumi-lang-nodejs=\"`cloudflare.Ruleset`\" pulumi-lang-dotnet=\"`cloudflare.Ruleset`\" pulumi-lang-go=\"`Ruleset`\" pulumi-lang-python=\"`Ruleset`\" pulumi-lang-yaml=\"`cloudflare.Ruleset`\" pulumi-lang-java=\"`cloudflare.Ruleset`\"\u003e`cloudflare.Ruleset`\u003c/span\u003e resource. Full details can be found in the\n  developer documentation.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRateLimit = new cloudflare.RateLimit(\"example_rate_limit\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    action: {\n        mode: \"challenge\",\n        response: {\n            body: \"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\",\n            contentType: \"text/xml\",\n        },\n        timeout: 86400,\n    },\n    match: {\n        headers: [{\n            name: \"Cf-Cache-Status\",\n            op: \"ne\",\n            value: \"HIT\",\n        }],\n        request: {\n            methods: [\n                \"GET\",\n                \"POST\",\n            ],\n            schemes: [\n                \"HTTP\",\n                \"HTTPS\",\n            ],\n            url: \"*.example.org/path*\",\n        },\n        response: {\n            originTraffic: true,\n        },\n    },\n    period: 900,\n    threshold: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_rate_limit = cloudflare.RateLimit(\"example_rate_limit\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    action={\n        \"mode\": \"challenge\",\n        \"response\": {\n            \"body\": \"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\",\n            \"content_type\": \"text/xml\",\n        },\n        \"timeout\": 86400,\n    },\n    match={\n        \"headers\": [{\n            \"name\": \"Cf-Cache-Status\",\n            \"op\": \"ne\",\n            \"value\": \"HIT\",\n        }],\n        \"request\": {\n            \"methods\": [\n                \"GET\",\n                \"POST\",\n            ],\n            \"schemes\": [\n                \"HTTP\",\n                \"HTTPS\",\n            ],\n            \"url\": \"*.example.org/path*\",\n        },\n        \"response\": {\n            \"origin_traffic\": True,\n        },\n    },\n    period=900,\n    threshold=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRateLimit = new Cloudflare.Index.RateLimit(\"example_rate_limit\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Action = new Cloudflare.Inputs.RateLimitActionArgs\n        {\n            Mode = \"challenge\",\n            Response = new Cloudflare.Inputs.RateLimitActionResponseArgs\n            {\n                Body = \"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\",\n                ContentType = \"text/xml\",\n            },\n            Timeout = 86400,\n        },\n        Match = new Cloudflare.Inputs.RateLimitMatchArgs\n        {\n            Headers = new[]\n            {\n                new Cloudflare.Inputs.RateLimitMatchHeaderArgs\n                {\n                    Name = \"Cf-Cache-Status\",\n                    Op = \"ne\",\n                    Value = \"HIT\",\n                },\n            },\n            Request = new Cloudflare.Inputs.RateLimitMatchRequestArgs\n            {\n                Methods = new[]\n                {\n                    \"GET\",\n                    \"POST\",\n                },\n                Schemes = new[]\n                {\n                    \"HTTP\",\n                    \"HTTPS\",\n                },\n                Url = \"*.example.org/path*\",\n            },\n            Response = new Cloudflare.Inputs.RateLimitMatchResponseArgs\n            {\n                OriginTraffic = true,\n            },\n        },\n        Period = 900,\n        Threshold = 60,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewRateLimit(ctx, \"example_rate_limit\", \u0026cloudflare.RateLimitArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAction: \u0026cloudflare.RateLimitActionArgs{\n\t\t\t\tMode: pulumi.String(\"challenge\"),\n\t\t\t\tResponse: \u0026cloudflare.RateLimitActionResponseArgs{\n\t\t\t\t\tBody:        pulumi.String(\"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\"),\n\t\t\t\t\tContentType: pulumi.String(\"text/xml\"),\n\t\t\t\t},\n\t\t\t\tTimeout: pulumi.Float64(86400),\n\t\t\t},\n\t\t\tMatch: \u0026cloudflare.RateLimitMatchArgs{\n\t\t\t\tHeaders: cloudflare.RateLimitMatchHeaderArray{\n\t\t\t\t\t\u0026cloudflare.RateLimitMatchHeaderArgs{\n\t\t\t\t\t\tName:  pulumi.String(\"Cf-Cache-Status\"),\n\t\t\t\t\t\tOp:    pulumi.String(\"ne\"),\n\t\t\t\t\t\tValue: pulumi.String(\"HIT\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRequest: \u0026cloudflare.RateLimitMatchRequestArgs{\n\t\t\t\t\tMethods: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GET\"),\n\t\t\t\t\t\tpulumi.String(\"POST\"),\n\t\t\t\t\t},\n\t\t\t\t\tSchemes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"HTTP\"),\n\t\t\t\t\t\tpulumi.String(\"HTTPS\"),\n\t\t\t\t\t},\n\t\t\t\t\tUrl: pulumi.String(\"*.example.org/path*\"),\n\t\t\t\t},\n\t\t\t\tResponse: \u0026cloudflare.RateLimitMatchResponseArgs{\n\t\t\t\t\tOriginTraffic: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPeriod:    pulumi.Float64(900),\n\t\t\tThreshold: pulumi.Float64(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.RateLimit;\nimport com.pulumi.cloudflare.RateLimitArgs;\nimport com.pulumi.cloudflare.inputs.RateLimitActionArgs;\nimport com.pulumi.cloudflare.inputs.RateLimitActionResponseArgs;\nimport com.pulumi.cloudflare.inputs.RateLimitMatchArgs;\nimport com.pulumi.cloudflare.inputs.RateLimitMatchRequestArgs;\nimport com.pulumi.cloudflare.inputs.RateLimitMatchResponseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleRateLimit = new RateLimit(\"exampleRateLimit\", RateLimitArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .action(RateLimitActionArgs.builder()\n                .mode(\"challenge\")\n                .response(RateLimitActionResponseArgs.builder()\n                    .body(\"\u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\")\n                    .contentType(\"text/xml\")\n                    .build())\n                .timeout(86400.0)\n                .build())\n            .match(RateLimitMatchArgs.builder()\n                .headers(RateLimitMatchHeaderArgs.builder()\n                    .name(\"Cf-Cache-Status\")\n                    .op(\"ne\")\n                    .value(\"HIT\")\n                    .build())\n                .request(RateLimitMatchRequestArgs.builder()\n                    .methods(                    \n                        \"GET\",\n                        \"POST\")\n                    .schemes(                    \n                        \"HTTP\",\n                        \"HTTPS\")\n                    .url(\"*.example.org/path*\")\n                    .build())\n                .response(RateLimitMatchResponseArgs.builder()\n                    .originTraffic(true)\n                    .build())\n                .build())\n            .period(900.0)\n            .threshold(60.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleRateLimit:\n    type: cloudflare:RateLimit\n    name: example_rate_limit\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      action:\n        mode: challenge\n        response:\n          body: \u003cerror\u003eThis request has been rate-limited.\u003c/error\u003e\n          contentType: text/xml\n        timeout: 86400\n      match:\n        headers:\n          - name: Cf-Cache-Status\n            op: ne\n            value: HIT\n        request:\n          methods:\n            - GET\n            - POST\n          schemes:\n            - HTTP\n            - HTTPS\n          url: '*.example.org/path*'\n        response:\n          originTraffic: true\n      period: 900\n      threshold: 60\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/rateLimit:RateLimit example '\u003czone_id\u003e/\u003crate_limit_id\u003e'\n```\n\n",
            "properties": {
                "action": {
                    "$ref": "#/types/cloudflare:index/RateLimitAction:RateLimitAction",
                    "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                },
                "bypasses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RateLimitBypass:RateLimitBypass"
                    },
                    "description": "Criteria specifying when the current rate limit should be bypassed. You can specify that the rate limit should not apply to one or more URLs.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "When true, indicates that the rate limit is currently disabled.\n"
                },
                "match": {
                    "$ref": "#/types/cloudflare:index/RateLimitMatch:RateLimitMatch",
                    "description": "Determines which traffic the rate limit counts towards the threshold.\n"
                },
                "period": {
                    "type": "number",
                    "description": "The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action.\n"
                },
                "threshold": {
                    "type": "number",
                    "description": "The threshold that will trigger the configured mitigation action. Configure this value along with the \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e property to establish a threshold per period.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "action",
                "bypasses",
                "description",
                "disabled",
                "match",
                "period",
                "threshold"
            ],
            "inputProperties": {
                "action": {
                    "$ref": "#/types/cloudflare:index/RateLimitAction:RateLimitAction",
                    "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                },
                "match": {
                    "$ref": "#/types/cloudflare:index/RateLimitMatch:RateLimitMatch",
                    "description": "Determines which traffic the rate limit counts towards the threshold.\n"
                },
                "period": {
                    "type": "number",
                    "description": "The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action.\n"
                },
                "threshold": {
                    "type": "number",
                    "description": "The threshold that will trigger the configured mitigation action. Configure this value along with the \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e property to establish a threshold per period.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "action",
                "match",
                "period",
                "threshold"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RateLimit resources.\n",
                "properties": {
                    "action": {
                        "$ref": "#/types/cloudflare:index/RateLimitAction:RateLimitAction",
                        "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                    },
                    "bypasses": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/RateLimitBypass:RateLimitBypass"
                        },
                        "description": "Criteria specifying when the current rate limit should be bypassed. You can specify that the rate limit should not apply to one or more URLs.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                    },
                    "disabled": {
                        "type": "boolean",
                        "description": "When true, indicates that the rate limit is currently disabled.\n"
                    },
                    "match": {
                        "$ref": "#/types/cloudflare:index/RateLimitMatch:RateLimitMatch",
                        "description": "Determines which traffic the rate limit counts towards the threshold.\n"
                    },
                    "period": {
                        "type": "number",
                        "description": "The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action.\n"
                    },
                    "threshold": {
                        "type": "number",
                        "description": "The threshold that will trigger the configured mitigation action. Configure this value along with the \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e property to establish a threshold per period.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/record:Record": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsRecord = new cloudflare.DnsRecord(\"example_dns_record\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"example.com\",\n    ttl: 3600,\n    type: \"A\",\n    comment: \"Domain verification record\",\n    content: \"198.51.100.4\",\n    privateRouting: true,\n    proxied: true,\n    settings: {\n        ipv4Only: true,\n        ipv6Only: true,\n    },\n    tags: [\"owner:dns-team\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_record = cloudflare.DnsRecord(\"example_dns_record\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"example.com\",\n    ttl=3600,\n    type=\"A\",\n    comment=\"Domain verification record\",\n    content=\"198.51.100.4\",\n    private_routing=True,\n    proxied=True,\n    settings={\n        \"ipv4_only\": True,\n        \"ipv6_only\": True,\n    },\n    tags=[\"owner:dns-team\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsRecord = new Cloudflare.Index.DnsRecord(\"example_dns_record\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"example.com\",\n        Ttl = 3600,\n        Type = \"A\",\n        Comment = \"Domain verification record\",\n        Content = \"198.51.100.4\",\n        PrivateRouting = true,\n        Proxied = true,\n        Settings = new Cloudflare.Inputs.DnsRecordSettingsArgs\n        {\n            Ipv4Only = true,\n            Ipv6Only = true,\n        },\n        Tags = new[]\n        {\n            \"owner:dns-team\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewDnsRecord(ctx, \"example_dns_record\", \u0026cloudflare.DnsRecordArgs{\n\t\t\tZoneId:         pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:           pulumi.String(\"example.com\"),\n\t\t\tTtl:            pulumi.Float64(3600),\n\t\t\tType:           pulumi.String(\"A\"),\n\t\t\tComment:        pulumi.String(\"Domain verification record\"),\n\t\t\tContent:        pulumi.String(\"198.51.100.4\"),\n\t\t\tPrivateRouting: pulumi.Bool(true),\n\t\t\tProxied:        pulumi.Bool(true),\n\t\t\tSettings: \u0026cloudflare.DnsRecordSettingsArgs{\n\t\t\t\tIpv4Only: pulumi.Bool(true),\n\t\t\t\tIpv6Only: pulumi.Bool(true),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"owner:dns-team\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.DnsRecord;\nimport com.pulumi.cloudflare.DnsRecordArgs;\nimport com.pulumi.cloudflare.inputs.DnsRecordSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleDnsRecord = new DnsRecord(\"exampleDnsRecord\", DnsRecordArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"example.com\")\n            .ttl(3600.0)\n            .type(\"A\")\n            .comment(\"Domain verification record\")\n            .content(\"198.51.100.4\")\n            .privateRouting(true)\n            .proxied(true)\n            .settings(DnsRecordSettingsArgs.builder()\n                .ipv4Only(true)\n                .ipv6Only(true)\n                .build())\n            .tags(\"owner:dns-team\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleDnsRecord:\n    type: cloudflare:DnsRecord\n    name: example_dns_record\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: example.com\n      ttl: 3600\n      type: A\n      comment: Domain verification record\n      content: 198.51.100.4\n      privateRouting: true\n      proxied: true\n      settings:\n        ipv4Only: true\n        ipv6Only: true\n      tags:\n        - owner:dns-team\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/record:Record example '\u003czone_id\u003e/\u003cdns_record_id\u003e'\n```\n\n",
            "properties": {
                "comment": {
                    "type": "string",
                    "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                },
                "commentModifiedOn": {
                    "type": "string",
                    "description": "When the record comment was last modified. Omitted if there is no comment.\n"
                },
                "content": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the record was created.\n"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/RecordData:RecordData",
                    "description": "Components of a CAA record.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "Extra Cloudflare-specific information about the record.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the record was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex) in Punycode.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records; unused by other record types. Records with lower priorities are preferred.\n"
                },
                "privateRouting": {
                    "type": "boolean",
                    "description": "Enables private network routing to the origin.\n"
                },
                "proxiable": {
                    "type": "boolean",
                    "description": "Whether the record can be proxied by Cloudflare or not.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/RecordSettings:RecordSettings",
                    "description": "Settings for the DNS record.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                },
                "tagsModifiedOn": {
                    "type": "string",
                    "description": "When the record tags were last modified. Omitted if there are no tags.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "commentModifiedOn",
                "content",
                "createdOn",
                "meta",
                "modifiedOn",
                "name",
                "proxiable",
                "proxied",
                "settings",
                "tags",
                "tagsModifiedOn",
                "ttl",
                "type"
            ],
            "inputProperties": {
                "comment": {
                    "type": "string",
                    "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                },
                "content": {
                    "type": "string",
                    "description": "A valid IPv4 address.\n"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/RecordData:RecordData",
                    "description": "Components of a CAA record.\n"
                },
                "name": {
                    "type": "string",
                    "description": "DNS record name (or @ for the zone apex) in Punycode.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "Required for MX, SRV and URI records; unused by other record types. Records with lower priorities are preferred.\n"
                },
                "privateRouting": {
                    "type": "boolean",
                    "description": "Enables private network routing to the origin.\n"
                },
                "proxied": {
                    "type": "boolean",
                    "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/RecordSettings:RecordSettings",
                    "description": "Settings for the DNS record.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                },
                "ttl": {
                    "type": "number",
                    "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "name",
                "ttl",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Record resources.\n",
                "properties": {
                    "comment": {
                        "type": "string",
                        "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n"
                    },
                    "commentModifiedOn": {
                        "type": "string",
                        "description": "When the record comment was last modified. Omitted if there is no comment.\n"
                    },
                    "content": {
                        "type": "string",
                        "description": "A valid IPv4 address.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the record was created.\n"
                    },
                    "data": {
                        "$ref": "#/types/cloudflare:index/RecordData:RecordData",
                        "description": "Components of a CAA record.\n"
                    },
                    "meta": {
                        "type": "string",
                        "description": "Extra Cloudflare-specific information about the record.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the record was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "DNS record name (or @ for the zone apex) in Punycode.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "Required for MX, SRV and URI records; unused by other record types. Records with lower priorities are preferred.\n"
                    },
                    "privateRouting": {
                        "type": "boolean",
                        "description": "Enables private network routing to the origin.\n"
                    },
                    "proxiable": {
                        "type": "boolean",
                        "description": "Whether the record can be proxied by Cloudflare or not.\n"
                    },
                    "proxied": {
                        "type": "boolean",
                        "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/RecordSettings:RecordSettings",
                        "description": "Settings for the DNS record.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n"
                    },
                    "tagsModifiedOn": {
                        "type": "string",
                        "description": "When the record tags were last modified. Omitted if there are no tags.\n"
                    },
                    "ttl": {
                        "type": "number",
                        "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/record:Record"
                }
            ],
            "deprecationMessage": "cloudflare.index/record.Record has been deprecated in favor of cloudflare.index/dnsrecord.DnsRecord"
        },
        "cloudflare:index/regionalHostname:RegionalHostname": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegionalHostname = new cloudflare.RegionalHostname(\"example_regional_hostname\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"foo.example.com\",\n    regionKey: \"ca\",\n    routing: \"dns\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_regional_hostname = cloudflare.RegionalHostname(\"example_regional_hostname\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"foo.example.com\",\n    region_key=\"ca\",\n    routing=\"dns\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegionalHostname = new Cloudflare.Index.RegionalHostname(\"example_regional_hostname\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"foo.example.com\",\n        RegionKey = \"ca\",\n        Routing = \"dns\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewRegionalHostname(ctx, \"example_regional_hostname\", \u0026cloudflare.RegionalHostnameArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostname:  pulumi.String(\"foo.example.com\"),\n\t\t\tRegionKey: pulumi.String(\"ca\"),\n\t\t\tRouting:   pulumi.String(\"dns\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.RegionalHostname;\nimport com.pulumi.cloudflare.RegionalHostnameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleRegionalHostname = new RegionalHostname(\"exampleRegionalHostname\", RegionalHostnameArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"foo.example.com\")\n            .regionKey(\"ca\")\n            .routing(\"dns\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleRegionalHostname:\n    type: cloudflare:RegionalHostname\n    name: example_regional_hostname\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      hostname: foo.example.com\n      regionKey: ca\n      routing: dns\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/regionalHostname:RegionalHostname example '\u003czone_id\u003e/\u003chostname\u003e'\n```\n\n",
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "When the regional hostname was created\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n"
                },
                "regionKey": {
                    "type": "string",
                    "description": "Identifying key for the region\n"
                },
                "routing": {
                    "type": "string",
                    "description": "Configure which routing method to use for the regional hostname\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdOn",
                "hostname",
                "regionKey",
                "routing"
            ],
            "inputProperties": {
                "hostname": {
                    "type": "string",
                    "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n"
                },
                "regionKey": {
                    "type": "string",
                    "description": "Identifying key for the region\n"
                },
                "routing": {
                    "type": "string",
                    "description": "Configure which routing method to use for the regional hostname\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "hostname",
                "regionKey"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RegionalHostname resources.\n",
                "properties": {
                    "createdOn": {
                        "type": "string",
                        "description": "When the regional hostname was created\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n"
                    },
                    "regionKey": {
                        "type": "string",
                        "description": "Identifying key for the region\n"
                    },
                    "routing": {
                        "type": "string",
                        "description": "Configure which routing method to use for the regional hostname\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/regionalTieredCache:RegionalTieredCache": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegionalTieredCache = new cloudflare.RegionalTieredCache(\"example_regional_tiered_cache\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_regional_tiered_cache = cloudflare.RegionalTieredCache(\"example_regional_tiered_cache\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegionalTieredCache = new Cloudflare.Index.RegionalTieredCache(\"example_regional_tiered_cache\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = \"on\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewRegionalTieredCache(ctx, \"example_regional_tiered_cache\", \u0026cloudflare.RegionalTieredCacheArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue:  pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.RegionalTieredCache;\nimport com.pulumi.cloudflare.RegionalTieredCacheArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleRegionalTieredCache = new RegionalTieredCache(\"exampleRegionalTieredCache\", RegionalTieredCacheArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(\"on\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleRegionalTieredCache:\n    type: cloudflare:RegionalTieredCache\n    name: example_regional_tiered_cache\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/regionalTieredCache:RegionalTieredCache example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Whether the setting is editable.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time this setting was modified.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the Regional Tiered Cache zone setting.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "editable",
                "modifiedOn",
                "value",
                "zoneId"
            ],
            "inputProperties": {
                "value": {
                    "type": "string",
                    "description": "Value of the Regional Tiered Cache zone setting.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RegionalTieredCache resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Whether the setting is editable.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time this setting was modified.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "Value of the Regional Tiered Cache zone setting.\nAvailable values: \"on\", \"off\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/registrarDomain:RegistrarDomain": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegistrarDomain = new cloudflare.RegistrarDomain(\"example_registrar_domain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    domainName: \"example.com\",\n    autoRenew: true,\n    locked: false,\n    privacy: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_registrar_domain = cloudflare.RegistrarDomain(\"example_registrar_domain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    domain_name=\"example.com\",\n    auto_renew=True,\n    locked=False,\n    privacy=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegistrarDomain = new Cloudflare.Index.RegistrarDomain(\"example_registrar_domain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DomainName = \"example.com\",\n        AutoRenew = true,\n        Locked = false,\n        Privacy = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewRegistrarDomain(ctx, \"example_registrar_domain\", \u0026cloudflare.RegistrarDomainArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDomainName: pulumi.String(\"example.com\"),\n\t\t\tAutoRenew:  pulumi.Bool(true),\n\t\t\tLocked:     pulumi.Bool(false),\n\t\t\tPrivacy:    pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.RegistrarDomain;\nimport com.pulumi.cloudflare.RegistrarDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleRegistrarDomain = new RegistrarDomain(\"exampleRegistrarDomain\", RegistrarDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .domainName(\"example.com\")\n            .autoRenew(true)\n            .locked(false)\n            .privacy(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleRegistrarDomain:\n    type: cloudflare:RegistrarDomain\n    name: example_registrar_domain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      domainName: example.com\n      autoRenew: true\n      locked: false\n      privacy: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "autoRenew": {
                    "type": "boolean",
                    "description": "Auto-renew controls whether subscription is automatically renewed upon domain expiration.\n"
                },
                "domainName": {
                    "type": "string",
                    "description": "Fully qualified domain name (FQDN) including the extension\n(e.g., `example.com`, `mybrand.app`). The domain name uniquely\nidentifies a registration — the same domain cannot be registered\ntwice, making it a natural idempotency key for registration requests.\n"
                },
                "locked": {
                    "type": "boolean",
                    "description": "Shows whether a registrar lock is in place for a domain.\n"
                },
                "privacy": {
                    "type": "boolean",
                    "description": "Privacy option controls redacting WHOIS information.\n"
                }
            },
            "required": [
                "domainName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "autoRenew": {
                    "type": "boolean",
                    "description": "Auto-renew controls whether subscription is automatically renewed upon domain expiration.\n"
                },
                "domainName": {
                    "type": "string",
                    "description": "Fully qualified domain name (FQDN) including the extension\n(e.g., `example.com`, `mybrand.app`). The domain name uniquely\nidentifies a registration — the same domain cannot be registered\ntwice, making it a natural idempotency key for registration requests.\n"
                },
                "locked": {
                    "type": "boolean",
                    "description": "Shows whether a registrar lock is in place for a domain.\n"
                },
                "privacy": {
                    "type": "boolean",
                    "description": "Privacy option controls redacting WHOIS information.\n"
                }
            },
            "requiredInputs": [
                "domainName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RegistrarDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "autoRenew": {
                        "type": "boolean",
                        "description": "Auto-renew controls whether subscription is automatically renewed upon domain expiration.\n"
                    },
                    "domainName": {
                        "type": "string",
                        "description": "Fully qualified domain name (FQDN) including the extension\n(e.g., `example.com`, `mybrand.app`). The domain name uniquely\nidentifies a registration — the same domain cannot be registered\ntwice, making it a natural idempotency key for registration requests.\n"
                    },
                    "locked": {
                        "type": "boolean",
                        "description": "Shows whether a registrar lock is in place for a domain.\n"
                    },
                    "privacy": {
                        "type": "boolean",
                        "description": "Privacy option controls redacting WHOIS information.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/riskBehavior:RiskBehavior": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustRiskBehavior = new cloudflare.ZeroTrustRiskBehavior(\"example_zero_trust_risk_behavior\", {\n    accountId: \"account_id\",\n    behaviors: {\n        foo: {\n            enabled: true,\n            riskLevel: \"low\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_risk_behavior = cloudflare.ZeroTrustRiskBehavior(\"example_zero_trust_risk_behavior\",\n    account_id=\"account_id\",\n    behaviors={\n        \"foo\": {\n            \"enabled\": True,\n            \"risk_level\": \"low\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustRiskBehavior = new Cloudflare.Index.ZeroTrustRiskBehavior(\"example_zero_trust_risk_behavior\", new()\n    {\n        AccountId = \"account_id\",\n        Behaviors = \n        {\n            { \"foo\", new Cloudflare.Inputs.ZeroTrustRiskBehaviorBehaviorsArgs\n            {\n                Enabled = true,\n                RiskLevel = \"low\",\n            } },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustRiskBehavior(ctx, \"example_zero_trust_risk_behavior\", \u0026cloudflare.ZeroTrustRiskBehaviorArgs{\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tBehaviors: cloudflare.ZeroTrustRiskBehaviorBehaviorsMap{\n\t\t\t\t\"foo\": \u0026cloudflare.ZeroTrustRiskBehaviorBehaviorsArgs{\n\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t\tRiskLevel: pulumi.String(\"low\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustRiskBehavior;\nimport com.pulumi.cloudflare.ZeroTrustRiskBehaviorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustRiskBehavior = new ZeroTrustRiskBehavior(\"exampleZeroTrustRiskBehavior\", ZeroTrustRiskBehaviorArgs.builder()\n            .accountId(\"account_id\")\n            .behaviors(Map.of(\"foo\", ZeroTrustRiskBehaviorBehaviorsArgs.builder()\n                .enabled(true)\n                .riskLevel(\"low\")\n                .build()))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustRiskBehavior:\n    type: cloudflare:ZeroTrustRiskBehavior\n    name: example_zero_trust_risk_behavior\n    properties:\n      accountId: account_id\n      behaviors:\n        foo:\n          enabled: true\n          riskLevel: low\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "behaviors": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/RiskBehaviorBehaviors:RiskBehaviorBehaviors"
                    }
                }
            },
            "required": [
                "behaviors"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "behaviors": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/RiskBehaviorBehaviors:RiskBehaviorBehaviors"
                    }
                }
            },
            "requiredInputs": [
                "behaviors"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RiskBehavior resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "behaviors": {
                        "type": "object",
                        "additionalProperties": {
                            "$ref": "#/types/cloudflare:index/RiskBehaviorBehaviors:RiskBehaviorBehaviors"
                        }
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/riskBehavior:RiskBehavior"
                }
            ],
            "deprecationMessage": "cloudflare.index/riskbehavior.RiskBehavior has been deprecated in favor of cloudflare.index/zerotrustriskbehavior.ZeroTrustRiskBehavior"
        },
        "cloudflare:index/ruleset:Ruleset": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRuleset = new cloudflare.Ruleset(\"example_ruleset\", {\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    name: \"My ruleset\",\n    phase: \"http_request_firewall_custom\",\n    kind: \"root\",\n    description: \"A description for my ruleset.\",\n    rules: [{\n        description: \"Block the request.\",\n        expression: \"ip.src ne 1.1.1.1\",\n        action: \"block\",\n        ref: \"my_rule\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ruleset = cloudflare.Ruleset(\"example_ruleset\",\n    zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    name=\"My ruleset\",\n    phase=\"http_request_firewall_custom\",\n    kind=\"root\",\n    description=\"A description for my ruleset.\",\n    rules=[{\n        \"description\": \"Block the request.\",\n        \"expression\": \"ip.src ne 1.1.1.1\",\n        \"action\": \"block\",\n        \"ref\": \"my_rule\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRuleset = new Cloudflare.Index.Ruleset(\"example_ruleset\", new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        Name = \"My ruleset\",\n        Phase = \"http_request_firewall_custom\",\n        Kind = \"root\",\n        Description = \"A description for my ruleset.\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.RulesetRuleArgs\n            {\n                Description = \"Block the request.\",\n                Expression = \"ip.src ne 1.1.1.1\",\n                Action = \"block\",\n                Ref = \"my_rule\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewRuleset(ctx, \"example_ruleset\", \u0026cloudflare.RulesetArgs{\n\t\t\tZoneId:      pulumi.String(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tName:        pulumi.String(\"My ruleset\"),\n\t\t\tPhase:       pulumi.String(\"http_request_firewall_custom\"),\n\t\t\tKind:        pulumi.String(\"root\"),\n\t\t\tDescription: pulumi.String(\"A description for my ruleset.\"),\n\t\t\tRules: cloudflare.RulesetRuleArray{\n\t\t\t\t\u0026cloudflare.RulesetRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(\"Block the request.\"),\n\t\t\t\t\tExpression:  pulumi.String(\"ip.src ne 1.1.1.1\"),\n\t\t\t\t\tAction:      pulumi.String(\"block\"),\n\t\t\t\t\tRef:         pulumi.String(\"my_rule\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Ruleset;\nimport com.pulumi.cloudflare.RulesetArgs;\nimport com.pulumi.cloudflare.inputs.RulesetRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleRuleset = new Ruleset(\"exampleRuleset\", RulesetArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .name(\"My ruleset\")\n            .phase(\"http_request_firewall_custom\")\n            .kind(\"root\")\n            .description(\"A description for my ruleset.\")\n            .rules(RulesetRuleArgs.builder()\n                .description(\"Block the request.\")\n                .expression(\"ip.src ne 1.1.1.1\")\n                .action(\"block\")\n                .ref(\"my_rule\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleRuleset:\n    type: cloudflare:Ruleset\n    name: example_ruleset\n    properties:\n      zoneId: 9f1839b6152d298aca64c4e906b6d074\n      name: My ruleset\n      phase: http_request_firewall_custom\n      kind: root\n      description: A description for my ruleset.\n      rules:\n        - description: Block the request.\n          expression: ip.src ne 1.1.1.1\n          action: block\n          ref: my_rule\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/ruleset:Ruleset example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cruleset_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The unique ID of the account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative description of the ruleset.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of the ruleset.\nAvailable values: \"managed\", \"custom\", \"root\", \"zone\".\n"
                },
                "lastUpdated": {
                    "type": "string",
                    "description": "The timestamp of when the ruleset was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The human-readable name of the ruleset.\n"
                },
                "phase": {
                    "type": "string",
                    "description": "The phase of the ruleset.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*cache*settings\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit*ratelimit\".\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRule:RulesetRule"
                    },
                    "description": "The list of rules in the ruleset.\n"
                },
                "version": {
                    "type": "string",
                    "description": "The version of the ruleset.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "required": [
                "description",
                "kind",
                "lastUpdated",
                "name",
                "phase",
                "rules",
                "version"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The unique ID of the account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative description of the ruleset.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of the ruleset.\nAvailable values: \"managed\", \"custom\", \"root\", \"zone\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "The human-readable name of the ruleset.\n"
                },
                "phase": {
                    "type": "string",
                    "description": "The phase of the ruleset.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*cache*settings\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit*ratelimit\".\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/RulesetRule:RulesetRule"
                    },
                    "description": "The list of rules in the ruleset.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "kind",
                "name",
                "phase"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Ruleset resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The unique ID of the account.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative description of the ruleset.\n"
                    },
                    "kind": {
                        "type": "string",
                        "description": "The kind of the ruleset.\nAvailable values: \"managed\", \"custom\", \"root\", \"zone\".\n"
                    },
                    "lastUpdated": {
                        "type": "string",
                        "description": "The timestamp of when the ruleset was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The human-readable name of the ruleset.\n"
                    },
                    "phase": {
                        "type": "string",
                        "description": "The phase of the ruleset.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*cache*settings\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit*ratelimit\".\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/RulesetRule:RulesetRule"
                        },
                        "description": "The list of rules in the ruleset.\n"
                    },
                    "version": {
                        "type": "string",
                        "description": "The version of the ruleset.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/schemaValidationOperationSettings:SchemaValidationOperationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationOperationSettings = new cloudflare.SchemaValidationOperationSettings(\"example_schema_validation_operation_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    operationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    mitigationAction: \"block\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_operation_settings = cloudflare.SchemaValidationOperationSettings(\"example_schema_validation_operation_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    operation_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    mitigation_action=\"block\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationOperationSettings = new Cloudflare.Index.SchemaValidationOperationSettings(\"example_schema_validation_operation_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        OperationId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        MitigationAction = \"block\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSchemaValidationOperationSettings(ctx, \"example_schema_validation_operation_settings\", \u0026cloudflare.SchemaValidationOperationSettingsArgs{\n\t\t\tZoneId:           pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOperationId:      pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tMitigationAction: pulumi.String(\"block\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.SchemaValidationOperationSettings;\nimport com.pulumi.cloudflare.SchemaValidationOperationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSchemaValidationOperationSettings = new SchemaValidationOperationSettings(\"exampleSchemaValidationOperationSettings\", SchemaValidationOperationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .operationId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .mitigationAction(\"block\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSchemaValidationOperationSettings:\n    type: cloudflare:SchemaValidationOperationSettings\n    name: example_schema_validation_operation_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      operationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      mitigationAction: block\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "mitigationAction": {
                    "type": "string",
                    "description": "When set, this applies a mitigation action to this operation\n\n  - `\"log\"` - log request when request does not conform to schema for this operation\n  - `\"block\"` - deny access to the site when request does not conform to schema for this operation\n  - `\"none\"` - will skip mitigation for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e - clears any mitigation action\nAvailable values: \"log\", \"block\", \"none\"."
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "mitigationAction",
                "operationId"
            ],
            "inputProperties": {
                "mitigationAction": {
                    "type": "string",
                    "description": "When set, this applies a mitigation action to this operation\n\n  - `\"log\"` - log request when request does not conform to schema for this operation\n  - `\"block\"` - deny access to the site when request does not conform to schema for this operation\n  - `\"none\"` - will skip mitigation for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e - clears any mitigation action\nAvailable values: \"log\", \"block\", \"none\"."
                },
                "operationId": {
                    "type": "string",
                    "description": "UUID."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "mitigationAction",
                "operationId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SchemaValidationOperationSettings resources.\n",
                "properties": {
                    "mitigationAction": {
                        "type": "string",
                        "description": "When set, this applies a mitigation action to this operation\n\n  - `\"log\"` - log request when request does not conform to schema for this operation\n  - `\"block\"` - deny access to the site when request does not conform to schema for this operation\n  - `\"none\"` - will skip mitigation for this operation\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e - clears any mitigation action\nAvailable values: \"log\", \"block\", \"none\"."
                    },
                    "operationId": {
                        "type": "string",
                        "description": "UUID."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/schemaValidationSchemas:SchemaValidationSchemas": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationSchemas = new cloudflare.SchemaValidationSchemas(\"example_schema_validation_schemas\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    kind: \"openapi_v3\",\n    name: \"petstore schema\",\n    source: \"\u003cschema file contents\u003e\",\n    validationEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_schemas = cloudflare.SchemaValidationSchemas(\"example_schema_validation_schemas\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    kind=\"openapi_v3\",\n    name=\"petstore schema\",\n    source=\"\u003cschema file contents\u003e\",\n    validation_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationSchemas = new Cloudflare.Index.SchemaValidationSchemas(\"example_schema_validation_schemas\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Kind = \"openapi_v3\",\n        Name = \"petstore schema\",\n        Source = \"\u003cschema file contents\u003e\",\n        ValidationEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSchemaValidationSchemas(ctx, \"example_schema_validation_schemas\", \u0026cloudflare.SchemaValidationSchemasArgs{\n\t\t\tZoneId:            pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tKind:              pulumi.String(\"openapi_v3\"),\n\t\t\tName:              pulumi.String(\"petstore schema\"),\n\t\t\tSource:            pulumi.String(\"\u003cschema file contents\u003e\"),\n\t\t\tValidationEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.SchemaValidationSchemas;\nimport com.pulumi.cloudflare.SchemaValidationSchemasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSchemaValidationSchemas = new SchemaValidationSchemas(\"exampleSchemaValidationSchemas\", SchemaValidationSchemasArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .kind(\"openapi_v3\")\n            .name(\"petstore schema\")\n            .source(\"\u003cschema file contents\u003e\")\n            .validationEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSchemaValidationSchemas:\n    type: cloudflare:SchemaValidationSchemas\n    name: example_schema_validation_schemas\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      kind: openapi_v3\n      name: petstore schema\n      source: \u003cschema file contents\u003e\n      validationEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/schemaValidationSchemas:SchemaValidationSchemas example '\u003czone_id\u003e/\u003cschema_id\u003e'\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of the schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the schema\n"
                },
                "schemaId": {
                    "type": "string",
                    "description": "A unique identifier of this schema\n"
                },
                "source": {
                    "type": "string",
                    "description": "The raw schema, e.g., the OpenAPI schema, either as JSON or YAML\n"
                },
                "validationEnabled": {
                    "type": "boolean",
                    "description": "An indicator if this schema is enabled\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdAt",
                "kind",
                "name",
                "schemaId",
                "source",
                "validationEnabled"
            ],
            "inputProperties": {
                "kind": {
                    "type": "string",
                    "description": "The kind of the schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the schema\n"
                },
                "source": {
                    "type": "string",
                    "description": "The raw schema, e.g., the OpenAPI schema, either as JSON or YAML\n"
                },
                "validationEnabled": {
                    "type": "boolean",
                    "description": "An indicator if this schema is enabled\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "kind",
                "name",
                "source",
                "validationEnabled"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SchemaValidationSchemas resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string"
                    },
                    "kind": {
                        "type": "string",
                        "description": "The kind of the schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A human-readable name for the schema\n"
                    },
                    "schemaId": {
                        "type": "string",
                        "description": "A unique identifier of this schema\n"
                    },
                    "source": {
                        "type": "string",
                        "description": "The raw schema, e.g., the OpenAPI schema, either as JSON or YAML\n"
                    },
                    "validationEnabled": {
                        "type": "boolean",
                        "description": "An indicator if this schema is enabled\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/schemaValidationSettings:SchemaValidationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationSettings = new cloudflare.SchemaValidationSettings(\"example_schema_validation_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    validationDefaultMitigationAction: \"block\",\n    validationOverrideMitigationAction: \"none\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_settings = cloudflare.SchemaValidationSettings(\"example_schema_validation_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    validation_default_mitigation_action=\"block\",\n    validation_override_mitigation_action=\"none\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationSettings = new Cloudflare.Index.SchemaValidationSettings(\"example_schema_validation_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ValidationDefaultMitigationAction = \"block\",\n        ValidationOverrideMitigationAction = \"none\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSchemaValidationSettings(ctx, \"example_schema_validation_settings\", \u0026cloudflare.SchemaValidationSettingsArgs{\n\t\t\tZoneId:                             pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValidationDefaultMitigationAction:  pulumi.String(\"block\"),\n\t\t\tValidationOverrideMitigationAction: pulumi.String(\"none\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.SchemaValidationSettings;\nimport com.pulumi.cloudflare.SchemaValidationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSchemaValidationSettings = new SchemaValidationSettings(\"exampleSchemaValidationSettings\", SchemaValidationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .validationDefaultMitigationAction(\"block\")\n            .validationOverrideMitigationAction(\"none\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSchemaValidationSettings:\n    type: cloudflare:SchemaValidationSettings\n    name: example_schema_validation_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      validationDefaultMitigationAction: block\n      validationOverrideMitigationAction: none\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "validationDefaultMitigationAction": {
                    "type": "string",
                    "description": "The default mitigation action used\nMitigation actions are as follows:\n\n  - `\"log\"` - log request when request does not conform to schema\n  - `\"block\"` - deny access to the site when request does not conform to schema\n  - `\"none\"` - skip running schema validation\nAvailable values: \"none\", \"log\", \"block\"."
                },
                "validationOverrideMitigationAction": {
                    "type": "string",
                    "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `\"none\"` - skip running schema validation entirely for the request\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e - clears any existing override\nAvailable values: \"none\"."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "validationDefaultMitigationAction"
            ],
            "inputProperties": {
                "validationDefaultMitigationAction": {
                    "type": "string",
                    "description": "The default mitigation action used\nMitigation actions are as follows:\n\n  - `\"log\"` - log request when request does not conform to schema\n  - `\"block\"` - deny access to the site when request does not conform to schema\n  - `\"none\"` - skip running schema validation\nAvailable values: \"none\", \"log\", \"block\"."
                },
                "validationOverrideMitigationAction": {
                    "type": "string",
                    "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `\"none\"` - skip running schema validation entirely for the request\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e - clears any existing override\nAvailable values: \"none\"."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "validationDefaultMitigationAction"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SchemaValidationSettings resources.\n",
                "properties": {
                    "validationDefaultMitigationAction": {
                        "type": "string",
                        "description": "The default mitigation action used\nMitigation actions are as follows:\n\n  - `\"log\"` - log request when request does not conform to schema\n  - `\"block\"` - deny access to the site when request does not conform to schema\n  - `\"none\"` - skip running schema validation\nAvailable values: \"none\", \"log\", \"block\"."
                    },
                    "validationOverrideMitigationAction": {
                        "type": "string",
                        "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `\"none\"` - skip running schema validation entirely for the request\n  - \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e - clears any existing override\nAvailable values: \"none\"."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/snippet:Snippet": {
            "description": "Accepted Permissions\n\n- `Snippets Read`\n- `Snippets Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSnippet = new cloudflare.Snippet(\"example_snippet\", {\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    snippetName: \"my_snippet\",\n    files: [{\n        name: \"main.js\",\n        content: `export default {\n  async fetch(request) {\n    return new Response('Hello, World!');\n  }\n}\n`,\n    }],\n    metadata: {\n        mainModule: \"main.js\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_snippet = cloudflare.Snippet(\"example_snippet\",\n    zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    snippet_name=\"my_snippet\",\n    files=[{\n        \"name\": \"main.js\",\n        \"content\": \"\"\"export default {\n  async fetch(request) {\n    return new Response('Hello, World!');\n  }\n}\n\"\"\",\n    }],\n    metadata={\n        \"main_module\": \"main.js\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSnippet = new Cloudflare.Index.Snippet(\"example_snippet\", new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        SnippetName = \"my_snippet\",\n        Files = new[]\n        {\n            new Cloudflare.Inputs.SnippetFileArgs\n            {\n                Name = \"main.js\",\n                Content = @\"export default {\n  async fetch(request) {\n    return new Response('Hello, World!');\n  }\n}\n\",\n            },\n        },\n        Metadata = new Cloudflare.Inputs.SnippetMetadataArgs\n        {\n            MainModule = \"main.js\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSnippet(ctx, \"example_snippet\", \u0026cloudflare.SnippetArgs{\n\t\t\tZoneId:      pulumi.String(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tSnippetName: pulumi.String(\"my_snippet\"),\n\t\t\tFiles: cloudflare.SnippetFileArray{\n\t\t\t\t\u0026cloudflare.SnippetFileArgs{\n\t\t\t\t\tName: pulumi.String(\"main.js\"),\n\t\t\t\t\tContent: pulumi.String(`export default {\n  async fetch(request) {\n    return new Response('Hello, World!');\n  }\n}\n`),\n\t\t\t\t},\n\t\t\t},\n\t\t\tMetadata: \u0026cloudflare.SnippetMetadataArgs{\n\t\t\t\tMainModule: pulumi.String(\"main.js\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Snippet;\nimport com.pulumi.cloudflare.SnippetArgs;\nimport com.pulumi.cloudflare.inputs.SnippetFileArgs;\nimport com.pulumi.cloudflare.inputs.SnippetMetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSnippet = new Snippet(\"exampleSnippet\", SnippetArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .snippetName(\"my_snippet\")\n            .files(SnippetFileArgs.builder()\n                .name(\"main.js\")\n                .content(\"\"\"\nexport default {\n  async fetch(request) {\n    return new Response('Hello, World!');\n  }\n}\n                \"\"\")\n                .build())\n            .metadata(SnippetMetadataArgs.builder()\n                .mainModule(\"main.js\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSnippet:\n    type: cloudflare:Snippet\n    name: example_snippet\n    properties:\n      zoneId: 9f1839b6152d298aca64c4e906b6d074\n      snippetName: my_snippet\n      files:\n        - name: main.js\n          content: |\n            export default {\n              async fetch(request) {\n                return new Response('Hello, World!');\n              }\n            }\n      metadata:\n        mainModule: main.js\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "Indicates when the snippet was created.\n"
                },
                "files": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/SnippetFile:SnippetFile"
                    },
                    "description": "The list of files belonging to the snippet.\n"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/SnippetMetadata:SnippetMetadata",
                    "description": "Provide metadata about the snippet.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Indicates when the snippet was last modified.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "Identify the snippet.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Use this field to specify the unique ID of the zone.\n"
                }
            },
            "required": [
                "createdOn",
                "files",
                "metadata",
                "modifiedOn",
                "snippetName"
            ],
            "inputProperties": {
                "files": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/SnippetFile:SnippetFile"
                    },
                    "description": "The list of files belonging to the snippet.\n"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/SnippetMetadata:SnippetMetadata",
                    "description": "Provide metadata about the snippet.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "Identify the snippet.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Use this field to specify the unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "files",
                "metadata",
                "snippetName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Snippet resources.\n",
                "properties": {
                    "createdOn": {
                        "type": "string",
                        "description": "Indicates when the snippet was created.\n"
                    },
                    "files": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/SnippetFile:SnippetFile"
                        },
                        "description": "The list of files belonging to the snippet.\n"
                    },
                    "metadata": {
                        "$ref": "#/types/cloudflare:index/SnippetMetadata:SnippetMetadata",
                        "description": "Provide metadata about the snippet.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Indicates when the snippet was last modified.\n"
                    },
                    "snippetName": {
                        "type": "string",
                        "description": "Identify the snippet.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Use this field to specify the unique ID of the zone.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/snippetRules:SnippetRules": {
            "description": "Accepted Permissions\n\n- `Snippets Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSnippetRules = new cloudflare.SnippetRules(\"example_snippet_rules\", {\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    rules: [{\n        expression: \"ip.src eq 1.1.1.1\",\n        snippetName: \"my_snippet\",\n        description: \"Execute my_snippet when IP address is 1.1.1.1.\",\n        enabled: true,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_snippet_rules = cloudflare.SnippetRules(\"example_snippet_rules\",\n    zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    rules=[{\n        \"expression\": \"ip.src eq 1.1.1.1\",\n        \"snippet_name\": \"my_snippet\",\n        \"description\": \"Execute my_snippet when IP address is 1.1.1.1.\",\n        \"enabled\": True,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSnippetRules = new Cloudflare.Index.SnippetRules(\"example_snippet_rules\", new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.SnippetRulesRuleArgs\n            {\n                Expression = \"ip.src eq 1.1.1.1\",\n                SnippetName = \"my_snippet\",\n                Description = \"Execute my_snippet when IP address is 1.1.1.1.\",\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSnippetRules(ctx, \"example_snippet_rules\", \u0026cloudflare.SnippetRulesArgs{\n\t\t\tZoneId: pulumi.String(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tRules: cloudflare.SnippetRulesRuleArray{\n\t\t\t\t\u0026cloudflare.SnippetRulesRuleArgs{\n\t\t\t\t\tExpression:  pulumi.String(\"ip.src eq 1.1.1.1\"),\n\t\t\t\t\tSnippetName: pulumi.String(\"my_snippet\"),\n\t\t\t\t\tDescription: pulumi.String(\"Execute my_snippet when IP address is 1.1.1.1.\"),\n\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.SnippetRules;\nimport com.pulumi.cloudflare.SnippetRulesArgs;\nimport com.pulumi.cloudflare.inputs.SnippetRulesRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSnippetRules = new SnippetRules(\"exampleSnippetRules\", SnippetRulesArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .rules(SnippetRulesRuleArgs.builder()\n                .expression(\"ip.src eq 1.1.1.1\")\n                .snippetName(\"my_snippet\")\n                .description(\"Execute my_snippet when IP address is 1.1.1.1.\")\n                .enabled(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSnippetRules:\n    type: cloudflare:SnippetRules\n    name: example_snippet_rules\n    properties:\n      zoneId: 9f1839b6152d298aca64c4e906b6d074\n      rules:\n        - expression: ip.src eq 1.1.1.1\n          snippetName: my_snippet\n          description: Execute my_snippet when IP address is 1.1.1.1.\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/SnippetRulesRule:SnippetRulesRule"
                    },
                    "description": "Lists snippet rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Use this field to specify the unique ID of the zone.\n"
                }
            },
            "required": [
                "rules"
            ],
            "inputProperties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/SnippetRulesRule:SnippetRulesRule"
                    },
                    "description": "Lists snippet rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Use this field to specify the unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "rules"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SnippetRules resources.\n",
                "properties": {
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/SnippetRulesRule:SnippetRulesRule"
                        },
                        "description": "Lists snippet rules.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Use this field to specify the unique ID of the zone.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/snippets:Snippets": {
            "description": "\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the snippet was created.\n"
                },
                "files": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of files belonging to the snippet.\n"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/SnippetsMetadata:SnippetsMetadata",
                    "description": "Metadata about the snippet.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the snippet was last modified.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "The identifying name of the snippet.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "required": [
                "createdOn",
                "files",
                "metadata",
                "modifiedOn",
                "snippetName",
                "zoneId"
            ],
            "inputProperties": {
                "files": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of files belonging to the snippet.\n"
                },
                "metadata": {
                    "$ref": "#/types/cloudflare:index/SnippetsMetadata:SnippetsMetadata",
                    "description": "Metadata about the snippet.\n"
                },
                "snippetName": {
                    "type": "string",
                    "description": "The identifying name of the snippet.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "files",
                "metadata",
                "snippetName",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Snippets resources.\n",
                "properties": {
                    "createdOn": {
                        "type": "string",
                        "description": "The timestamp of when the snippet was created.\n"
                    },
                    "files": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of files belonging to the snippet.\n"
                    },
                    "metadata": {
                        "$ref": "#/types/cloudflare:index/SnippetsMetadata:SnippetsMetadata",
                        "description": "Metadata about the snippet.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The timestamp of when the snippet was last modified.\n"
                    },
                    "snippetName": {
                        "type": "string",
                        "description": "The identifying name of the snippet.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/spectrumApplication:SpectrumApplication": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSpectrumApplication = new cloudflare.SpectrumApplication(\"example_spectrum_application\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    dns: {\n        name: \"ssh.example.com\",\n        type: \"CNAME\",\n    },\n    protocol: \"tcp/22\",\n    trafficType: \"direct\",\n    argoSmartRouting: true,\n    edgeIps: {\n        connectivity: \"all\",\n        type: \"dynamic\",\n    },\n    ipFirewall: false,\n    originDirects: [\"tcp://127.0.0.1:8080\"],\n    originDns: {\n        name: \"origin.example.com\",\n        ttl: 600,\n        type: \"\",\n    },\n    originPort: 22,\n    proxyProtocol: \"off\",\n    tls: \"off\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_spectrum_application = cloudflare.SpectrumApplication(\"example_spectrum_application\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    dns={\n        \"name\": \"ssh.example.com\",\n        \"type\": \"CNAME\",\n    },\n    protocol=\"tcp/22\",\n    traffic_type=\"direct\",\n    argo_smart_routing=True,\n    edge_ips={\n        \"connectivity\": \"all\",\n        \"type\": \"dynamic\",\n    },\n    ip_firewall=False,\n    origin_directs=[\"tcp://127.0.0.1:8080\"],\n    origin_dns={\n        \"name\": \"origin.example.com\",\n        \"ttl\": 600,\n        \"type\": \"\",\n    },\n    origin_port=22,\n    proxy_protocol=\"off\",\n    tls=\"off\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSpectrumApplication = new Cloudflare.Index.SpectrumApplication(\"example_spectrum_application\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Dns = new Cloudflare.Inputs.SpectrumApplicationDnsArgs\n        {\n            Name = \"ssh.example.com\",\n            Type = \"CNAME\",\n        },\n        Protocol = \"tcp/22\",\n        TrafficType = \"direct\",\n        ArgoSmartRouting = true,\n        EdgeIps = new Cloudflare.Inputs.SpectrumApplicationEdgeIpsArgs\n        {\n            Connectivity = \"all\",\n            Type = \"dynamic\",\n        },\n        IpFirewall = false,\n        OriginDirects = new[]\n        {\n            \"tcp://127.0.0.1:8080\",\n        },\n        OriginDns = new Cloudflare.Inputs.SpectrumApplicationOriginDnsArgs\n        {\n            Name = \"origin.example.com\",\n            Ttl = 600,\n            Type = \"\",\n        },\n        OriginPort = 22,\n        ProxyProtocol = \"off\",\n        Tls = \"off\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSpectrumApplication(ctx, \"example_spectrum_application\", \u0026cloudflare.SpectrumApplicationArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDns: \u0026cloudflare.SpectrumApplicationDnsArgs{\n\t\t\t\tName: pulumi.String(\"ssh.example.com\"),\n\t\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\t},\n\t\t\tProtocol:         pulumi.String(\"tcp/22\"),\n\t\t\tTrafficType:      pulumi.String(\"direct\"),\n\t\t\tArgoSmartRouting: pulumi.Bool(true),\n\t\t\tEdgeIps: \u0026cloudflare.SpectrumApplicationEdgeIpsArgs{\n\t\t\t\tConnectivity: pulumi.String(\"all\"),\n\t\t\t\tType:         pulumi.String(\"dynamic\"),\n\t\t\t},\n\t\t\tIpFirewall: pulumi.Bool(false),\n\t\t\tOriginDirects: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tcp://127.0.0.1:8080\"),\n\t\t\t},\n\t\t\tOriginDns: \u0026cloudflare.SpectrumApplicationOriginDnsArgs{\n\t\t\t\tName: pulumi.String(\"origin.example.com\"),\n\t\t\t\tTtl:  pulumi.Int(600),\n\t\t\t\tType: pulumi.String(\"\"),\n\t\t\t},\n\t\t\tOriginPort:    pulumi.Any(22),\n\t\t\tProxyProtocol: pulumi.String(\"off\"),\n\t\t\tTls:           pulumi.String(\"off\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.SpectrumApplication;\nimport com.pulumi.cloudflare.SpectrumApplicationArgs;\nimport com.pulumi.cloudflare.inputs.SpectrumApplicationDnsArgs;\nimport com.pulumi.cloudflare.inputs.SpectrumApplicationEdgeIpsArgs;\nimport com.pulumi.cloudflare.inputs.SpectrumApplicationOriginDnsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSpectrumApplication = new SpectrumApplication(\"exampleSpectrumApplication\", SpectrumApplicationArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .dns(SpectrumApplicationDnsArgs.builder()\n                .name(\"ssh.example.com\")\n                .type(\"CNAME\")\n                .build())\n            .protocol(\"tcp/22\")\n            .trafficType(\"direct\")\n            .argoSmartRouting(true)\n            .edgeIps(SpectrumApplicationEdgeIpsArgs.builder()\n                .connectivity(\"all\")\n                .type(\"dynamic\")\n                .build())\n            .ipFirewall(false)\n            .originDirects(\"tcp://127.0.0.1:8080\")\n            .originDns(SpectrumApplicationOriginDnsArgs.builder()\n                .name(\"origin.example.com\")\n                .ttl(600)\n                .type(\"\")\n                .build())\n            .originPort(22)\n            .proxyProtocol(\"off\")\n            .tls(\"off\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSpectrumApplication:\n    type: cloudflare:SpectrumApplication\n    name: example_spectrum_application\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      dns:\n        name: ssh.example.com\n        type: CNAME\n      protocol: tcp/22\n      trafficType: direct\n      argoSmartRouting: true\n      edgeIps:\n        connectivity: all\n        type: dynamic\n      ipFirewall: false\n      originDirects:\n        - tcp://127.0.0.1:8080\n      originDns:\n        name: origin.example.com\n        ttl: 600\n        type: \"\"\n      originPort: 22\n      proxyProtocol: off\n      tls: off\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/spectrumApplication:SpectrumApplication example '\u003czone_id\u003e/\u003capp_id\u003e'\n```\n\n",
            "properties": {
                "argoSmartRouting": {
                    "type": "boolean",
                    "description": "Enables Argo Smart Routing for this application.\nNotes: Only available for TCP applications with\u003cspan pulumi-lang-nodejs=\" trafficType \" pulumi-lang-dotnet=\" TrafficType \" pulumi-lang-go=\" trafficType \" pulumi-lang-python=\" traffic_type \" pulumi-lang-yaml=\" trafficType \" pulumi-lang-java=\" trafficType \"\u003e trafficType \u003c/span\u003eset to \"direct\".\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the Application was created.\n"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/SpectrumApplicationDns:SpectrumApplicationDns",
                    "description": "The name and type of DNS record for the Spectrum application.\n"
                },
                "edgeIps": {
                    "$ref": "#/types/cloudflare:index/SpectrumApplicationEdgeIps:SpectrumApplicationEdgeIps",
                    "description": "The anycast edge IP configuration for the hostname of this application.\n"
                },
                "ipFirewall": {
                    "type": "boolean",
                    "description": "Enables IP Access Rules for this application.\nNotes: Only available for TCP applications.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the Application was last modified.\n"
                },
                "originDirects": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of origin IP addresses. Array may contain multiple IP addresses for load balancing.\n"
                },
                "originDns": {
                    "$ref": "#/types/cloudflare:index/SpectrumApplicationOriginDns:SpectrumApplicationOriginDns",
                    "description": "The name and type of DNS record for the Spectrum application.\n"
                },
                "originPort": {
                    "$ref": "pulumi.json#/Any",
                    "description": "The destination port at the origin. Only specified in conjunction with origin_dns. May use an integer to specify a single origin port, for example \u003cspan pulumi-lang-nodejs=\"`1000`\" pulumi-lang-dotnet=\"`1000`\" pulumi-lang-go=\"`1000`\" pulumi-lang-python=\"`1000`\" pulumi-lang-yaml=\"`1000`\" pulumi-lang-java=\"`1000`\"\u003e`1000`\u003c/span\u003e, or a string to specify a range of origin ports, for example `\"1000-2000\"`.\nNotes: If specifying a port range, the number of ports in the range must match the number of ports specified in the \"protocol\" field.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The port configuration at Cloudflare's edge. May specify a single port, for example `\"tcp/1000\"`, or a range of ports, for example `\"tcp/1000-2000\"`.\n"
                },
                "proxyProtocol": {
                    "type": "string",
                    "description": "Enables Proxy Protocol to the origin. Refer to [Enable Proxy protocol](https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/) for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.\nAvailable values: \"off\", \"v1\", \"v2\", \"simple\".\n"
                },
                "tls": {
                    "type": "string",
                    "description": "The type of TLS termination associated with the application.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\".\n"
                },
                "trafficType": {
                    "type": "string",
                    "description": "Determines how data travels from the edge to your origin. When set to \"direct\", Spectrum will send traffic directly to your origin, and the application's type is derived from the \u003cspan pulumi-lang-nodejs=\"`protocol`\" pulumi-lang-dotnet=\"`Protocol`\" pulumi-lang-go=\"`protocol`\" pulumi-lang-python=\"`protocol`\" pulumi-lang-yaml=\"`protocol`\" pulumi-lang-java=\"`protocol`\"\u003e`protocol`\u003c/span\u003e. When set to \"http\" or \"https\", Spectrum will apply Cloudflare's HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly.\nAvailable values: \"direct\", \"http\", \"https\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Zone identifier.\n"
                }
            },
            "required": [
                "argoSmartRouting",
                "createdOn",
                "dns",
                "edgeIps",
                "ipFirewall",
                "modifiedOn",
                "protocol",
                "proxyProtocol",
                "tls",
                "trafficType"
            ],
            "inputProperties": {
                "argoSmartRouting": {
                    "type": "boolean",
                    "description": "Enables Argo Smart Routing for this application.\nNotes: Only available for TCP applications with\u003cspan pulumi-lang-nodejs=\" trafficType \" pulumi-lang-dotnet=\" TrafficType \" pulumi-lang-go=\" trafficType \" pulumi-lang-python=\" traffic_type \" pulumi-lang-yaml=\" trafficType \" pulumi-lang-java=\" trafficType \"\u003e trafficType \u003c/span\u003eset to \"direct\".\n"
                },
                "dns": {
                    "$ref": "#/types/cloudflare:index/SpectrumApplicationDns:SpectrumApplicationDns",
                    "description": "The name and type of DNS record for the Spectrum application.\n"
                },
                "edgeIps": {
                    "$ref": "#/types/cloudflare:index/SpectrumApplicationEdgeIps:SpectrumApplicationEdgeIps",
                    "description": "The anycast edge IP configuration for the hostname of this application.\n"
                },
                "ipFirewall": {
                    "type": "boolean",
                    "description": "Enables IP Access Rules for this application.\nNotes: Only available for TCP applications.\n"
                },
                "originDirects": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of origin IP addresses. Array may contain multiple IP addresses for load balancing.\n"
                },
                "originDns": {
                    "$ref": "#/types/cloudflare:index/SpectrumApplicationOriginDns:SpectrumApplicationOriginDns",
                    "description": "The name and type of DNS record for the Spectrum application.\n"
                },
                "originPort": {
                    "$ref": "pulumi.json#/Any",
                    "description": "The destination port at the origin. Only specified in conjunction with origin_dns. May use an integer to specify a single origin port, for example \u003cspan pulumi-lang-nodejs=\"`1000`\" pulumi-lang-dotnet=\"`1000`\" pulumi-lang-go=\"`1000`\" pulumi-lang-python=\"`1000`\" pulumi-lang-yaml=\"`1000`\" pulumi-lang-java=\"`1000`\"\u003e`1000`\u003c/span\u003e, or a string to specify a range of origin ports, for example `\"1000-2000\"`.\nNotes: If specifying a port range, the number of ports in the range must match the number of ports specified in the \"protocol\" field.\n"
                },
                "protocol": {
                    "type": "string",
                    "description": "The port configuration at Cloudflare's edge. May specify a single port, for example `\"tcp/1000\"`, or a range of ports, for example `\"tcp/1000-2000\"`.\n"
                },
                "proxyProtocol": {
                    "type": "string",
                    "description": "Enables Proxy Protocol to the origin. Refer to [Enable Proxy protocol](https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/) for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.\nAvailable values: \"off\", \"v1\", \"v2\", \"simple\".\n"
                },
                "tls": {
                    "type": "string",
                    "description": "The type of TLS termination associated with the application.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\".\n"
                },
                "trafficType": {
                    "type": "string",
                    "description": "Determines how data travels from the edge to your origin. When set to \"direct\", Spectrum will send traffic directly to your origin, and the application's type is derived from the \u003cspan pulumi-lang-nodejs=\"`protocol`\" pulumi-lang-dotnet=\"`Protocol`\" pulumi-lang-go=\"`protocol`\" pulumi-lang-python=\"`protocol`\" pulumi-lang-yaml=\"`protocol`\" pulumi-lang-java=\"`protocol`\"\u003e`protocol`\u003c/span\u003e. When set to \"http\" or \"https\", Spectrum will apply Cloudflare's HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly.\nAvailable values: \"direct\", \"http\", \"https\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Zone identifier.\n"
                }
            },
            "requiredInputs": [
                "dns",
                "protocol"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SpectrumApplication resources.\n",
                "properties": {
                    "argoSmartRouting": {
                        "type": "boolean",
                        "description": "Enables Argo Smart Routing for this application.\nNotes: Only available for TCP applications with\u003cspan pulumi-lang-nodejs=\" trafficType \" pulumi-lang-dotnet=\" TrafficType \" pulumi-lang-go=\" trafficType \" pulumi-lang-python=\" traffic_type \" pulumi-lang-yaml=\" trafficType \" pulumi-lang-java=\" trafficType \"\u003e trafficType \u003c/span\u003eset to \"direct\".\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the Application was created.\n"
                    },
                    "dns": {
                        "$ref": "#/types/cloudflare:index/SpectrumApplicationDns:SpectrumApplicationDns",
                        "description": "The name and type of DNS record for the Spectrum application.\n"
                    },
                    "edgeIps": {
                        "$ref": "#/types/cloudflare:index/SpectrumApplicationEdgeIps:SpectrumApplicationEdgeIps",
                        "description": "The anycast edge IP configuration for the hostname of this application.\n"
                    },
                    "ipFirewall": {
                        "type": "boolean",
                        "description": "Enables IP Access Rules for this application.\nNotes: Only available for TCP applications.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the Application was last modified.\n"
                    },
                    "originDirects": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of origin IP addresses. Array may contain multiple IP addresses for load balancing.\n"
                    },
                    "originDns": {
                        "$ref": "#/types/cloudflare:index/SpectrumApplicationOriginDns:SpectrumApplicationOriginDns",
                        "description": "The name and type of DNS record for the Spectrum application.\n"
                    },
                    "originPort": {
                        "$ref": "pulumi.json#/Any",
                        "description": "The destination port at the origin. Only specified in conjunction with origin_dns. May use an integer to specify a single origin port, for example \u003cspan pulumi-lang-nodejs=\"`1000`\" pulumi-lang-dotnet=\"`1000`\" pulumi-lang-go=\"`1000`\" pulumi-lang-python=\"`1000`\" pulumi-lang-yaml=\"`1000`\" pulumi-lang-java=\"`1000`\"\u003e`1000`\u003c/span\u003e, or a string to specify a range of origin ports, for example `\"1000-2000\"`.\nNotes: If specifying a port range, the number of ports in the range must match the number of ports specified in the \"protocol\" field.\n"
                    },
                    "protocol": {
                        "type": "string",
                        "description": "The port configuration at Cloudflare's edge. May specify a single port, for example `\"tcp/1000\"`, or a range of ports, for example `\"tcp/1000-2000\"`.\n"
                    },
                    "proxyProtocol": {
                        "type": "string",
                        "description": "Enables Proxy Protocol to the origin. Refer to [Enable Proxy protocol](https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/) for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.\nAvailable values: \"off\", \"v1\", \"v2\", \"simple\".\n"
                    },
                    "tls": {
                        "type": "string",
                        "description": "The type of TLS termination associated with the application.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\".\n"
                    },
                    "trafficType": {
                        "type": "string",
                        "description": "Determines how data travels from the edge to your origin. When set to \"direct\", Spectrum will send traffic directly to your origin, and the application's type is derived from the \u003cspan pulumi-lang-nodejs=\"`protocol`\" pulumi-lang-dotnet=\"`Protocol`\" pulumi-lang-go=\"`protocol`\" pulumi-lang-python=\"`protocol`\" pulumi-lang-yaml=\"`protocol`\" pulumi-lang-java=\"`protocol`\"\u003e`protocol`\u003c/span\u003e. When set to \"http\" or \"https\", Spectrum will apply Cloudflare's HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly.\nAvailable values: \"direct\", \"http\", \"https\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Zone identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/ssoConnector:SsoConnector": {
            "description": "Accepted Permissions\n\n- `SSO Connector Read`\n- `SSO Connector Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSsoConnector = new cloudflare.SsoConnector(\"example_sso_connector\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    emailDomain: \"example.com\",\n    beginVerification: true,\n    useFedrampLanguage: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_sso_connector = cloudflare.SsoConnector(\"example_sso_connector\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    email_domain=\"example.com\",\n    begin_verification=True,\n    use_fedramp_language=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSsoConnector = new Cloudflare.Index.SsoConnector(\"example_sso_connector\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        EmailDomain = \"example.com\",\n        BeginVerification = true,\n        UseFedrampLanguage = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewSsoConnector(ctx, \"example_sso_connector\", \u0026cloudflare.SsoConnectorArgs{\n\t\t\tAccountId:          pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEmailDomain:        pulumi.String(\"example.com\"),\n\t\t\tBeginVerification:  pulumi.Bool(true),\n\t\t\tUseFedrampLanguage: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.SsoConnector;\nimport com.pulumi.cloudflare.SsoConnectorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleSsoConnector = new SsoConnector(\"exampleSsoConnector\", SsoConnectorArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .emailDomain(\"example.com\")\n            .beginVerification(true)\n            .useFedrampLanguage(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleSsoConnector:\n    type: cloudflare:SsoConnector\n    name: example_sso_connector\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      emailDomain: example.com\n      beginVerification: true\n      useFedrampLanguage: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/ssoConnector:SsoConnector example '\u003caccount_id\u003e/\u003csso_connector_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "beginVerification": {
                    "type": "boolean",
                    "description": "Begin the verification process after creation\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "Timestamp for the creation of the SSO connector\n"
                },
                "emailDomain": {
                    "type": "string",
                    "description": "Email domain of the new SSO connector\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "SSO Connector enabled state\n"
                },
                "updatedOn": {
                    "type": "string",
                    "description": "Timestamp for the last update of the SSO connector\n"
                },
                "useFedrampLanguage": {
                    "type": "boolean",
                    "description": "Controls the display of FedRAMP language to the user during SSO login\n"
                },
                "verification": {
                    "$ref": "#/types/cloudflare:index/SsoConnectorVerification:SsoConnectorVerification"
                }
            },
            "required": [
                "beginVerification",
                "createdOn",
                "emailDomain",
                "updatedOn",
                "useFedrampLanguage",
                "verification"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "beginVerification": {
                    "type": "boolean",
                    "description": "Begin the verification process after creation\n"
                },
                "emailDomain": {
                    "type": "string",
                    "description": "Email domain of the new SSO connector\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "SSO Connector enabled state\n"
                },
                "useFedrampLanguage": {
                    "type": "boolean",
                    "description": "Controls the display of FedRAMP language to the user during SSO login\n"
                }
            },
            "requiredInputs": [
                "emailDomain"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SsoConnector resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "beginVerification": {
                        "type": "boolean",
                        "description": "Begin the verification process after creation\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "Timestamp for the creation of the SSO connector\n"
                    },
                    "emailDomain": {
                        "type": "string",
                        "description": "Email domain of the new SSO connector\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "SSO Connector enabled state\n"
                    },
                    "updatedOn": {
                        "type": "string",
                        "description": "Timestamp for the last update of the SSO connector\n"
                    },
                    "useFedrampLanguage": {
                        "type": "boolean",
                        "description": "Controls the display of FedRAMP language to the user during SSO login\n"
                    },
                    "verification": {
                        "$ref": "#/types/cloudflare:index/SsoConnectorVerification:SsoConnectorVerification"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/staticRoute:StaticRoute": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanStaticRoute = new cloudflare.MagicWanStaticRoute(\"example_magic_wan_static_route\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    nexthop: \"203.0.113.1\",\n    prefix: \"192.0.2.0/24\",\n    priority: 0,\n    description: \"New route for new prefix 203.0.113.1\",\n    scope: {\n        coloNames: [\"den01\"],\n        coloRegions: [\"APAC\"],\n    },\n    weight: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_static_route = cloudflare.MagicWanStaticRoute(\"example_magic_wan_static_route\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    nexthop=\"203.0.113.1\",\n    prefix=\"192.0.2.0/24\",\n    priority=0,\n    description=\"New route for new prefix 203.0.113.1\",\n    scope={\n        \"colo_names\": [\"den01\"],\n        \"colo_regions\": [\"APAC\"],\n    },\n    weight=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanStaticRoute = new Cloudflare.Index.MagicWanStaticRoute(\"example_magic_wan_static_route\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Nexthop = \"203.0.113.1\",\n        Prefix = \"192.0.2.0/24\",\n        Priority = 0,\n        Description = \"New route for new prefix 203.0.113.1\",\n        Scope = new Cloudflare.Inputs.MagicWanStaticRouteScopeArgs\n        {\n            ColoNames = new[]\n            {\n                \"den01\",\n            },\n            ColoRegions = new[]\n            {\n                \"APAC\",\n            },\n        },\n        Weight = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewMagicWanStaticRoute(ctx, \"example_magic_wan_static_route\", \u0026cloudflare.MagicWanStaticRouteArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNexthop:     pulumi.String(\"203.0.113.1\"),\n\t\t\tPrefix:      pulumi.String(\"192.0.2.0/24\"),\n\t\t\tPriority:    pulumi.Int(0),\n\t\t\tDescription: pulumi.String(\"New route for new prefix 203.0.113.1\"),\n\t\t\tScope: \u0026cloudflare.MagicWanStaticRouteScopeArgs{\n\t\t\t\tColoNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"den01\"),\n\t\t\t\t},\n\t\t\t\tColoRegions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"APAC\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tWeight: pulumi.Int(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.MagicWanStaticRoute;\nimport com.pulumi.cloudflare.MagicWanStaticRouteArgs;\nimport com.pulumi.cloudflare.inputs.MagicWanStaticRouteScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleMagicWanStaticRoute = new MagicWanStaticRoute(\"exampleMagicWanStaticRoute\", MagicWanStaticRouteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .nexthop(\"203.0.113.1\")\n            .prefix(\"192.0.2.0/24\")\n            .priority(0)\n            .description(\"New route for new prefix 203.0.113.1\")\n            .scope(MagicWanStaticRouteScopeArgs.builder()\n                .coloNames(\"den01\")\n                .coloRegions(\"APAC\")\n                .build())\n            .weight(0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleMagicWanStaticRoute:\n    type: cloudflare:MagicWanStaticRoute\n    name: example_magic_wan_static_route\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      nexthop: 203.0.113.1\n      prefix: 192.0.2.0/24\n      priority: 0\n      description: New route for new prefix 203.0.113.1\n      scope:\n        coloNames:\n          - den01\n        coloRegions:\n          - APAC\n      weight: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/staticRoute:StaticRoute example '\u003caccount_id\u003e/\u003croute_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the route was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional human provided description of the static route.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the route was last modified.\n"
                },
                "nexthop": {
                    "type": "string",
                    "description": "The next-hop IP Address for the static route.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority of the static route.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/StaticRouteScope:StaticRouteScope",
                    "description": "Used only for ECMP routes.\n"
                },
                "weight": {
                    "type": "integer",
                    "description": "Optional weight of the ECMP scope - if provided.\n"
                }
            },
            "required": [
                "accountId",
                "createdOn",
                "description",
                "modifiedOn",
                "nexthop",
                "prefix",
                "priority"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional human provided description of the static route.\n"
                },
                "nexthop": {
                    "type": "string",
                    "description": "The next-hop IP Address for the static route.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority of the static route.\n"
                },
                "scope": {
                    "$ref": "#/types/cloudflare:index/StaticRouteScope:StaticRouteScope",
                    "description": "Used only for ECMP routes.\n"
                },
                "weight": {
                    "type": "integer",
                    "description": "Optional weight of the ECMP scope - if provided.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "nexthop",
                "prefix",
                "priority"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StaticRoute resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the route was created.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An optional human provided description of the static route.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the route was last modified.\n"
                    },
                    "nexthop": {
                        "type": "string",
                        "description": "The next-hop IP Address for the static route.\n"
                    },
                    "prefix": {
                        "type": "string",
                        "description": "IP Prefix in Classless Inter-Domain Routing format.\n"
                    },
                    "priority": {
                        "type": "integer",
                        "description": "Priority of the static route.\n"
                    },
                    "scope": {
                        "$ref": "#/types/cloudflare:index/StaticRouteScope:StaticRouteScope",
                        "description": "Used only for ECMP routes.\n"
                    },
                    "weight": {
                        "type": "integer",
                        "description": "Optional weight of the ECMP scope - if provided.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/staticRoute:StaticRoute"
                }
            ],
            "deprecationMessage": "cloudflare.index/staticroute.StaticRoute has been deprecated in favor of cloudflare.index/magicwanstaticroute.MagicWanStaticRoute"
        },
        "cloudflare:index/stream:Stream": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStream = new cloudflare.Stream(\"example_stream\", {accountId: \"023e105f4ecef8ad9ca31a8372d0c353\"});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream = cloudflare.Stream(\"example_stream\", account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStream = new Cloudflare.Index.Stream(\"example_stream\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStream(ctx, \"example_stream\", \u0026cloudflare.StreamArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Stream;\nimport com.pulumi.cloudflare.StreamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStream = new Stream(\"exampleStream\", StreamArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStream:\n    type: cloudflare:Stream\n    name: example_stream\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin.\n"
                },
                "clippedFrom": {
                    "type": "string",
                    "description": "The unique identifier of the source video this video was clipped from.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time the media item was created.\n"
                },
                "creator": {
                    "type": "string",
                    "description": "A user-defined identifier for the media creator.\n"
                },
                "duration": {
                    "type": "number",
                    "description": "The duration of the video in seconds. A value of `-1` means the duration is unknown. The duration becomes available after the upload and before the video is ready.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/StreamInput:StreamInput"
                },
                "liveInput": {
                    "type": "string",
                    "description": "The live input ID used to upload a video with Stream Live.\n"
                },
                "maxDurationSeconds": {
                    "type": "integer",
                    "description": "The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown.\n"
                },
                "maxSizeBytes": {
                    "type": "integer",
                    "description": "The maximum size in bytes for the video upload.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "A user modifiable key-value store used to reference other systems of record for managing videos.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the media item was last modified.\n"
                },
                "playback": {
                    "$ref": "#/types/cloudflare:index/StreamPlayback:StreamPlayback"
                },
                "preview": {
                    "type": "string",
                    "description": "The video's preview page URI. This field is omitted until encoding is complete.\n"
                },
                "publicDetails": {
                    "$ref": "#/types/cloudflare:index/StreamPublicDetails:StreamPublicDetails",
                    "description": "Public details for the video including title, share link, channel link, and logo.\n"
                },
                "readyToStream": {
                    "type": "boolean",
                    "description": "Indicates whether the video is playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n"
                },
                "readyToStreamAt": {
                    "type": "string",
                    "description": "Indicates the time at which the video became playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the video can be a accessed using the UID. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, a signed token must be generated with a signing key to view the video.\n"
                },
                "scheduledDeletion": {
                    "type": "string",
                    "description": "Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the media item in bytes.\n"
                },
                "status": {
                    "$ref": "#/types/cloudflare:index/StreamStatus:StreamStatus",
                    "description": "Specifies a detailed status for a video. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, the \u003cspan pulumi-lang-nodejs=\"`step`\" pulumi-lang-dotnet=\"`Step`\" pulumi-lang-go=\"`step`\" pulumi-lang-python=\"`step`\" pulumi-lang-yaml=\"`step`\" pulumi-lang-java=\"`step`\"\u003e`step`\u003c/span\u003e field returns \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`manifest`\" pulumi-lang-dotnet=\"`Manifest`\" pulumi-lang-go=\"`manifest`\" pulumi-lang-python=\"`manifest`\" pulumi-lang-yaml=\"`manifest`\" pulumi-lang-java=\"`manifest`\"\u003e`manifest`\u003c/span\u003e. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e, `pctComplete` returns a number between 0 and 100 to indicate the approximate percent of completion. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, `errorReasonCode` and `errorReasonText` provide additional details.\n"
                },
                "thumbnail": {
                    "type": "string",
                    "description": "The media item's thumbnail URI. This field is omitted until encoding is complete.\n"
                },
                "thumbnailTimestampPct": {
                    "type": "number",
                    "description": "The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for the video. Can be used to verify the video being updated.\n"
                },
                "uploadExpiry": {
                    "type": "string",
                    "description": "The date and time when the video upload URL is no longer valid for direct user uploads.\n"
                },
                "uploaded": {
                    "type": "string",
                    "description": "The date and time the media item was uploaded.\n"
                },
                "watermark": {
                    "$ref": "#/types/cloudflare:index/StreamWatermark:StreamWatermark"
                }
            },
            "required": [
                "clippedFrom",
                "created",
                "duration",
                "input",
                "liveInput",
                "maxSizeBytes",
                "modified",
                "playback",
                "preview",
                "readyToStream",
                "readyToStreamAt",
                "requireSignedUrls",
                "size",
                "status",
                "thumbnail",
                "thumbnailTimestampPct",
                "uploaded",
                "watermark"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "allowedOrigins": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin.\n"
                },
                "creator": {
                    "type": "string",
                    "description": "A user-defined identifier for the media creator.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "maxDurationSeconds": {
                    "type": "integer",
                    "description": "The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "A user modifiable key-value store used to reference other systems of record for managing videos.\n"
                },
                "publicDetails": {
                    "$ref": "#/types/cloudflare:index/StreamPublicDetails:StreamPublicDetails",
                    "description": "Public details for the video including title, share link, channel link, and logo.\n"
                },
                "requireSignedUrls": {
                    "type": "boolean",
                    "description": "Indicates whether the video can be a accessed using the UID. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, a signed token must be generated with a signing key to view the video.\n"
                },
                "scheduledDeletion": {
                    "type": "string",
                    "description": "Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time.\n"
                },
                "thumbnailTimestampPct": {
                    "type": "number",
                    "description": "The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for the video. Can be used to verify the video being updated.\n"
                },
                "uploadExpiry": {
                    "type": "string",
                    "description": "The date and time when the video upload URL is no longer valid for direct user uploads.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Stream resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "allowedOrigins": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin.\n"
                    },
                    "clippedFrom": {
                        "type": "string",
                        "description": "The unique identifier of the source video this video was clipped from.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and time the media item was created.\n"
                    },
                    "creator": {
                        "type": "string",
                        "description": "A user-defined identifier for the media creator.\n"
                    },
                    "duration": {
                        "type": "number",
                        "description": "The duration of the video in seconds. A value of `-1` means the duration is unknown. The duration becomes available after the upload and before the video is ready.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    },
                    "input": {
                        "$ref": "#/types/cloudflare:index/StreamInput:StreamInput"
                    },
                    "liveInput": {
                        "type": "string",
                        "description": "The live input ID used to upload a video with Stream Live.\n"
                    },
                    "maxDurationSeconds": {
                        "type": "integer",
                        "description": "The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown.\n"
                    },
                    "maxSizeBytes": {
                        "type": "integer",
                        "description": "The maximum size in bytes for the video upload.\n"
                    },
                    "meta": {
                        "type": "string",
                        "description": "A user modifiable key-value store used to reference other systems of record for managing videos.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the media item was last modified.\n"
                    },
                    "playback": {
                        "$ref": "#/types/cloudflare:index/StreamPlayback:StreamPlayback"
                    },
                    "preview": {
                        "type": "string",
                        "description": "The video's preview page URI. This field is omitted until encoding is complete.\n"
                    },
                    "publicDetails": {
                        "$ref": "#/types/cloudflare:index/StreamPublicDetails:StreamPublicDetails",
                        "description": "Public details for the video including title, share link, channel link, and logo.\n"
                    },
                    "readyToStream": {
                        "type": "boolean",
                        "description": "Indicates whether the video is playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n"
                    },
                    "readyToStreamAt": {
                        "type": "string",
                        "description": "Indicates the time at which the video became playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n"
                    },
                    "requireSignedUrls": {
                        "type": "boolean",
                        "description": "Indicates whether the video can be a accessed using the UID. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, a signed token must be generated with a signing key to view the video.\n"
                    },
                    "scheduledDeletion": {
                        "type": "string",
                        "description": "Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time.\n"
                    },
                    "size": {
                        "type": "number",
                        "description": "The size of the media item in bytes.\n"
                    },
                    "status": {
                        "$ref": "#/types/cloudflare:index/StreamStatus:StreamStatus",
                        "description": "Specifies a detailed status for a video. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, the \u003cspan pulumi-lang-nodejs=\"`step`\" pulumi-lang-dotnet=\"`Step`\" pulumi-lang-go=\"`step`\" pulumi-lang-python=\"`step`\" pulumi-lang-yaml=\"`step`\" pulumi-lang-java=\"`step`\"\u003e`step`\u003c/span\u003e field returns \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`manifest`\" pulumi-lang-dotnet=\"`Manifest`\" pulumi-lang-go=\"`manifest`\" pulumi-lang-python=\"`manifest`\" pulumi-lang-yaml=\"`manifest`\" pulumi-lang-java=\"`manifest`\"\u003e`manifest`\u003c/span\u003e. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e, `pctComplete` returns a number between 0 and 100 to indicate the approximate percent of completion. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, `errorReasonCode` and `errorReasonText` provide additional details.\n"
                    },
                    "thumbnail": {
                        "type": "string",
                        "description": "The media item's thumbnail URI. This field is omitted until encoding is complete.\n"
                    },
                    "thumbnailTimestampPct": {
                        "type": "number",
                        "description": "The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video.\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "The unique identifier for the video. Can be used to verify the video being updated.\n"
                    },
                    "uploadExpiry": {
                        "type": "string",
                        "description": "The date and time when the video upload URL is no longer valid for direct user uploads.\n"
                    },
                    "uploaded": {
                        "type": "string",
                        "description": "The date and time the media item was uploaded.\n"
                    },
                    "watermark": {
                        "$ref": "#/types/cloudflare:index/StreamWatermark:StreamWatermark"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamAudioTrack:StreamAudioTrack": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamAudioTrack = new cloudflare.StreamAudioTrack(\"example_stream_audio_track\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n    audioIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n    \"default\": true,\n    label: \"director commentary\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_audio_track = cloudflare.StreamAudioTrack(\"example_stream_audio_track\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\",\n    audio_identifier=\"ea95132c15732412d22c1476fa83f27a\",\n    default=True,\n    label=\"director commentary\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamAudioTrack = new Cloudflare.Index.StreamAudioTrack(\"example_stream_audio_track\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n        AudioIdentifier = \"ea95132c15732412d22c1476fa83f27a\",\n        Default = true,\n        Label = \"director commentary\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStreamAudioTrack(ctx, \"example_stream_audio_track\", \u0026cloudflare.StreamAudioTrackArgs{\n\t\t\tAccountId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier:      pulumi.String(\"ea95132c15732412d22c1476fa83f27a\"),\n\t\t\tAudioIdentifier: pulumi.String(\"ea95132c15732412d22c1476fa83f27a\"),\n\t\t\tDefault:         pulumi.Bool(true),\n\t\t\tLabel:           pulumi.String(\"director commentary\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.StreamAudioTrack;\nimport com.pulumi.cloudflare.StreamAudioTrackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStreamAudioTrack = new StreamAudioTrack(\"exampleStreamAudioTrack\", StreamAudioTrackArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .audioIdentifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .default_(true)\n            .label(\"director commentary\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStreamAudioTrack:\n    type: cloudflare:StreamAudioTrack\n    name: example_stream_audio_track\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      identifier: ea95132c15732412d22c1476fa83f27a\n      audioIdentifier: ea95132c15732412d22c1476fa83f27a\n      default: true\n      label: director commentary\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "audioIdentifier": {
                    "type": "string",
                    "description": "The unique identifier for an additional audio track.\n"
                },
                "audios": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/StreamAudioTrackAudio:StreamAudioTrackAudio"
                    },
                    "description": "Array of audio tracks for the video.\n"
                },
                "default": {
                    "type": "boolean",
                    "description": "Denotes whether the audio track will be played by default in a player.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "label": {
                    "type": "string",
                    "description": "A string to uniquely identify the track amongst other audio track labels for the specified video.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Specifies the processing status of the video.\nAvailable values: \"queued\", \"ready\", \"error\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                }
            },
            "required": [
                "audios",
                "default",
                "identifier",
                "status",
                "uid"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "audioIdentifier": {
                    "type": "string",
                    "description": "The unique identifier for an additional audio track.\n"
                },
                "default": {
                    "type": "boolean",
                    "description": "Denotes whether the audio track will be played by default in a player.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "label": {
                    "type": "string",
                    "description": "A string to uniquely identify the track amongst other audio track labels for the specified video.\n"
                }
            },
            "requiredInputs": [
                "identifier"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamAudioTrack resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "audioIdentifier": {
                        "type": "string",
                        "description": "The unique identifier for an additional audio track.\n"
                    },
                    "audios": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/StreamAudioTrackAudio:StreamAudioTrackAudio"
                        },
                        "description": "Array of audio tracks for the video.\n"
                    },
                    "default": {
                        "type": "boolean",
                        "description": "Denotes whether the audio track will be played by default in a player.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    },
                    "label": {
                        "type": "string",
                        "description": "A string to uniquely identify the track amongst other audio track labels for the specified video.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Specifies the processing status of the video.\nAvailable values: \"queued\", \"ready\", \"error\".\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamCaptionLanguage:StreamCaptionLanguage": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamCaptionLanguage = new cloudflare.StreamCaptionLanguage(\"example_stream_caption_language\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n    language: \"tr\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_caption_language = cloudflare.StreamCaptionLanguage(\"example_stream_caption_language\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\",\n    language=\"tr\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamCaptionLanguage = new Cloudflare.Index.StreamCaptionLanguage(\"example_stream_caption_language\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n        Language = \"tr\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStreamCaptionLanguage(ctx, \"example_stream_caption_language\", \u0026cloudflare.StreamCaptionLanguageArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: pulumi.String(\"ea95132c15732412d22c1476fa83f27a\"),\n\t\t\tLanguage:   pulumi.String(\"tr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.StreamCaptionLanguage;\nimport com.pulumi.cloudflare.StreamCaptionLanguageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStreamCaptionLanguage = new StreamCaptionLanguage(\"exampleStreamCaptionLanguage\", StreamCaptionLanguageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .language(\"tr\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStreamCaptionLanguage:\n    type: cloudflare:StreamCaptionLanguage\n    name: example_stream_caption_language\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      identifier: ea95132c15732412d22c1476fa83f27a\n      language: tr\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "file": {
                    "type": "string",
                    "description": "The WebVTT file containing the caption or subtitle content.\n"
                },
                "generated": {
                    "type": "boolean",
                    "description": "Whether the caption was generated via AI.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The language label displayed in the native language to users.\n"
                },
                "language": {
                    "type": "string",
                    "description": "The language tag in BCP 47 format.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of a generated caption.\nAvailable values: \"ready\", \"inprogress\", \"error\".\n"
                }
            },
            "required": [
                "generated",
                "identifier",
                "label",
                "language",
                "status"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "file": {
                    "type": "string",
                    "description": "The WebVTT file containing the caption or subtitle content.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                },
                "language": {
                    "type": "string",
                    "description": "The language tag in BCP 47 format.\n"
                }
            },
            "requiredInputs": [
                "identifier",
                "language"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamCaptionLanguage resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "file": {
                        "type": "string",
                        "description": "The WebVTT file containing the caption or subtitle content.\n"
                    },
                    "generated": {
                        "type": "boolean",
                        "description": "Whether the caption was generated via AI.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    },
                    "label": {
                        "type": "string",
                        "description": "The language label displayed in the native language to users.\n"
                    },
                    "language": {
                        "type": "string",
                        "description": "The language tag in BCP 47 format.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of a generated caption.\nAvailable values: \"ready\", \"inprogress\", \"error\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamDownload:StreamDownload": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamDownload = new cloudflare.StreamDownload(\"example_stream_download\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_download = cloudflare.StreamDownload(\"example_stream_download\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamDownload = new Cloudflare.Index.StreamDownload(\"example_stream_download\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStreamDownload(ctx, \"example_stream_download\", \u0026cloudflare.StreamDownloadArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: pulumi.String(\"ea95132c15732412d22c1476fa83f27a\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.StreamDownload;\nimport com.pulumi.cloudflare.StreamDownloadArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStreamDownload = new StreamDownload(\"exampleStreamDownload\", StreamDownloadArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStreamDownload:\n    type: cloudflare:StreamDownload\n    name: example_stream_download\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      identifier: ea95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "audio": {
                    "$ref": "#/types/cloudflare:index/StreamDownloadAudio:StreamDownloadAudio",
                    "description": "The audio-only download. Only present if this download type has been created.\n"
                },
                "default": {
                    "$ref": "#/types/cloudflare:index/StreamDownloadDefault:StreamDownloadDefault",
                    "description": "The default video download. Only present if this download type has been created.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                }
            },
            "required": [
                "audio",
                "default",
                "identifier"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "A Cloudflare-generated unique identifier for a media item.\n"
                }
            },
            "requiredInputs": [
                "identifier"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamDownload resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "audio": {
                        "$ref": "#/types/cloudflare:index/StreamDownloadAudio:StreamDownloadAudio",
                        "description": "The audio-only download. Only present if this download type has been created.\n"
                    },
                    "default": {
                        "$ref": "#/types/cloudflare:index/StreamDownloadDefault:StreamDownloadDefault",
                        "description": "The default video download. Only present if this download type has been created.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamKey:StreamKey": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamKey = new cloudflare.StreamKey(\"example_stream_key\", {accountId: \"023e105f4ecef8ad9ca31a8372d0c353\"});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_key = cloudflare.StreamKey(\"example_stream_key\", account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamKey = new Cloudflare.Index.StreamKey(\"example_stream_key\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStreamKey(ctx, \"example_stream_key\", \u0026cloudflare.StreamKeyArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.StreamKey;\nimport com.pulumi.cloudflare.StreamKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStreamKey = new StreamKey(\"exampleStreamKey\", StreamKeyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStreamKey:\n    type: cloudflare:StreamKey\n    name: example_stream_key\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/streamKey:StreamKey example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time a signing key was created.\n"
                },
                "jwk": {
                    "type": "string",
                    "description": "The signing key in JWK format.\n",
                    "secret": true
                },
                "keyId": {
                    "type": "string",
                    "description": "The unique identifier for the signing key.\n"
                },
                "pem": {
                    "type": "string",
                    "description": "The signing key in PEM format.\n",
                    "secret": true
                }
            },
            "required": [
                "created",
                "jwk",
                "keyId",
                "pem"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamKey resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and time a signing key was created.\n"
                    },
                    "jwk": {
                        "type": "string",
                        "description": "The signing key in JWK format.\n",
                        "secret": true
                    },
                    "keyId": {
                        "type": "string",
                        "description": "The unique identifier for the signing key.\n"
                    },
                    "pem": {
                        "type": "string",
                        "description": "The signing key in PEM format.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamLiveInput:StreamLiveInput": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n  exampleStreamLiveInput:\n    type: cloudflare:StreamLiveInput\n    name: example_stream_live_input\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      defaultCreator: defaultCreator\n      deleteRecordingAfterDays: 45\n      enabled: true\n      meta:\n        name: test stream 1\n      recording:\n        allowedOrigins:\n          - example.com\n        hideLiveViewerCount: false\n        mode: off\n        requireSignedUrls: false\n        timeoutSeconds: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and time the live input was created.\n"
                },
                "defaultCreator": {
                    "type": "string",
                    "description": "Sets the creator ID asssociated with this live input.\n"
                },
                "deleteRecordingAfterDays": {
                    "type": "number",
                    "description": "Indicates the number of days after which the live inputs recordings will be deleted. When a stream completes and the recording is ready, the value is used to calculate a scheduled deletion date for that recording. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the live input is enabled and can accept streams.\n"
                },
                "liveInputIdentifier": {
                    "type": "string",
                    "description": "A unique identifier for a live input.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "A user modifiable key-value store used to reference other systems of record for managing live inputs.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the live input was last modified.\n"
                },
                "recording": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputRecording:StreamLiveInputRecording",
                    "description": "Records the input to a Cloudflare Stream video. Behavior depends on the mode. In most cases, the video will initially be viewable as a live video and transition to on-demand after a condition is satisfied.\n"
                },
                "rtmps": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputRtmps:StreamLiveInputRtmps",
                    "description": "Details for streaming to an live input using RTMPS.\n"
                },
                "rtmpsPlayback": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputRtmpsPlayback:StreamLiveInputRtmpsPlayback",
                    "description": "Details for playback from an live input using RTMPS.\n"
                },
                "srt": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputSrt:StreamLiveInputSrt",
                    "description": "Details for streaming to a live input using SRT.\n"
                },
                "srtPlayback": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputSrtPlayback:StreamLiveInputSrtPlayback",
                    "description": "Details for playback from an live input using SRT.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The connection status of a live input.\nAvailable values: \"connected\", \"reconnected\", \"reconnecting\", \"client*disconnect\", \"ttl*exceeded\", \"failed*to*connect\", \"failed*to*reconnect\", \"new*configuration*accepted\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "A unique identifier for a live input.\n"
                },
                "webRtc": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputWebRtc:StreamLiveInputWebRtc",
                    "description": "Details for streaming to a live input using WebRTC.\n"
                },
                "webRtcPlayback": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputWebRtcPlayback:StreamLiveInputWebRtcPlayback",
                    "description": "Details for playback from a live input using WebRTC.\n"
                }
            },
            "required": [
                "created",
                "enabled",
                "modified",
                "recording",
                "rtmps",
                "rtmpsPlayback",
                "srt",
                "srtPlayback",
                "status",
                "uid",
                "webRtc",
                "webRtcPlayback"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "defaultCreator": {
                    "type": "string",
                    "description": "Sets the creator ID asssociated with this live input.\n"
                },
                "deleteRecordingAfterDays": {
                    "type": "number",
                    "description": "Indicates the number of days after which the live inputs recordings will be deleted. When a stream completes and the recording is ready, the value is used to calculate a scheduled deletion date for that recording. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the live input is enabled and can accept streams.\n"
                },
                "liveInputIdentifier": {
                    "type": "string",
                    "description": "A unique identifier for a live input.\n"
                },
                "meta": {
                    "type": "string",
                    "description": "A user modifiable key-value store used to reference other systems of record for managing live inputs.\n"
                },
                "recording": {
                    "$ref": "#/types/cloudflare:index/StreamLiveInputRecording:StreamLiveInputRecording",
                    "description": "Records the input to a Cloudflare Stream video. Behavior depends on the mode. In most cases, the video will initially be viewable as a live video and transition to on-demand after a condition is satisfied.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamLiveInput resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and time the live input was created.\n"
                    },
                    "defaultCreator": {
                        "type": "string",
                        "description": "Sets the creator ID asssociated with this live input.\n"
                    },
                    "deleteRecordingAfterDays": {
                        "type": "number",
                        "description": "Indicates the number of days after which the live inputs recordings will be deleted. When a stream completes and the recording is ready, the value is used to calculate a scheduled deletion date for that recording. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether the live input is enabled and can accept streams.\n"
                    },
                    "liveInputIdentifier": {
                        "type": "string",
                        "description": "A unique identifier for a live input.\n"
                    },
                    "meta": {
                        "type": "string",
                        "description": "A user modifiable key-value store used to reference other systems of record for managing live inputs.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the live input was last modified.\n"
                    },
                    "recording": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputRecording:StreamLiveInputRecording",
                        "description": "Records the input to a Cloudflare Stream video. Behavior depends on the mode. In most cases, the video will initially be viewable as a live video and transition to on-demand after a condition is satisfied.\n"
                    },
                    "rtmps": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputRtmps:StreamLiveInputRtmps",
                        "description": "Details for streaming to an live input using RTMPS.\n"
                    },
                    "rtmpsPlayback": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputRtmpsPlayback:StreamLiveInputRtmpsPlayback",
                        "description": "Details for playback from an live input using RTMPS.\n"
                    },
                    "srt": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputSrt:StreamLiveInputSrt",
                        "description": "Details for streaming to a live input using SRT.\n"
                    },
                    "srtPlayback": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputSrtPlayback:StreamLiveInputSrtPlayback",
                        "description": "Details for playback from an live input using SRT.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The connection status of a live input.\nAvailable values: \"connected\", \"reconnected\", \"reconnecting\", \"client*disconnect\", \"ttl*exceeded\", \"failed*to*connect\", \"failed*to*reconnect\", \"new*configuration*accepted\".\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "A unique identifier for a live input.\n"
                    },
                    "webRtc": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputWebRtc:StreamLiveInputWebRtc",
                        "description": "Details for streaming to a live input using WebRTC.\n"
                    },
                    "webRtcPlayback": {
                        "$ref": "#/types/cloudflare:index/StreamLiveInputWebRtcPlayback:StreamLiveInputWebRtcPlayback",
                        "description": "Details for playback from a live input using WebRTC.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamWatermark:StreamWatermark": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamWatermark = new cloudflare.StreamWatermark(\"example_stream_watermark\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"Marketing Videos\",\n    opacity: 0.75,\n    padding: 0.1,\n    position: \"center\",\n    scale: 0.1,\n    url: \"https://example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_watermark = cloudflare.StreamWatermark(\"example_stream_watermark\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"Marketing Videos\",\n    opacity=0.75,\n    padding=0.1,\n    position=\"center\",\n    scale=0.1,\n    url=\"https://example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamWatermark = new Cloudflare.Index.StreamWatermark(\"example_stream_watermark\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"Marketing Videos\",\n        Opacity = 0.75,\n        Padding = 0.1,\n        Position = \"center\",\n        Scale = 0.1,\n        Url = \"https://example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStreamWatermark(ctx, \"example_stream_watermark\", \u0026cloudflare.StreamWatermarkArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"Marketing Videos\"),\n\t\t\tOpacity:   pulumi.Float64(0.75),\n\t\t\tPadding:   pulumi.Float64(0.1),\n\t\t\tPosition:  pulumi.String(\"center\"),\n\t\t\tScale:     pulumi.Float64(0.1),\n\t\t\tUrl:       pulumi.String(\"https://example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.StreamWatermark;\nimport com.pulumi.cloudflare.StreamWatermarkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStreamWatermark = new StreamWatermark(\"exampleStreamWatermark\", StreamWatermarkArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"Marketing Videos\")\n            .opacity(0.75)\n            .padding(0.1)\n            .position(\"center\")\n            .scale(0.1)\n            .url(\"https://example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStreamWatermark:\n    type: cloudflare:StreamWatermark\n    name: example_stream_watermark\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: Marketing Videos\n      opacity: 0.75\n      padding: 0.1\n      position: center\n      scale: 0.1\n      url: https://example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "created": {
                    "type": "string",
                    "description": "The date and a time a watermark profile was created.\n"
                },
                "downloadedFrom": {
                    "type": "string",
                    "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n"
                },
                "height": {
                    "type": "integer",
                    "description": "The height of the image in pixels.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of the watermark profile.\n"
                },
                "opacity": {
                    "type": "number",
                    "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                },
                "padding": {
                    "type": "number",
                    "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                },
                "position": {
                    "type": "string",
                    "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                },
                "scale": {
                    "type": "number",
                    "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                },
                "size": {
                    "type": "number",
                    "description": "The size of the image in bytes.\n"
                },
                "uid": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "url": {
                    "type": "string",
                    "description": "URL of the watermark image to copy.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the image in pixels.\n"
                }
            },
            "required": [
                "created",
                "downloadedFrom",
                "height",
                "name",
                "opacity",
                "padding",
                "position",
                "scale",
                "size",
                "uid",
                "width"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "The unique identifier for a watermark profile.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A short description of the watermark profile.\n"
                },
                "opacity": {
                    "type": "number",
                    "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                },
                "padding": {
                    "type": "number",
                    "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                },
                "position": {
                    "type": "string",
                    "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                },
                "scale": {
                    "type": "number",
                    "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                },
                "url": {
                    "type": "string",
                    "description": "URL of the watermark image to copy.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamWatermark resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "The date and a time a watermark profile was created.\n"
                    },
                    "downloadedFrom": {
                        "type": "string",
                        "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n"
                    },
                    "height": {
                        "type": "integer",
                        "description": "The height of the image in pixels.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "The unique identifier for a watermark profile.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A short description of the watermark profile.\n"
                    },
                    "opacity": {
                        "type": "number",
                        "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n"
                    },
                    "padding": {
                        "type": "number",
                        "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n"
                    },
                    "position": {
                        "type": "string",
                        "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n"
                    },
                    "scale": {
                        "type": "number",
                        "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n"
                    },
                    "size": {
                        "type": "number",
                        "description": "The size of the image in bytes.\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "The unique identifier for a watermark profile.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "URL of the watermark image to copy.\n"
                    },
                    "width": {
                        "type": "integer",
                        "description": "The width of the image in pixels.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/streamWebhook:StreamWebhook": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamWebhook = new cloudflare.StreamWebhook(\"example_stream_webhook\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    notificationUrl: \"https://example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_webhook = cloudflare.StreamWebhook(\"example_stream_webhook\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    notification_url=\"https://example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamWebhook = new Cloudflare.Index.StreamWebhook(\"example_stream_webhook\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        NotificationUrl = \"https://example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewStreamWebhook(ctx, \"example_stream_webhook\", \u0026cloudflare.StreamWebhookArgs{\n\t\t\tAccountId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNotificationUrl: pulumi.String(\"https://example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.StreamWebhook;\nimport com.pulumi.cloudflare.StreamWebhookArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleStreamWebhook = new StreamWebhook(\"exampleStreamWebhook\", StreamWebhookArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .notificationUrl(\"https://example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleStreamWebhook:\n    type: cloudflare:StreamWebhook\n    name: example_stream_webhook\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      notificationUrl: https://example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "The date and time the webhook was last modified.\n"
                },
                "notificationUrl": {
                    "type": "string",
                    "description": "The URL where webhooks will be sent.\n"
                },
                "secret": {
                    "type": "string",
                    "description": "The secret used to verify webhook signatures.\n",
                    "secret": true
                }
            },
            "required": [
                "modified",
                "secret"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The account identifier tag.\n"
                },
                "notificationUrl": {
                    "type": "string",
                    "description": "The URL where webhooks will be sent.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering StreamWebhook resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "The date and time the webhook was last modified.\n"
                    },
                    "notificationUrl": {
                        "type": "string",
                        "description": "The URL where webhooks will be sent.\n"
                    },
                    "secret": {
                        "type": "string",
                        "description": "The secret used to verify webhook signatures.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/teamsAccount:TeamsAccount": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewaySettings = new cloudflare.ZeroTrustGatewaySettings(\"example_zero_trust_gateway_settings\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    settings: {\n        activityLog: {\n            enabled: true,\n        },\n        antivirus: {\n            enabledDownloadPhase: false,\n            enabledUploadPhase: false,\n            failClosed: false,\n            notificationSettings: {\n                enabled: true,\n                includeContext: true,\n                msg: \"msg\",\n                supportUrl: \"support_url\",\n            },\n        },\n        blockPage: {\n            backgroundColor: \"background_color\",\n            enabled: true,\n            footerText: \"--footer--\",\n            headerText: \"--header--\",\n            includeContext: true,\n            logoPath: \"https://logos.com/a.png\",\n            mailtoAddress: \"admin@example.com\",\n            mailtoSubject: \"Blocked User Inquiry\",\n            mode: \"\",\n            name: \"Cloudflare\",\n            suppressFooter: false,\n            targetUri: \"https://example.com\",\n        },\n        bodyScanning: {\n            inspectionMode: \"deep\",\n        },\n        browserIsolation: {\n            nonIdentityEnabled: true,\n            urlBrowserIsolationEnabled: true,\n        },\n        certificate: {\n            id: \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        customCertificate: {\n            enabled: true,\n            id: \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        extendedEmailMatching: {\n            enabled: true,\n        },\n        fips: {\n            tls: true,\n        },\n        hostSelector: {\n            enabled: false,\n        },\n        inspection: {\n            mode: \"static\",\n        },\n        protocolDetection: {\n            enabled: true,\n        },\n        sandbox: {\n            enabled: true,\n            fallbackAction: \"allow\",\n        },\n        tlsDecrypt: {\n            enabled: true,\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_settings = cloudflare.ZeroTrustGatewaySettings(\"example_zero_trust_gateway_settings\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    settings={\n        \"activity_log\": {\n            \"enabled\": True,\n        },\n        \"antivirus\": {\n            \"enabled_download_phase\": False,\n            \"enabled_upload_phase\": False,\n            \"fail_closed\": False,\n            \"notification_settings\": {\n                \"enabled\": True,\n                \"include_context\": True,\n                \"msg\": \"msg\",\n                \"support_url\": \"support_url\",\n            },\n        },\n        \"block_page\": {\n            \"background_color\": \"background_color\",\n            \"enabled\": True,\n            \"footer_text\": \"--footer--\",\n            \"header_text\": \"--header--\",\n            \"include_context\": True,\n            \"logo_path\": \"https://logos.com/a.png\",\n            \"mailto_address\": \"admin@example.com\",\n            \"mailto_subject\": \"Blocked User Inquiry\",\n            \"mode\": \"\",\n            \"name\": \"Cloudflare\",\n            \"suppress_footer\": False,\n            \"target_uri\": \"https://example.com\",\n        },\n        \"body_scanning\": {\n            \"inspection_mode\": \"deep\",\n        },\n        \"browser_isolation\": {\n            \"non_identity_enabled\": True,\n            \"url_browser_isolation_enabled\": True,\n        },\n        \"certificate\": {\n            \"id\": \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        \"custom_certificate\": {\n            \"enabled\": True,\n            \"id\": \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        \"extended_email_matching\": {\n            \"enabled\": True,\n        },\n        \"fips\": {\n            \"tls\": True,\n        },\n        \"host_selector\": {\n            \"enabled\": False,\n        },\n        \"inspection\": {\n            \"mode\": \"static\",\n        },\n        \"protocol_detection\": {\n            \"enabled\": True,\n        },\n        \"sandbox\": {\n            \"enabled\": True,\n            \"fallback_action\": \"allow\",\n        },\n        \"tls_decrypt\": {\n            \"enabled\": True,\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewaySettings = new Cloudflare.Index.ZeroTrustGatewaySettings(\"example_zero_trust_gateway_settings\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Settings = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsArgs\n        {\n            ActivityLog = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsActivityLogArgs\n            {\n                Enabled = true,\n            },\n            Antivirus = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsAntivirusArgs\n            {\n                EnabledDownloadPhase = false,\n                EnabledUploadPhase = false,\n                FailClosed = false,\n                NotificationSettings = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs\n                {\n                    Enabled = true,\n                    IncludeContext = true,\n                    Msg = \"msg\",\n                    SupportUrl = \"support_url\",\n                },\n            },\n            BlockPage = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsBlockPageArgs\n            {\n                BackgroundColor = \"background_color\",\n                Enabled = true,\n                FooterText = \"--footer--\",\n                HeaderText = \"--header--\",\n                IncludeContext = true,\n                LogoPath = \"https://logos.com/a.png\",\n                MailtoAddress = \"admin@example.com\",\n                MailtoSubject = \"Blocked User Inquiry\",\n                Mode = \"\",\n                Name = \"Cloudflare\",\n                SuppressFooter = false,\n                TargetUri = \"https://example.com\",\n            },\n            BodyScanning = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsBodyScanningArgs\n            {\n                InspectionMode = \"deep\",\n            },\n            BrowserIsolation = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs\n            {\n                NonIdentityEnabled = true,\n                UrlBrowserIsolationEnabled = true,\n            },\n            Certificate = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsCertificateArgs\n            {\n                Id = \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n            },\n            CustomCertificate = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsCustomCertificateArgs\n            {\n                Enabled = true,\n                Id = \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n            },\n            ExtendedEmailMatching = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs\n            {\n                Enabled = true,\n            },\n            Fips = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsFipsArgs\n            {\n                Tls = true,\n            },\n            HostSelector = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsHostSelectorArgs\n            {\n                Enabled = false,\n            },\n            Inspection = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsInspectionArgs\n            {\n                Mode = \"static\",\n            },\n            ProtocolDetection = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs\n            {\n                Enabled = true,\n            },\n            Sandbox = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsSandboxArgs\n            {\n                Enabled = true,\n                FallbackAction = \"allow\",\n            },\n            TlsDecrypt = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsTlsDecryptArgs\n            {\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewaySettings(ctx, \"example_zero_trust_gateway_settings\", \u0026cloudflare.ZeroTrustGatewaySettingsArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tSettings: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsArgs{\n\t\t\t\tActivityLog: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsActivityLogArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tAntivirus: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsAntivirusArgs{\n\t\t\t\t\tEnabledDownloadPhase: pulumi.Bool(false),\n\t\t\t\t\tEnabledUploadPhase:   pulumi.Bool(false),\n\t\t\t\t\tFailClosed:           pulumi.Bool(false),\n\t\t\t\t\tNotificationSettings: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs{\n\t\t\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\t\t\tIncludeContext: pulumi.Bool(true),\n\t\t\t\t\t\tMsg:            pulumi.String(\"msg\"),\n\t\t\t\t\t\tSupportUrl:     pulumi.String(\"support_url\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBlockPage: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsBlockPageArgs{\n\t\t\t\t\tBackgroundColor: pulumi.String(\"background_color\"),\n\t\t\t\t\tEnabled:         pulumi.Bool(true),\n\t\t\t\t\tFooterText:      pulumi.String(\"--footer--\"),\n\t\t\t\t\tHeaderText:      pulumi.String(\"--header--\"),\n\t\t\t\t\tIncludeContext:  pulumi.Bool(true),\n\t\t\t\t\tLogoPath:        pulumi.String(\"https://logos.com/a.png\"),\n\t\t\t\t\tMailtoAddress:   pulumi.String(\"admin@example.com\"),\n\t\t\t\t\tMailtoSubject:   pulumi.String(\"Blocked User Inquiry\"),\n\t\t\t\t\tMode:            pulumi.String(\"\"),\n\t\t\t\t\tName:            pulumi.String(\"Cloudflare\"),\n\t\t\t\t\tSuppressFooter:  pulumi.Bool(false),\n\t\t\t\t\tTargetUri:       pulumi.String(\"https://example.com\"),\n\t\t\t\t},\n\t\t\t\tBodyScanning: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsBodyScanningArgs{\n\t\t\t\t\tInspectionMode: pulumi.String(\"deep\"),\n\t\t\t\t},\n\t\t\t\tBrowserIsolation: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs{\n\t\t\t\t\tNonIdentityEnabled:         pulumi.Bool(true),\n\t\t\t\t\tUrlBrowserIsolationEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsCertificateArgs{\n\t\t\t\t\tId: pulumi.String(\"d1b364c5-1311-466e-a194-f0e943e0799f\"),\n\t\t\t\t},\n\t\t\t\tCustomCertificate: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsCustomCertificateArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId:      pulumi.String(\"d1b364c5-1311-466e-a194-f0e943e0799f\"),\n\t\t\t\t},\n\t\t\t\tExtendedEmailMatching: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tFips: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsFipsArgs{\n\t\t\t\t\tTls: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tHostSelector: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsHostSelectorArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tInspection: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsInspectionArgs{\n\t\t\t\t\tMode: pulumi.String(\"static\"),\n\t\t\t\t},\n\t\t\t\tProtocolDetection: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tSandbox: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsSandboxArgs{\n\t\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\t\tFallbackAction: pulumi.String(\"allow\"),\n\t\t\t\t},\n\t\t\t\tTlsDecrypt: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsTlsDecryptArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewaySettings;\nimport com.pulumi.cloudflare.ZeroTrustGatewaySettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsActivityLogArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsAntivirusArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsBlockPageArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsBodyScanningArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsCustomCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsFipsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsHostSelectorArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsInspectionArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsSandboxArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsTlsDecryptArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewaySettings = new ZeroTrustGatewaySettings(\"exampleZeroTrustGatewaySettings\", ZeroTrustGatewaySettingsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .settings(ZeroTrustGatewaySettingsSettingsArgs.builder()\n                .activityLog(ZeroTrustGatewaySettingsSettingsActivityLogArgs.builder()\n                    .enabled(true)\n                    .build())\n                .antivirus(ZeroTrustGatewaySettingsSettingsAntivirusArgs.builder()\n                    .enabledDownloadPhase(false)\n                    .enabledUploadPhase(false)\n                    .failClosed(false)\n                    .notificationSettings(ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs.builder()\n                        .enabled(true)\n                        .includeContext(true)\n                        .msg(\"msg\")\n                        .supportUrl(\"support_url\")\n                        .build())\n                    .build())\n                .blockPage(ZeroTrustGatewaySettingsSettingsBlockPageArgs.builder()\n                    .backgroundColor(\"background_color\")\n                    .enabled(true)\n                    .footerText(\"--footer--\")\n                    .headerText(\"--header--\")\n                    .includeContext(true)\n                    .logoPath(\"https://logos.com/a.png\")\n                    .mailtoAddress(\"admin@example.com\")\n                    .mailtoSubject(\"Blocked User Inquiry\")\n                    .mode(\"\")\n                    .name(\"Cloudflare\")\n                    .suppressFooter(false)\n                    .targetUri(\"https://example.com\")\n                    .build())\n                .bodyScanning(ZeroTrustGatewaySettingsSettingsBodyScanningArgs.builder()\n                    .inspectionMode(\"deep\")\n                    .build())\n                .browserIsolation(ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs.builder()\n                    .nonIdentityEnabled(true)\n                    .urlBrowserIsolationEnabled(true)\n                    .build())\n                .certificate(ZeroTrustGatewaySettingsSettingsCertificateArgs.builder()\n                    .id(\"d1b364c5-1311-466e-a194-f0e943e0799f\")\n                    .build())\n                .customCertificate(ZeroTrustGatewaySettingsSettingsCustomCertificateArgs.builder()\n                    .enabled(true)\n                    .id(\"d1b364c5-1311-466e-a194-f0e943e0799f\")\n                    .build())\n                .extendedEmailMatching(ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs.builder()\n                    .enabled(true)\n                    .build())\n                .fips(ZeroTrustGatewaySettingsSettingsFipsArgs.builder()\n                    .tls(true)\n                    .build())\n                .hostSelector(ZeroTrustGatewaySettingsSettingsHostSelectorArgs.builder()\n                    .enabled(false)\n                    .build())\n                .inspection(ZeroTrustGatewaySettingsSettingsInspectionArgs.builder()\n                    .mode(\"static\")\n                    .build())\n                .protocolDetection(ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs.builder()\n                    .enabled(true)\n                    .build())\n                .sandbox(ZeroTrustGatewaySettingsSettingsSandboxArgs.builder()\n                    .enabled(true)\n                    .fallbackAction(\"allow\")\n                    .build())\n                .tlsDecrypt(ZeroTrustGatewaySettingsSettingsTlsDecryptArgs.builder()\n                    .enabled(true)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewaySettings:\n    type: cloudflare:ZeroTrustGatewaySettings\n    name: example_zero_trust_gateway_settings\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      settings:\n        activityLog:\n          enabled: true\n        antivirus:\n          enabledDownloadPhase: false\n          enabledUploadPhase: false\n          failClosed: false\n          notificationSettings:\n            enabled: true\n            includeContext: true\n            msg: msg\n            supportUrl: support_url\n        blockPage:\n          backgroundColor: background_color\n          enabled: true\n          footerText: --footer--\n          headerText: --header--\n          includeContext: true\n          logoPath: https://logos.com/a.png\n          mailtoAddress: admin@example.com\n          mailtoSubject: Blocked User Inquiry\n          mode: \"\"\n          name: Cloudflare\n          suppressFooter: false\n          targetUri: https://example.com\n        bodyScanning:\n          inspectionMode: deep\n        browserIsolation:\n          nonIdentityEnabled: true\n          urlBrowserIsolationEnabled: true\n        certificate:\n          id: d1b364c5-1311-466e-a194-f0e943e0799f\n        customCertificate:\n          enabled: true\n          id: d1b364c5-1311-466e-a194-f0e943e0799f\n        extendedEmailMatching:\n          enabled: true\n        fips:\n          tls: true\n        hostSelector:\n          enabled: false\n        inspection:\n          mode: static\n        protocolDetection:\n          enabled: true\n        sandbox:\n          enabled: true\n          fallbackAction: allow\n        tlsDecrypt:\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/teamsAccount:TeamsAccount example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettings:TeamsAccountSettings",
                    "description": "Specify account settings.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "accountId",
                "createdAt",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/TeamsAccountSettings:TeamsAccountSettings",
                    "description": "Specify account settings.\n"
                }
            },
            "requiredInputs": [
                "accountId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TeamsAccount resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/TeamsAccountSettings:TeamsAccountSettings",
                        "description": "Specify account settings.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsAccount:TeamsAccount"
                }
            ],
            "deprecationMessage": "cloudflare.index/teamsaccount.TeamsAccount has been deprecated in favor of cloudflare.index/zerotrustgatewaysettings.ZeroTrustGatewaySettings"
        },
        "cloudflare:index/teamsList:TeamsList": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustList = new cloudflare.ZeroTrustList(\"example_zero_trust_list\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Admin Serial Numbers\",\n    type: \"SERIAL\",\n    description: \"The serial numbers for administrators\",\n    items: [{\n        description: \"Austin office IP\",\n        value: \"8GE8721REF\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_list = cloudflare.ZeroTrustList(\"example_zero_trust_list\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Admin Serial Numbers\",\n    type=\"SERIAL\",\n    description=\"The serial numbers for administrators\",\n    items=[{\n        \"description\": \"Austin office IP\",\n        \"value\": \"8GE8721REF\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustList = new Cloudflare.Index.ZeroTrustList(\"example_zero_trust_list\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Admin Serial Numbers\",\n        Type = \"SERIAL\",\n        Description = \"The serial numbers for administrators\",\n        Items = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustListItemArgs\n            {\n                Description = \"Austin office IP\",\n                Value = \"8GE8721REF\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustList(ctx, \"example_zero_trust_list\", \u0026cloudflare.ZeroTrustListArgs{\n\t\t\tAccountId:   pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:        pulumi.String(\"Admin Serial Numbers\"),\n\t\t\tType:        pulumi.String(\"SERIAL\"),\n\t\t\tDescription: pulumi.String(\"The serial numbers for administrators\"),\n\t\t\tItems: cloudflare.ZeroTrustListItemArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustListItemArgs{\n\t\t\t\t\tDescription: pulumi.String(\"Austin office IP\"),\n\t\t\t\t\tValue:       pulumi.String(\"8GE8721REF\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustList;\nimport com.pulumi.cloudflare.ZeroTrustListArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustListItemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustList = new ZeroTrustList(\"exampleZeroTrustList\", ZeroTrustListArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Admin Serial Numbers\")\n            .type(\"SERIAL\")\n            .description(\"The serial numbers for administrators\")\n            .items(ZeroTrustListItemArgs.builder()\n                .description(\"Austin office IP\")\n                .value(\"8GE8721REF\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustList:\n    type: cloudflare:ZeroTrustList\n    name: example_zero_trust_list\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Admin Serial Numbers\n      type: SERIAL\n      description: The serial numbers for administrators\n      items:\n        - description: Austin office IP\n          value: 8GE8721REF\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/teamsList:TeamsList example '\u003caccount_id\u003e/\u003clist_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list description.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsListItem:TeamsListItem"
                    },
                    "description": "Add items to the list.\n"
                },
                "listCount": {
                    "type": "number",
                    "description": "Indicate the number of items in the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the list name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "description",
                "listCount",
                "name",
                "type",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list description.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsListItem:TeamsListItem"
                    },
                    "description": "Add items to the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the list name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                }
            },
            "requiredInputs": [
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TeamsList resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "Provide the list description.\n"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/TeamsListItem:TeamsListItem"
                        },
                        "description": "Add items to the list.\n"
                    },
                    "listCount": {
                        "type": "number",
                        "description": "Indicate the number of items in the list.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the list name.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsList:TeamsList"
                }
            ],
            "deprecationMessage": "cloudflare.index/teamslist.TeamsList has been deprecated in favor of cloudflare.index/zerotrustlist.ZeroTrustList"
        },
        "cloudflare:index/teamsLocation:TeamsLocation": {
            "description": "Accepted Permissions\n\n- `Cloudflare Zero Trust Secure DNS Locations Write`\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDnsLocation = new cloudflare.ZeroTrustDnsLocation(\"example_zero_trust_dns_location\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Austin Office Location\",\n    clientDefault: false,\n    dnsDestinationIpsId: \"0e4a32c6-6fb8-4858-9296-98f51631e8e6\",\n    ecsSupport: false,\n    endpoints: {\n        doh: {\n            enabled: true,\n            networks: [{\n                network: \"2001:85a3::/64\",\n            }],\n            requireToken: true,\n        },\n        dot: {\n            enabled: true,\n            networks: [{\n                network: \"2001:85a3::/64\",\n            }],\n        },\n        ipv4: {\n            enabled: true,\n        },\n        ipv6: {\n            enabled: true,\n            networks: [{\n                network: \"2001:85a3::/64\",\n            }],\n        },\n    },\n    networks: [{\n        network: \"192.0.2.1/32\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dns_location = cloudflare.ZeroTrustDnsLocation(\"example_zero_trust_dns_location\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Austin Office Location\",\n    client_default=False,\n    dns_destination_ips_id=\"0e4a32c6-6fb8-4858-9296-98f51631e8e6\",\n    ecs_support=False,\n    endpoints={\n        \"doh\": {\n            \"enabled\": True,\n            \"networks\": [{\n                \"network\": \"2001:85a3::/64\",\n            }],\n            \"require_token\": True,\n        },\n        \"dot\": {\n            \"enabled\": True,\n            \"networks\": [{\n                \"network\": \"2001:85a3::/64\",\n            }],\n        },\n        \"ipv4\": {\n            \"enabled\": True,\n        },\n        \"ipv6\": {\n            \"enabled\": True,\n            \"networks\": [{\n                \"network\": \"2001:85a3::/64\",\n            }],\n        },\n    },\n    networks=[{\n        \"network\": \"192.0.2.1/32\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDnsLocation = new Cloudflare.Index.ZeroTrustDnsLocation(\"example_zero_trust_dns_location\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Austin Office Location\",\n        ClientDefault = false,\n        DnsDestinationIpsId = \"0e4a32c6-6fb8-4858-9296-98f51631e8e6\",\n        EcsSupport = false,\n        Endpoints = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsArgs\n        {\n            Doh = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDohArgs\n            {\n                Enabled = true,\n                Networks = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDohNetworkArgs\n                    {\n                        Network = \"2001:85a3::/64\",\n                    },\n                },\n                RequireToken = true,\n            },\n            Dot = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDotArgs\n            {\n                Enabled = true,\n                Networks = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDotNetworkArgs\n                    {\n                        Network = \"2001:85a3::/64\",\n                    },\n                },\n            },\n            Ipv4 = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsIpv4Args\n            {\n                Enabled = true,\n            },\n            Ipv6 = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsIpv6Args\n            {\n                Enabled = true,\n                Networks = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsIpv6NetworkArgs\n                    {\n                        Network = \"2001:85a3::/64\",\n                    },\n                },\n            },\n        },\n        Networks = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDnsLocationNetworkArgs\n            {\n                Network = \"192.0.2.1/32\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDnsLocation(ctx, \"example_zero_trust_dns_location\", \u0026cloudflare.ZeroTrustDnsLocationArgs{\n\t\t\tAccountId:           pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:                pulumi.String(\"Austin Office Location\"),\n\t\t\tClientDefault:       pulumi.Bool(false),\n\t\t\tDnsDestinationIpsId: pulumi.String(\"0e4a32c6-6fb8-4858-9296-98f51631e8e6\"),\n\t\t\tEcsSupport:          pulumi.Bool(false),\n\t\t\tEndpoints: \u0026cloudflare.ZeroTrustDnsLocationEndpointsArgs{\n\t\t\t\tDoh: \u0026cloudflare.ZeroTrustDnsLocationEndpointsDohArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationEndpointsDohNetworkArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationEndpointsDohNetworkArgs{\n\t\t\t\t\t\t\tNetwork: pulumi.String(\"2001:85a3::/64\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tRequireToken: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tDot: \u0026cloudflare.ZeroTrustDnsLocationEndpointsDotArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationEndpointsDotNetworkArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationEndpointsDotNetworkArgs{\n\t\t\t\t\t\t\tNetwork: pulumi.String(\"2001:85a3::/64\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIpv4: \u0026cloudflare.ZeroTrustDnsLocationEndpointsIpv4Args{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tIpv6: \u0026cloudflare.ZeroTrustDnsLocationEndpointsIpv6Args{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationEndpointsIpv6NetworkArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationEndpointsIpv6NetworkArgs{\n\t\t\t\t\t\t\tNetwork: pulumi.String(\"2001:85a3::/64\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationNetworkArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationNetworkArgs{\n\t\t\t\t\tNetwork: pulumi.String(\"192.0.2.1/32\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDnsLocation;\nimport com.pulumi.cloudflare.ZeroTrustDnsLocationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsDohArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsDotArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsIpv4Args;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsIpv6Args;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDnsLocation = new ZeroTrustDnsLocation(\"exampleZeroTrustDnsLocation\", ZeroTrustDnsLocationArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Austin Office Location\")\n            .clientDefault(false)\n            .dnsDestinationIpsId(\"0e4a32c6-6fb8-4858-9296-98f51631e8e6\")\n            .ecsSupport(false)\n            .endpoints(ZeroTrustDnsLocationEndpointsArgs.builder()\n                .doh(ZeroTrustDnsLocationEndpointsDohArgs.builder()\n                    .enabled(true)\n                    .networks(ZeroTrustDnsLocationEndpointsDohNetworkArgs.builder()\n                        .network(\"2001:85a3::/64\")\n                        .build())\n                    .requireToken(true)\n                    .build())\n                .dot(ZeroTrustDnsLocationEndpointsDotArgs.builder()\n                    .enabled(true)\n                    .networks(ZeroTrustDnsLocationEndpointsDotNetworkArgs.builder()\n                        .network(\"2001:85a3::/64\")\n                        .build())\n                    .build())\n                .ipv4(ZeroTrustDnsLocationEndpointsIpv4Args.builder()\n                    .enabled(true)\n                    .build())\n                .ipv6(ZeroTrustDnsLocationEndpointsIpv6Args.builder()\n                    .enabled(true)\n                    .networks(ZeroTrustDnsLocationEndpointsIpv6NetworkArgs.builder()\n                        .network(\"2001:85a3::/64\")\n                        .build())\n                    .build())\n                .build())\n            .networks(ZeroTrustDnsLocationNetworkArgs.builder()\n                .network(\"192.0.2.1/32\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDnsLocation:\n    type: cloudflare:ZeroTrustDnsLocation\n    name: example_zero_trust_dns_location\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Austin Office Location\n      clientDefault: false\n      dnsDestinationIpsId: 0e4a32c6-6fb8-4858-9296-98f51631e8e6\n      ecsSupport: false\n      endpoints:\n        doh:\n          enabled: true\n          networks:\n            - network: 2001:85a3::/64\n          requireToken: true\n        dot:\n          enabled: true\n          networks:\n            - network: 2001:85a3::/64\n        ipv4:\n          enabled: true\n        ipv6:\n          enabled: true\n          networks:\n            - network: 2001:85a3::/64\n      networks:\n        - network: 192.0.2.1/32\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/teamsLocation:TeamsLocation example '\u003caccount_id\u003e/\u003clocation_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "clientDefault": {
                    "type": "boolean",
                    "description": "Indicate whether this location is the default location.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "dnsDestinationIpsId": {
                    "type": "string",
                    "description": "Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged.\n"
                },
                "dnsDestinationIpv6BlockId": {
                    "type": "string",
                    "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.\n"
                },
                "dohSubdomain": {
                    "type": "string",
                    "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.\n"
                },
                "ecsSupport": {
                    "type": "boolean",
                    "description": "Indicate whether the location must resolve EDNS queries.\n"
                },
                "endpoints": {
                    "$ref": "#/types/cloudflare:index/TeamsLocationEndpoints:TeamsLocationEndpoints",
                    "description": "Configure the destination endpoints for this location.\n"
                },
                "ip": {
                    "type": "string",
                    "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.\n"
                },
                "ipv4Destination": {
                    "type": "string",
                    "description": "Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                },
                "ipv4DestinationBackup": {
                    "type": "string",
                    "description": "Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the location name.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsLocationNetwork:TeamsLocationNetwork"
                    },
                    "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "clientDefault",
                "createdAt",
                "dnsDestinationIpsId",
                "dnsDestinationIpv6BlockId",
                "dohSubdomain",
                "ecsSupport",
                "ip",
                "ipv4Destination",
                "ipv4DestinationBackup",
                "name",
                "networks",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "clientDefault": {
                    "type": "boolean",
                    "description": "Indicate whether this location is the default location.\n"
                },
                "dnsDestinationIpsId": {
                    "type": "string",
                    "description": "Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged.\n"
                },
                "ecsSupport": {
                    "type": "boolean",
                    "description": "Indicate whether the location must resolve EDNS queries.\n"
                },
                "endpoints": {
                    "$ref": "#/types/cloudflare:index/TeamsLocationEndpoints:TeamsLocationEndpoints",
                    "description": "Configure the destination endpoints for this location.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the location name.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TeamsLocationNetwork:TeamsLocationNetwork"
                    },
                    "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TeamsLocation resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "clientDefault": {
                        "type": "boolean",
                        "description": "Indicate whether this location is the default location.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "dnsDestinationIpsId": {
                        "type": "string",
                        "description": "Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged.\n"
                    },
                    "dnsDestinationIpv6BlockId": {
                        "type": "string",
                        "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.\n"
                    },
                    "dohSubdomain": {
                        "type": "string",
                        "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.\n"
                    },
                    "ecsSupport": {
                        "type": "boolean",
                        "description": "Indicate whether the location must resolve EDNS queries.\n"
                    },
                    "endpoints": {
                        "$ref": "#/types/cloudflare:index/TeamsLocationEndpoints:TeamsLocationEndpoints",
                        "description": "Configure the destination endpoints for this location.\n"
                    },
                    "ip": {
                        "type": "string",
                        "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.\n"
                    },
                    "ipv4Destination": {
                        "type": "string",
                        "description": "Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                    },
                    "ipv4DestinationBackup": {
                        "type": "string",
                        "description": "Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the location name.\n"
                    },
                    "networks": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/TeamsLocationNetwork:TeamsLocationNetwork"
                        },
                        "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsLocation:TeamsLocation"
                }
            ],
            "deprecationMessage": "cloudflare.index/teamslocation.TeamsLocation has been deprecated in favor of cloudflare.index/zerotrustdnslocation.ZeroTrustDnsLocation"
        },
        "cloudflare:index/teamsProxyEndpoint:TeamsProxyEndpoint": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayProxyEndpoint = new cloudflare.ZeroTrustGatewayProxyEndpoint(\"example_zero_trust_gateway_proxy_endpoint\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Devops team\",\n    kind: \"ip\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_proxy_endpoint = cloudflare.ZeroTrustGatewayProxyEndpoint(\"example_zero_trust_gateway_proxy_endpoint\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Devops team\",\n    kind=\"ip\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayProxyEndpoint = new Cloudflare.Index.ZeroTrustGatewayProxyEndpoint(\"example_zero_trust_gateway_proxy_endpoint\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Devops team\",\n        Kind = \"ip\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayProxyEndpoint(ctx, \"example_zero_trust_gateway_proxy_endpoint\", \u0026cloudflare.ZeroTrustGatewayProxyEndpointArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:      pulumi.String(\"Devops team\"),\n\t\t\tKind:      pulumi.String(\"ip\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayProxyEndpoint;\nimport com.pulumi.cloudflare.ZeroTrustGatewayProxyEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayProxyEndpoint = new ZeroTrustGatewayProxyEndpoint(\"exampleZeroTrustGatewayProxyEndpoint\", ZeroTrustGatewayProxyEndpointArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Devops team\")\n            .kind(\"ip\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayProxyEndpoint:\n    type: cloudflare:ZeroTrustGatewayProxyEndpoint\n    name: example_zero_trust_gateway_proxy_endpoint\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Devops team\n      kind: ip\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/teamsProxyEndpoint:TeamsProxyEndpoint example '\u003caccount_id\u003e/\u003cproxy_endpoint_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the name of the proxy endpoint.\n"
                },
                "subdomain": {
                    "type": "string",
                    "description": "Specify the subdomain to use as the destination in the proxy client.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "kind",
                "name",
                "subdomain",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the name of the proxy endpoint.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TeamsProxyEndpoint resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "ips": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                    },
                    "kind": {
                        "type": "string",
                        "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the name of the proxy endpoint.\n"
                    },
                    "subdomain": {
                        "type": "string",
                        "description": "Specify the subdomain to use as the destination in the proxy client.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsProxyEndpoint:TeamsProxyEndpoint"
                }
            ],
            "deprecationMessage": "cloudflare.index/teamsproxyendpoint.TeamsProxyEndpoint has been deprecated in favor of cloudflare.index/zerotrustgatewayproxyendpoint.ZeroTrustGatewayProxyEndpoint"
        },
        "cloudflare:index/teamsRule:TeamsRule": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPolicy = new cloudflare.ZeroTrustGatewayPolicy(\"example_zero_trust_gateway_policy\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    action: \"allow\",\n    name: \"block bad websites\",\n    description: \"Block bad websites based on their host name.\",\n    devicePosture: \"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\",\n    enabled: true,\n    expiration: {\n        expiresAt: \"2014-01-01T05:20:20Z\",\n        duration: 10,\n    },\n    filters: [\"http\"],\n    identity: \"any(identity.groups.name[*] in {\\\"finance\\\"})\",\n    precedence: 0,\n    ruleSettings: {\n        addHeaders: {\n            \"My-Next-Header\": [\n                \"foo\",\n                \"bar\",\n            ],\n            \"X-Custom-Header-Name\": [\"somecustomvalue\"],\n        },\n        allowChildBypass: false,\n        auditSsh: {\n            commandLogging: false,\n        },\n        bisoAdminControls: {\n            copy: \"remote_only\",\n            dcp: true,\n            dd: true,\n            dk: true,\n            download: \"enabled\",\n            dp: false,\n            du: true,\n            keyboard: \"enabled\",\n            paste: \"enabled\",\n            printing: \"enabled\",\n            upload: \"enabled\",\n            version: \"v1\",\n            wmId: \"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\",\n        },\n        blockPage: {\n            targetUri: \"https://example.com\",\n            includeContext: true,\n        },\n        blockPageEnabled: true,\n        blockReason: \"This website is a security risk\",\n        bypassParentRule: false,\n        checkSession: {\n            duration: \"300s\",\n            enforce: true,\n        },\n        dnsResolvers: {\n            ipv4s: [{\n                ip: \"2.2.2.2\",\n                port: 5053,\n                routeThroughPrivateNetwork: true,\n                vnetId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n            ipv6s: [{\n                ip: \"2001:DB8::\",\n                port: 5053,\n                routeThroughPrivateNetwork: true,\n                vnetId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n        },\n        egress: {\n            ipv4: \"192.0.2.2\",\n            ipv4Fallback: \"192.0.2.3\",\n            ipv6: \"2001:DB8::/64\",\n        },\n        forensicCopy: {\n            enabled: true,\n        },\n        ignoreCnameCategoryMatches: true,\n        insecureDisableDnssecValidation: false,\n        ipCategories: true,\n        ipIndicatorFeeds: true,\n        l4override: {\n            ip: \"1.1.1.1\",\n            port: 0,\n        },\n        notificationSettings: {\n            enabled: true,\n            includeContext: true,\n            msg: \"msg\",\n            supportUrl: \"support_url\",\n        },\n        overrideHost: \"example.com\",\n        overrideIps: [\n            \"1.1.1.1\",\n            \"2.2.2.2\",\n        ],\n        payloadLog: {\n            enabled: true,\n        },\n        quarantine: {\n            fileTypes: [\"exe\"],\n        },\n        redirect: {\n            targetUri: \"https://example.com\",\n            includeContext: true,\n            preservePathAndQuery: true,\n        },\n        resolveDnsInternally: {\n            fallback: \"none\",\n            viewId: \"view_id\",\n        },\n        resolveDnsThroughCloudflare: true,\n        untrustedCert: {\n            action: \"error\",\n        },\n    },\n    schedule: {\n        fri: \"08:00-12:30,13:30-17:00\",\n        mon: \"08:00-12:30,13:30-17:00\",\n        sat: \"08:00-12:30,13:30-17:00\",\n        sun: \"08:00-12:30,13:30-17:00\",\n        thu: \"08:00-12:30,13:30-17:00\",\n        timeZone: \"America/New York\",\n        tue: \"08:00-12:30,13:30-17:00\",\n        wed: \"08:00-12:30,13:30-17:00\",\n    },\n    traffic: \"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_policy = cloudflare.ZeroTrustGatewayPolicy(\"example_zero_trust_gateway_policy\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    action=\"allow\",\n    name=\"block bad websites\",\n    description=\"Block bad websites based on their host name.\",\n    device_posture=\"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\",\n    enabled=True,\n    expiration={\n        \"expires_at\": \"2014-01-01T05:20:20Z\",\n        \"duration\": 10,\n    },\n    filters=[\"http\"],\n    identity=\"any(identity.groups.name[*] in {\\\"finance\\\"})\",\n    precedence=0,\n    rule_settings={\n        \"add_headers\": {\n            \"My-Next-Header\": [\n                \"foo\",\n                \"bar\",\n            ],\n            \"X-Custom-Header-Name\": [\"somecustomvalue\"],\n        },\n        \"allow_child_bypass\": False,\n        \"audit_ssh\": {\n            \"command_logging\": False,\n        },\n        \"biso_admin_controls\": {\n            \"copy\": \"remote_only\",\n            \"dcp\": True,\n            \"dd\": True,\n            \"dk\": True,\n            \"download\": \"enabled\",\n            \"dp\": False,\n            \"du\": True,\n            \"keyboard\": \"enabled\",\n            \"paste\": \"enabled\",\n            \"printing\": \"enabled\",\n            \"upload\": \"enabled\",\n            \"version\": \"v1\",\n            \"wm_id\": \"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\",\n        },\n        \"block_page\": {\n            \"target_uri\": \"https://example.com\",\n            \"include_context\": True,\n        },\n        \"block_page_enabled\": True,\n        \"block_reason\": \"This website is a security risk\",\n        \"bypass_parent_rule\": False,\n        \"check_session\": {\n            \"duration\": \"300s\",\n            \"enforce\": True,\n        },\n        \"dns_resolvers\": {\n            \"ipv4s\": [{\n                \"ip\": \"2.2.2.2\",\n                \"port\": 5053,\n                \"route_through_private_network\": True,\n                \"vnet_id\": \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n            \"ipv6s\": [{\n                \"ip\": \"2001:DB8::\",\n                \"port\": 5053,\n                \"route_through_private_network\": True,\n                \"vnet_id\": \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n        },\n        \"egress\": {\n            \"ipv4\": \"192.0.2.2\",\n            \"ipv4_fallback\": \"192.0.2.3\",\n            \"ipv6\": \"2001:DB8::/64\",\n        },\n        \"forensic_copy\": {\n            \"enabled\": True,\n        },\n        \"ignore_cname_category_matches\": True,\n        \"insecure_disable_dnssec_validation\": False,\n        \"ip_categories\": True,\n        \"ip_indicator_feeds\": True,\n        \"l4override\": {\n            \"ip\": \"1.1.1.1\",\n            \"port\": 0,\n        },\n        \"notification_settings\": {\n            \"enabled\": True,\n            \"include_context\": True,\n            \"msg\": \"msg\",\n            \"support_url\": \"support_url\",\n        },\n        \"override_host\": \"example.com\",\n        \"override_ips\": [\n            \"1.1.1.1\",\n            \"2.2.2.2\",\n        ],\n        \"payload_log\": {\n            \"enabled\": True,\n        },\n        \"quarantine\": {\n            \"file_types\": [\"exe\"],\n        },\n        \"redirect\": {\n            \"target_uri\": \"https://example.com\",\n            \"include_context\": True,\n            \"preserve_path_and_query\": True,\n        },\n        \"resolve_dns_internally\": {\n            \"fallback\": \"none\",\n            \"view_id\": \"view_id\",\n        },\n        \"resolve_dns_through_cloudflare\": True,\n        \"untrusted_cert\": {\n            \"action\": \"error\",\n        },\n    },\n    schedule={\n        \"fri\": \"08:00-12:30,13:30-17:00\",\n        \"mon\": \"08:00-12:30,13:30-17:00\",\n        \"sat\": \"08:00-12:30,13:30-17:00\",\n        \"sun\": \"08:00-12:30,13:30-17:00\",\n        \"thu\": \"08:00-12:30,13:30-17:00\",\n        \"time_zone\": \"America/New York\",\n        \"tue\": \"08:00-12:30,13:30-17:00\",\n        \"wed\": \"08:00-12:30,13:30-17:00\",\n    },\n    traffic=\"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPolicy = new Cloudflare.Index.ZeroTrustGatewayPolicy(\"example_zero_trust_gateway_policy\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Action = \"allow\",\n        Name = \"block bad websites\",\n        Description = \"Block bad websites based on their host name.\",\n        DevicePosture = \"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\",\n        Enabled = true,\n        Expiration = new Cloudflare.Inputs.ZeroTrustGatewayPolicyExpirationArgs\n        {\n            ExpiresAt = \"2014-01-01T05:20:20Z\",\n            Duration = 10,\n        },\n        Filters = new[]\n        {\n            \"http\",\n        },\n        Identity = \"any(identity.groups.name[*] in {\\\"finance\\\"})\",\n        Precedence = 0,\n        RuleSettings = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsArgs\n        {\n            AddHeaders = \n            {\n                { \"My-Next-Header\", new[]\n                {\n                    \"foo\",\n                    \"bar\",\n                } },\n                { \"X-Custom-Header-Name\", new[]\n                {\n                    \"somecustomvalue\",\n                } },\n            },\n            AllowChildBypass = false,\n            AuditSsh = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs\n            {\n                CommandLogging = false,\n            },\n            BisoAdminControls = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs\n            {\n                Copy = \"remote_only\",\n                Dcp = true,\n                Dd = true,\n                Dk = true,\n                Download = \"enabled\",\n                Dp = false,\n                Du = true,\n                Keyboard = \"enabled\",\n                Paste = \"enabled\",\n                Printing = \"enabled\",\n                Upload = \"enabled\",\n                Version = \"v1\",\n                WmId = \"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\",\n            },\n            BlockPage = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs\n            {\n                TargetUri = \"https://example.com\",\n                IncludeContext = true,\n            },\n            BlockPageEnabled = true,\n            BlockReason = \"This website is a security risk\",\n            BypassParentRule = false,\n            CheckSession = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs\n            {\n                Duration = \"300s\",\n                Enforce = true,\n            },\n            DnsResolvers = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs\n            {\n                Ipv4s = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Args\n                    {\n                        Ip = \"2.2.2.2\",\n                        Port = 5053,\n                        RouteThroughPrivateNetwork = true,\n                        VnetId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n                    },\n                },\n                Ipv6s = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Args\n                    {\n                        Ip = \"2001:DB8::\",\n                        Port = 5053,\n                        RouteThroughPrivateNetwork = true,\n                        VnetId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n                    },\n                },\n            },\n            Egress = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsEgressArgs\n            {\n                Ipv4 = \"192.0.2.2\",\n                Ipv4Fallback = \"192.0.2.3\",\n                Ipv6 = \"2001:DB8::/64\",\n            },\n            ForensicCopy = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs\n            {\n                Enabled = true,\n            },\n            IgnoreCnameCategoryMatches = true,\n            InsecureDisableDnssecValidation = false,\n            IpCategories = true,\n            IpIndicatorFeeds = true,\n            L4override = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs\n            {\n                Ip = \"1.1.1.1\",\n                Port = 0,\n            },\n            NotificationSettings = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs\n            {\n                Enabled = true,\n                IncludeContext = true,\n                Msg = \"msg\",\n                SupportUrl = \"support_url\",\n            },\n            OverrideHost = \"example.com\",\n            OverrideIps = new[]\n            {\n                \"1.1.1.1\",\n                \"2.2.2.2\",\n            },\n            PayloadLog = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs\n            {\n                Enabled = true,\n            },\n            Quarantine = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs\n            {\n                FileTypes = new[]\n                {\n                    \"exe\",\n                },\n            },\n            Redirect = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsRedirectArgs\n            {\n                TargetUri = \"https://example.com\",\n                IncludeContext = true,\n                PreservePathAndQuery = true,\n            },\n            ResolveDnsInternally = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs\n            {\n                Fallback = \"none\",\n                ViewId = \"view_id\",\n            },\n            ResolveDnsThroughCloudflare = true,\n            UntrustedCert = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs\n            {\n                Action = \"error\",\n            },\n        },\n        Schedule = new Cloudflare.Inputs.ZeroTrustGatewayPolicyScheduleArgs\n        {\n            Fri = \"08:00-12:30,13:30-17:00\",\n            Mon = \"08:00-12:30,13:30-17:00\",\n            Sat = \"08:00-12:30,13:30-17:00\",\n            Sun = \"08:00-12:30,13:30-17:00\",\n            Thu = \"08:00-12:30,13:30-17:00\",\n            TimeZone = \"America/New York\",\n            Tue = \"08:00-12:30,13:30-17:00\",\n            Wed = \"08:00-12:30,13:30-17:00\",\n        },\n        Traffic = \"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayPolicy(ctx, \"example_zero_trust_gateway_policy\", \u0026cloudflare.ZeroTrustGatewayPolicyArgs{\n\t\t\tAccountId:     pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tAction:        pulumi.String(\"allow\"),\n\t\t\tName:          pulumi.String(\"block bad websites\"),\n\t\t\tDescription:   pulumi.String(\"Block bad websites based on their host name.\"),\n\t\t\tDevicePosture: pulumi.String(\"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\"),\n\t\t\tEnabled:       pulumi.Bool(true),\n\t\t\tExpiration: \u0026cloudflare.ZeroTrustGatewayPolicyExpirationArgs{\n\t\t\t\tExpiresAt: pulumi.String(\"2014-01-01T05:20:20Z\"),\n\t\t\t\tDuration:  pulumi.Int(10),\n\t\t\t},\n\t\t\tFilters: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tIdentity:   pulumi.String(\"any(identity.groups.name[*] in {\\\"finance\\\"})\"),\n\t\t\tPrecedence: pulumi.Int(0),\n\t\t\tRuleSettings: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsArgs{\n\t\t\t\tAddHeaders: pulumi.StringArrayMap{\n\t\t\t\t\t\"My-Next-Header\": pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"foo\"),\n\t\t\t\t\t\tpulumi.String(\"bar\"),\n\t\t\t\t\t},\n\t\t\t\t\t\"X-Custom-Header-Name\": pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"somecustomvalue\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAllowChildBypass: pulumi.Bool(false),\n\t\t\t\tAuditSsh: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs{\n\t\t\t\t\tCommandLogging: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tBisoAdminControls: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs{\n\t\t\t\t\tCopy:     pulumi.String(\"remote_only\"),\n\t\t\t\t\tDcp:      pulumi.Bool(true),\n\t\t\t\t\tDd:       pulumi.Bool(true),\n\t\t\t\t\tDk:       pulumi.Bool(true),\n\t\t\t\t\tDownload: pulumi.String(\"enabled\"),\n\t\t\t\t\tDp:       pulumi.Bool(false),\n\t\t\t\t\tDu:       pulumi.Bool(true),\n\t\t\t\t\tKeyboard: pulumi.String(\"enabled\"),\n\t\t\t\t\tPaste:    pulumi.String(\"enabled\"),\n\t\t\t\t\tPrinting: pulumi.String(\"enabled\"),\n\t\t\t\t\tUpload:   pulumi.String(\"enabled\"),\n\t\t\t\t\tVersion:  pulumi.String(\"v1\"),\n\t\t\t\t\tWmId:     pulumi.String(\"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\"),\n\t\t\t\t},\n\t\t\t\tBlockPage: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs{\n\t\t\t\t\tTargetUri:      pulumi.String(\"https://example.com\"),\n\t\t\t\t\tIncludeContext: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tBlockPageEnabled: pulumi.Bool(true),\n\t\t\t\tBlockReason:      pulumi.String(\"This website is a security risk\"),\n\t\t\t\tBypassParentRule: pulumi.Bool(false),\n\t\t\t\tCheckSession: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs{\n\t\t\t\t\tDuration: pulumi.String(\"300s\"),\n\t\t\t\t\tEnforce:  pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tDnsResolvers: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs{\n\t\t\t\t\tIpv4s: cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Array{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Args{\n\t\t\t\t\t\t\tIp:                         pulumi.String(\"2.2.2.2\"),\n\t\t\t\t\t\t\tPort:                       pulumi.Int(5053),\n\t\t\t\t\t\t\tRouteThroughPrivateNetwork: pulumi.Bool(true),\n\t\t\t\t\t\t\tVnetId:                     pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tIpv6s: cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Array{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Args{\n\t\t\t\t\t\t\tIp:                         pulumi.String(\"2001:DB8::\"),\n\t\t\t\t\t\t\tPort:                       pulumi.Int(5053),\n\t\t\t\t\t\t\tRouteThroughPrivateNetwork: pulumi.Bool(true),\n\t\t\t\t\t\t\tVnetId:                     pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tEgress: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsEgressArgs{\n\t\t\t\t\tIpv4:         pulumi.String(\"192.0.2.2\"),\n\t\t\t\t\tIpv4Fallback: pulumi.String(\"192.0.2.3\"),\n\t\t\t\t\tIpv6:         pulumi.String(\"2001:DB8::/64\"),\n\t\t\t\t},\n\t\t\t\tForensicCopy: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tIgnoreCnameCategoryMatches:      pulumi.Bool(true),\n\t\t\t\tInsecureDisableDnssecValidation: pulumi.Bool(false),\n\t\t\t\tIpCategories:                    pulumi.Bool(true),\n\t\t\t\tIpIndicatorFeeds:                pulumi.Bool(true),\n\t\t\t\tL4override: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs{\n\t\t\t\t\tIp:   pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t\tNotificationSettings: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs{\n\t\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\t\tIncludeContext: pulumi.Bool(true),\n\t\t\t\t\tMsg:            pulumi.String(\"msg\"),\n\t\t\t\t\tSupportUrl:     pulumi.String(\"support_url\"),\n\t\t\t\t},\n\t\t\t\tOverrideHost: pulumi.String(\"example.com\"),\n\t\t\t\tOverrideIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tpulumi.String(\"2.2.2.2\"),\n\t\t\t\t},\n\t\t\t\tPayloadLog: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tQuarantine: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs{\n\t\t\t\t\tFileTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"exe\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRedirect: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsRedirectArgs{\n\t\t\t\t\tTargetUri:            pulumi.String(\"https://example.com\"),\n\t\t\t\t\tIncludeContext:       pulumi.Bool(true),\n\t\t\t\t\tPreservePathAndQuery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tResolveDnsInternally: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs{\n\t\t\t\t\tFallback: pulumi.String(\"none\"),\n\t\t\t\t\tViewId:   pulumi.String(\"view_id\"),\n\t\t\t\t},\n\t\t\t\tResolveDnsThroughCloudflare: pulumi.Bool(true),\n\t\t\t\tUntrustedCert: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs{\n\t\t\t\t\tAction: pulumi.String(\"error\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSchedule: \u0026cloudflare.ZeroTrustGatewayPolicyScheduleArgs{\n\t\t\t\tFri:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tMon:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tSat:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tSun:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tThu:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tTimeZone: pulumi.String(\"America/New York\"),\n\t\t\t\tTue:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tWed:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t},\n\t\t\tTraffic: pulumi.String(\"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayPolicy;\nimport com.pulumi.cloudflare.ZeroTrustGatewayPolicyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyExpirationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsEgressArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsRedirectArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayPolicy = new ZeroTrustGatewayPolicy(\"exampleZeroTrustGatewayPolicy\", ZeroTrustGatewayPolicyArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .action(\"allow\")\n            .name(\"block bad websites\")\n            .description(\"Block bad websites based on their host name.\")\n            .devicePosture(\"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\")\n            .enabled(true)\n            .expiration(ZeroTrustGatewayPolicyExpirationArgs.builder()\n                .expiresAt(\"2014-01-01T05:20:20Z\")\n                .duration(10)\n                .build())\n            .filters(\"http\")\n            .identity(\"any(identity.groups.name[*] in {\\\"finance\\\"})\")\n            .precedence(0)\n            .ruleSettings(ZeroTrustGatewayPolicyRuleSettingsArgs.builder()\n                .addHeaders(Map.ofEntries(\n                    Map.entry(\"My-Next-Header\",                     \n                        \"foo\",\n                        \"bar\"),\n                    Map.entry(\"X-Custom-Header-Name\", \"somecustomvalue\")\n                ))\n                .allowChildBypass(false)\n                .auditSsh(ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs.builder()\n                    .commandLogging(false)\n                    .build())\n                .bisoAdminControls(ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs.builder()\n                    .copy(\"remote_only\")\n                    .dcp(true)\n                    .dd(true)\n                    .dk(true)\n                    .download(\"enabled\")\n                    .dp(false)\n                    .du(true)\n                    .keyboard(\"enabled\")\n                    .paste(\"enabled\")\n                    .printing(\"enabled\")\n                    .upload(\"enabled\")\n                    .version(\"v1\")\n                    .wmId(\"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\")\n                    .build())\n                .blockPage(ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs.builder()\n                    .targetUri(\"https://example.com\")\n                    .includeContext(true)\n                    .build())\n                .blockPageEnabled(true)\n                .blockReason(\"This website is a security risk\")\n                .bypassParentRule(false)\n                .checkSession(ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs.builder()\n                    .duration(\"300s\")\n                    .enforce(true)\n                    .build())\n                .dnsResolvers(ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs.builder()\n                    .ipv4s(ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Args.builder()\n                        .ip(\"2.2.2.2\")\n                        .port(5053)\n                        .routeThroughPrivateNetwork(true)\n                        .vnetId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n                        .build())\n                    .ipv6s(ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Args.builder()\n                        .ip(\"2001:DB8::\")\n                        .port(5053)\n                        .routeThroughPrivateNetwork(true)\n                        .vnetId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n                        .build())\n                    .build())\n                .egress(ZeroTrustGatewayPolicyRuleSettingsEgressArgs.builder()\n                    .ipv4(\"192.0.2.2\")\n                    .ipv4Fallback(\"192.0.2.3\")\n                    .ipv6(\"2001:DB8::/64\")\n                    .build())\n                .forensicCopy(ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs.builder()\n                    .enabled(true)\n                    .build())\n                .ignoreCnameCategoryMatches(true)\n                .insecureDisableDnssecValidation(false)\n                .ipCategories(true)\n                .ipIndicatorFeeds(true)\n                .l4override(ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs.builder()\n                    .ip(\"1.1.1.1\")\n                    .port(0)\n                    .build())\n                .notificationSettings(ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs.builder()\n                    .enabled(true)\n                    .includeContext(true)\n                    .msg(\"msg\")\n                    .supportUrl(\"support_url\")\n                    .build())\n                .overrideHost(\"example.com\")\n                .overrideIps(                \n                    \"1.1.1.1\",\n                    \"2.2.2.2\")\n                .payloadLog(ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs.builder()\n                    .enabled(true)\n                    .build())\n                .quarantine(ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs.builder()\n                    .fileTypes(\"exe\")\n                    .build())\n                .redirect(ZeroTrustGatewayPolicyRuleSettingsRedirectArgs.builder()\n                    .targetUri(\"https://example.com\")\n                    .includeContext(true)\n                    .preservePathAndQuery(true)\n                    .build())\n                .resolveDnsInternally(ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs.builder()\n                    .fallback(\"none\")\n                    .viewId(\"view_id\")\n                    .build())\n                .resolveDnsThroughCloudflare(true)\n                .untrustedCert(ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs.builder()\n                    .action(\"error\")\n                    .build())\n                .build())\n            .schedule(ZeroTrustGatewayPolicyScheduleArgs.builder()\n                .fri(\"08:00-12:30,13:30-17:00\")\n                .mon(\"08:00-12:30,13:30-17:00\")\n                .sat(\"08:00-12:30,13:30-17:00\")\n                .sun(\"08:00-12:30,13:30-17:00\")\n                .thu(\"08:00-12:30,13:30-17:00\")\n                .timeZone(\"America/New York\")\n                .tue(\"08:00-12:30,13:30-17:00\")\n                .wed(\"08:00-12:30,13:30-17:00\")\n                .build())\n            .traffic(\"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayPolicy:\n    type: cloudflare:ZeroTrustGatewayPolicy\n    name: example_zero_trust_gateway_policy\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      action: allow\n      name: block bad websites\n      description: Block bad websites based on their host name.\n      devicePosture: any(device_posture.checks.passed[*] in {\"1308749e-fcfb-4ebc-b051-fe022b632644\"})\n      enabled: true\n      expiration:\n        expiresAt: 2014-01-01T05:20:20Z\n        duration: 10\n      filters:\n        - http\n      identity: any(identity.groups.name[*] in {\"finance\"})\n      precedence: 0\n      ruleSettings:\n        addHeaders:\n          My-Next-Header:\n            - foo\n            - bar\n          X-Custom-Header-Name:\n            - somecustomvalue\n        allowChildBypass: false\n        auditSsh:\n          commandLogging: false\n        bisoAdminControls:\n          copy: remote_only\n          dcp: true\n          dd: true\n          dk: true\n          download: enabled\n          dp: false\n          du: true\n          keyboard: enabled\n          paste: enabled\n          printing: enabled\n          upload: enabled\n          version: v1\n          wmId: 475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\n        blockPage:\n          targetUri: https://example.com\n          includeContext: true\n        blockPageEnabled: true\n        blockReason: This website is a security risk\n        bypassParentRule: false\n        checkSession:\n          duration: 300s\n          enforce: true\n        dnsResolvers:\n          ipv4s:\n            - ip: 2.2.2.2\n              port: 5053\n              routeThroughPrivateNetwork: true\n              vnetId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n          ipv6s:\n            - ip: '2001:DB8::'\n              port: 5053\n              routeThroughPrivateNetwork: true\n              vnetId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        egress:\n          ipv4: 192.0.2.2\n          ipv4Fallback: 192.0.2.3\n          ipv6: 2001:DB8::/64\n        forensicCopy:\n          enabled: true\n        ignoreCnameCategoryMatches: true\n        insecureDisableDnssecValidation: false\n        ipCategories: true\n        ipIndicatorFeeds: true\n        l4override:\n          ip: 1.1.1.1\n          port: 0\n        notificationSettings:\n          enabled: true\n          includeContext: true\n          msg: msg\n          supportUrl: support_url\n        overrideHost: example.com\n        overrideIps:\n          - 1.1.1.1\n          - 2.2.2.2\n        payloadLog:\n          enabled: true\n        quarantine:\n          fileTypes:\n            - exe\n        redirect:\n          targetUri: https://example.com\n          includeContext: true\n          preservePathAndQuery: true\n        resolveDnsInternally:\n          fallback: none\n          viewId: view_id\n        resolveDnsThroughCloudflare: true\n        untrustedCert:\n          action: error\n      schedule:\n        fri: 08:00-12:30,13:30-17:00\n        mon: 08:00-12:30,13:30-17:00\n        sat: 08:00-12:30,13:30-17:00\n        sun: 08:00-12:30,13:30-17:00\n        thu: 08:00-12:30,13:30-17:00\n        timeZone: America/New York\n        tue: 08:00-12:30,13:30-17:00\n        wed: 08:00-12:30,13:30-17:00\n      traffic: http.request.uri matches \".*a/partial/uri.*\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/teamsRule:TeamsRule example '\u003caccount_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "action": {
                    "type": "string",
                    "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Indicate the date of deletion, if any.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Specify the rule description.\n"
                },
                "devicePosture": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether the rule is enabled.\n"
                },
                "expiration": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleExpiration:TeamsRuleExpiration",
                    "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                },
                "identity": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the rule name.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this rule is shared via the Orgs API and read only.\n"
                },
                "ruleSettings": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettings:TeamsRuleRuleSettings",
                    "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                },
                "schedule": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleSchedule:TeamsRuleSchedule",
                    "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "sharable": {
                    "type": "boolean",
                    "description": "Indicate that this rule is sharable via the Orgs API.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Provide the account tag of the account that created the rule.\n"
                },
                "traffic": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the rule(read-only).\n"
                },
                "warningStatus": {
                    "type": "string",
                    "description": "Indicate a warning for a misconfigured rule, if any.\n"
                }
            },
            "required": [
                "action",
                "createdAt",
                "deletedAt",
                "devicePosture",
                "enabled",
                "expiration",
                "filters",
                "identity",
                "name",
                "precedence",
                "readOnly",
                "ruleSettings",
                "schedule",
                "sharable",
                "sourceAccount",
                "traffic",
                "updatedAt",
                "version",
                "warningStatus"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "action": {
                    "type": "string",
                    "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "Specify the rule description.\n"
                },
                "devicePosture": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether the rule is enabled.\n"
                },
                "expiration": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleExpiration:TeamsRuleExpiration",
                    "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                },
                "identity": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the rule name.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                },
                "ruleSettings": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettings:TeamsRuleRuleSettings",
                    "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                },
                "schedule": {
                    "$ref": "#/types/cloudflare:index/TeamsRuleSchedule:TeamsRuleSchedule",
                    "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "traffic": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                }
            },
            "requiredInputs": [
                "action",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TeamsRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "action": {
                        "type": "string",
                        "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Indicate the date of deletion, if any.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Specify the rule description.\n"
                    },
                    "devicePosture": {
                        "type": "string",
                        "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Specify whether the rule is enabled.\n"
                    },
                    "expiration": {
                        "$ref": "#/types/cloudflare:index/TeamsRuleExpiration:TeamsRuleExpiration",
                        "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                    },
                    "identity": {
                        "type": "string",
                        "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the rule name.\n"
                    },
                    "precedence": {
                        "type": "integer",
                        "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                    },
                    "readOnly": {
                        "type": "boolean",
                        "description": "Indicate that this rule is shared via the Orgs API and read only.\n"
                    },
                    "ruleSettings": {
                        "$ref": "#/types/cloudflare:index/TeamsRuleRuleSettings:TeamsRuleRuleSettings",
                        "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                    },
                    "schedule": {
                        "$ref": "#/types/cloudflare:index/TeamsRuleSchedule:TeamsRuleSchedule",
                        "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                    },
                    "sharable": {
                        "type": "boolean",
                        "description": "Indicate that this rule is sharable via the Orgs API.\n"
                    },
                    "sourceAccount": {
                        "type": "string",
                        "description": "Provide the account tag of the account that created the rule.\n"
                    },
                    "traffic": {
                        "type": "string",
                        "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "version": {
                        "type": "integer",
                        "description": "Indicate the version number of the rule(read-only).\n"
                    },
                    "warningStatus": {
                        "type": "string",
                        "description": "Indicate a warning for a misconfigured rule, if any.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsRule:TeamsRule"
                }
            ],
            "deprecationMessage": "cloudflare.index/teamsrule.TeamsRule has been deprecated in favor of cloudflare.index/zerotrustgatewaypolicy.ZeroTrustGatewayPolicy"
        },
        "cloudflare:index/tieredCache:TieredCache": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTieredCache = new cloudflare.TieredCache(\"example_tiered_cache\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_tiered_cache = cloudflare.TieredCache(\"example_tiered_cache\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTieredCache = new Cloudflare.Index.TieredCache(\"example_tiered_cache\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = \"on\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewTieredCache(ctx, \"example_tiered_cache\", \u0026cloudflare.TieredCacheArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue:  pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.TieredCache;\nimport com.pulumi.cloudflare.TieredCacheArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleTieredCache = new TieredCache(\"exampleTieredCache\", TieredCacheArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(\"on\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleTieredCache:\n    type: cloudflare:TieredCache\n    name: example_tiered_cache\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tieredCache:TieredCache example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Whether the setting is editable.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time this setting was modified.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Enable or disable the Smart Tiered Cache.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "editable",
                "modifiedOn",
                "value",
                "zoneId"
            ],
            "inputProperties": {
                "value": {
                    "type": "string",
                    "description": "Enable or disable the Smart Tiered Cache.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "value",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TieredCache resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Whether the setting is editable.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time this setting was modified.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "Enable or disable the Smart Tiered Cache.\nAvailable values: \"on\", \"off\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/tokenValidationConfig:TokenValidationConfig": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTokenValidationConfig = new cloudflare.TokenValidationConfig(\"example_token_validation_config\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    credentials: {\n        keys: [{\n            alg: \"ES256\",\n            crv: \"P-256\",\n            kid: \"38013f13-c266-4eec-a72a-92ec92779f21\",\n            kty: \"EC\",\n            x: \"KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ\",\n            y: \"lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY\",\n        }],\n    },\n    description: \"Long description for Token Validation Configuration\",\n    title: \"Example Token Validation Configuration\",\n    tokenSources: [\n        \"http.request.headers[\\\"x-auth\\\"][0]\",\n        \"http.request.cookies[\\\"Authorization\\\"][0]\",\n    ],\n    tokenType: \"JWT\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_token_validation_config = cloudflare.TokenValidationConfig(\"example_token_validation_config\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    credentials={\n        \"keys\": [{\n            \"alg\": \"ES256\",\n            \"crv\": \"P-256\",\n            \"kid\": \"38013f13-c266-4eec-a72a-92ec92779f21\",\n            \"kty\": \"EC\",\n            \"x\": \"KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ\",\n            \"y\": \"lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY\",\n        }],\n    },\n    description=\"Long description for Token Validation Configuration\",\n    title=\"Example Token Validation Configuration\",\n    token_sources=[\n        \"http.request.headers[\\\"x-auth\\\"][0]\",\n        \"http.request.cookies[\\\"Authorization\\\"][0]\",\n    ],\n    token_type=\"JWT\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTokenValidationConfig = new Cloudflare.Index.TokenValidationConfig(\"example_token_validation_config\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Credentials = new Cloudflare.Inputs.TokenValidationConfigCredentialsArgs\n        {\n            Keys = new[]\n            {\n                new Cloudflare.Inputs.TokenValidationConfigCredentialsKeyArgs\n                {\n                    Alg = \"ES256\",\n                    Crv = \"P-256\",\n                    Kid = \"38013f13-c266-4eec-a72a-92ec92779f21\",\n                    Kty = \"EC\",\n                    X = \"KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ\",\n                    Y = \"lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY\",\n                },\n            },\n        },\n        Description = \"Long description for Token Validation Configuration\",\n        Title = \"Example Token Validation Configuration\",\n        TokenSources = new[]\n        {\n            \"http.request.headers[\\\"x-auth\\\"][0]\",\n            \"http.request.cookies[\\\"Authorization\\\"][0]\",\n        },\n        TokenType = \"JWT\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewTokenValidationConfig(ctx, \"example_token_validation_config\", \u0026cloudflare.TokenValidationConfigArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCredentials: \u0026cloudflare.TokenValidationConfigCredentialsArgs{\n\t\t\t\tKeys: cloudflare.TokenValidationConfigCredentialsKeyArray{\n\t\t\t\t\t\u0026cloudflare.TokenValidationConfigCredentialsKeyArgs{\n\t\t\t\t\t\tAlg: pulumi.String(\"ES256\"),\n\t\t\t\t\t\tCrv: pulumi.String(\"P-256\"),\n\t\t\t\t\t\tKid: pulumi.String(\"38013f13-c266-4eec-a72a-92ec92779f21\"),\n\t\t\t\t\t\tKty: pulumi.String(\"EC\"),\n\t\t\t\t\t\tX:   pulumi.String(\"KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ\"),\n\t\t\t\t\t\tY:   pulumi.String(\"lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Long description for Token Validation Configuration\"),\n\t\t\tTitle:       pulumi.String(\"Example Token Validation Configuration\"),\n\t\t\tTokenSources: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http.request.headers[\\\"x-auth\\\"][0]\"),\n\t\t\t\tpulumi.String(\"http.request.cookies[\\\"Authorization\\\"][0]\"),\n\t\t\t},\n\t\t\tTokenType: pulumi.String(\"JWT\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.TokenValidationConfig;\nimport com.pulumi.cloudflare.TokenValidationConfigArgs;\nimport com.pulumi.cloudflare.inputs.TokenValidationConfigCredentialsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleTokenValidationConfig = new TokenValidationConfig(\"exampleTokenValidationConfig\", TokenValidationConfigArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .credentials(TokenValidationConfigCredentialsArgs.builder()\n                .keys(TokenValidationConfigCredentialsKeyArgs.builder()\n                    .alg(\"ES256\")\n                    .crv(\"P-256\")\n                    .kid(\"38013f13-c266-4eec-a72a-92ec92779f21\")\n                    .kty(\"EC\")\n                    .x(\"KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ\")\n                    .y(\"lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY\")\n                    .build())\n                .build())\n            .description(\"Long description for Token Validation Configuration\")\n            .title(\"Example Token Validation Configuration\")\n            .tokenSources(            \n                \"http.request.headers[\\\"x-auth\\\"][0]\",\n                \"http.request.cookies[\\\"Authorization\\\"][0]\")\n            .tokenType(\"JWT\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleTokenValidationConfig:\n    type: cloudflare:TokenValidationConfig\n    name: example_token_validation_config\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      credentials:\n        keys:\n          - alg: ES256\n            crv: P-256\n            kid: 38013f13-c266-4eec-a72a-92ec92779f21\n            kty: EC\n            x: KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ\n            y: lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY\n      description: Long description for Token Validation Configuration\n      title: Example Token Validation Configuration\n      tokenSources:\n        - http.request.headers[\"x-auth\"][0]\n        - http.request.cookies[\"Authorization\"][0]\n      tokenType: JWT\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tokenValidationConfig:TokenValidationConfig example '\u003czone_id\u003e/\u003cconfig_id\u003e'\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "credentials": {
                    "$ref": "#/types/cloudflare:index/TokenValidationConfigCredentials:TokenValidationConfigCredentials"
                },
                "description": {
                    "type": "string"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                },
                "tokenSources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tokenType": {
                    "type": "string",
                    "description": "Available values: \"JWT\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdAt",
                "credentials",
                "description",
                "lastUpdated",
                "title",
                "tokenSources",
                "tokenType"
            ],
            "inputProperties": {
                "credentials": {
                    "$ref": "#/types/cloudflare:index/TokenValidationConfigCredentials:TokenValidationConfigCredentials"
                },
                "description": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                },
                "tokenSources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tokenType": {
                    "type": "string",
                    "description": "Available values: \"JWT\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "credentials",
                "description",
                "title",
                "tokenSources",
                "tokenType"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TokenValidationConfig resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string"
                    },
                    "credentials": {
                        "$ref": "#/types/cloudflare:index/TokenValidationConfigCredentials:TokenValidationConfigCredentials"
                    },
                    "description": {
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "tokenSources": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "tokenType": {
                        "type": "string",
                        "description": "Available values: \"JWT\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/tokenValidationRules:TokenValidationRules": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTokenValidationRules = new cloudflare.TokenValidationRules(\"example_token_validation_rules\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    action: \"log\",\n    description: \"Long description for Token Validation Rule\",\n    enabled: true,\n    expression: \"is_jwt_valid(\\\"52973293-cb04-4a97-8f55-e7d2ad1107dd\\\") or is_jwt_valid(\\\"46eab8d1-6376-45e3-968f-2c649d77d423\\\")\",\n    selector: {\n        excludes: [{\n            operationIds: [\n                \"f9c5615e-fe15-48ce-bec6-cfc1946f1bec\",\n                \"56828eae-035a-4396-ba07-51c66d680a04\",\n            ],\n        }],\n        includes: [{\n            host: [\n                \"v1.example.com\",\n                \"v2.example.com\",\n            ],\n        }],\n    },\n    title: \"Example Token Validation Rule\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_token_validation_rules = cloudflare.TokenValidationRules(\"example_token_validation_rules\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    action=\"log\",\n    description=\"Long description for Token Validation Rule\",\n    enabled=True,\n    expression=\"is_jwt_valid(\\\"52973293-cb04-4a97-8f55-e7d2ad1107dd\\\") or is_jwt_valid(\\\"46eab8d1-6376-45e3-968f-2c649d77d423\\\")\",\n    selector={\n        \"excludes\": [{\n            \"operation_ids\": [\n                \"f9c5615e-fe15-48ce-bec6-cfc1946f1bec\",\n                \"56828eae-035a-4396-ba07-51c66d680a04\",\n            ],\n        }],\n        \"includes\": [{\n            \"host\": [\n                \"v1.example.com\",\n                \"v2.example.com\",\n            ],\n        }],\n    },\n    title=\"Example Token Validation Rule\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTokenValidationRules = new Cloudflare.Index.TokenValidationRules(\"example_token_validation_rules\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Action = \"log\",\n        Description = \"Long description for Token Validation Rule\",\n        Enabled = true,\n        Expression = \"is_jwt_valid(\\\"52973293-cb04-4a97-8f55-e7d2ad1107dd\\\") or is_jwt_valid(\\\"46eab8d1-6376-45e3-968f-2c649d77d423\\\")\",\n        Selector = new Cloudflare.Inputs.TokenValidationRulesSelectorArgs\n        {\n            Excludes = new[]\n            {\n                new Cloudflare.Inputs.TokenValidationRulesSelectorExcludeArgs\n                {\n                    OperationIds = new[]\n                    {\n                        \"f9c5615e-fe15-48ce-bec6-cfc1946f1bec\",\n                        \"56828eae-035a-4396-ba07-51c66d680a04\",\n                    },\n                },\n            },\n            Includes = new[]\n            {\n                new Cloudflare.Inputs.TokenValidationRulesSelectorIncludeArgs\n                {\n                    Host = new[]\n                    {\n                        \"v1.example.com\",\n                        \"v2.example.com\",\n                    },\n                },\n            },\n        },\n        Title = \"Example Token Validation Rule\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewTokenValidationRules(ctx, \"example_token_validation_rules\", \u0026cloudflare.TokenValidationRulesArgs{\n\t\t\tZoneId:      pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAction:      pulumi.String(\"log\"),\n\t\t\tDescription: pulumi.String(\"Long description for Token Validation Rule\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tExpression:  pulumi.String(\"is_jwt_valid(\\\"52973293-cb04-4a97-8f55-e7d2ad1107dd\\\") or is_jwt_valid(\\\"46eab8d1-6376-45e3-968f-2c649d77d423\\\")\"),\n\t\t\tSelector: \u0026cloudflare.TokenValidationRulesSelectorArgs{\n\t\t\t\tExcludes: cloudflare.TokenValidationRulesSelectorExcludeArray{\n\t\t\t\t\t\u0026cloudflare.TokenValidationRulesSelectorExcludeArgs{\n\t\t\t\t\t\tOperationIds: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"f9c5615e-fe15-48ce-bec6-cfc1946f1bec\"),\n\t\t\t\t\t\t\tpulumi.String(\"56828eae-035a-4396-ba07-51c66d680a04\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIncludes: cloudflare.TokenValidationRulesSelectorIncludeArray{\n\t\t\t\t\t\u0026cloudflare.TokenValidationRulesSelectorIncludeArgs{\n\t\t\t\t\t\tHost: []string{\n\t\t\t\t\t\t\t\"v1.example.com\",\n\t\t\t\t\t\t\t\"v2.example.com\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTitle: pulumi.String(\"Example Token Validation Rule\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.TokenValidationRules;\nimport com.pulumi.cloudflare.TokenValidationRulesArgs;\nimport com.pulumi.cloudflare.inputs.TokenValidationRulesSelectorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleTokenValidationRules = new TokenValidationRules(\"exampleTokenValidationRules\", TokenValidationRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .action(\"log\")\n            .description(\"Long description for Token Validation Rule\")\n            .enabled(true)\n            .expression(\"is_jwt_valid(\\\"52973293-cb04-4a97-8f55-e7d2ad1107dd\\\") or is_jwt_valid(\\\"46eab8d1-6376-45e3-968f-2c649d77d423\\\")\")\n            .selector(TokenValidationRulesSelectorArgs.builder()\n                .excludes(TokenValidationRulesSelectorExcludeArgs.builder()\n                    .operationIds(                    \n                        \"f9c5615e-fe15-48ce-bec6-cfc1946f1bec\",\n                        \"56828eae-035a-4396-ba07-51c66d680a04\")\n                    .build())\n                .includes(TokenValidationRulesSelectorIncludeArgs.builder()\n                    .host(List.of(                    \n                        \"v1.example.com\",\n                        \"v2.example.com\"))\n                    .build())\n                .build())\n            .title(\"Example Token Validation Rule\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleTokenValidationRules:\n    type: cloudflare:TokenValidationRules\n    name: example_token_validation_rules\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      action: log\n      description: Long description for Token Validation Rule\n      enabled: true\n      expression: is_jwt_valid(\"52973293-cb04-4a97-8f55-e7d2ad1107dd\") or is_jwt_valid(\"46eab8d1-6376-45e3-968f-2c649d77d423\")\n      selector:\n        excludes:\n          - operationIds:\n              - f9c5615e-fe15-48ce-bec6-cfc1946f1bec\n              - 56828eae-035a-4396-ba07-51c66d680a04\n        includes:\n          - host:\n              - v1.example.com\n              - v2.example.com\n      title: Example Token Validation Rule\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tokenValidationRules:TokenValidationRules example '\u003czone_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description that gives more details than \u003cspan pulumi-lang-nodejs=\"`title`\" pulumi-lang-dotnet=\"`Title`\" pulumi-lang-go=\"`title`\" pulumi-lang-python=\"`title`\" pulumi-lang-yaml=\"`title`\" pulumi-lang-java=\"`title`\"\u003e`title`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Toggle rule on or off.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "Rule expression. Requests that fail to match this expression will be subject to \u003cspan pulumi-lang-nodejs=\"`action`\" pulumi-lang-dotnet=\"`Action`\" pulumi-lang-go=\"`action`\" pulumi-lang-python=\"`action`\" pulumi-lang-yaml=\"`action`\" pulumi-lang-java=\"`action`\"\u003e`action`\u003c/span\u003e.\n"
                },
                "lastUpdated": {
                    "type": "string"
                },
                "position": {
                    "$ref": "#/types/cloudflare:index/TokenValidationRulesPosition:TokenValidationRulesPosition",
                    "description": "Update rule order among zone rules."
                },
                "selector": {
                    "$ref": "#/types/cloudflare:index/TokenValidationRulesSelector:TokenValidationRulesSelector",
                    "description": "Select operations covered by this rule.\n\nFor details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/)."
                },
                "title": {
                    "type": "string",
                    "description": "A human-readable name for the rule."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "action",
                "createdAt",
                "description",
                "enabled",
                "expression",
                "lastUpdated",
                "selector",
                "title"
            ],
            "inputProperties": {
                "action": {
                    "type": "string",
                    "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description that gives more details than \u003cspan pulumi-lang-nodejs=\"`title`\" pulumi-lang-dotnet=\"`Title`\" pulumi-lang-go=\"`title`\" pulumi-lang-python=\"`title`\" pulumi-lang-yaml=\"`title`\" pulumi-lang-java=\"`title`\"\u003e`title`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Toggle rule on or off.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "Rule expression. Requests that fail to match this expression will be subject to \u003cspan pulumi-lang-nodejs=\"`action`\" pulumi-lang-dotnet=\"`Action`\" pulumi-lang-go=\"`action`\" pulumi-lang-python=\"`action`\" pulumi-lang-yaml=\"`action`\" pulumi-lang-java=\"`action`\"\u003e`action`\u003c/span\u003e.\n"
                },
                "position": {
                    "$ref": "#/types/cloudflare:index/TokenValidationRulesPosition:TokenValidationRulesPosition",
                    "description": "Update rule order among zone rules."
                },
                "selector": {
                    "$ref": "#/types/cloudflare:index/TokenValidationRulesSelector:TokenValidationRulesSelector",
                    "description": "Select operations covered by this rule.\n\nFor details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/)."
                },
                "title": {
                    "type": "string",
                    "description": "A human-readable name for the rule."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "action",
                "description",
                "enabled",
                "expression",
                "selector",
                "title"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TokenValidationRules resources.\n",
                "properties": {
                    "action": {
                        "type": "string",
                        "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "A human-readable description that gives more details than \u003cspan pulumi-lang-nodejs=\"`title`\" pulumi-lang-dotnet=\"`Title`\" pulumi-lang-go=\"`title`\" pulumi-lang-python=\"`title`\" pulumi-lang-yaml=\"`title`\" pulumi-lang-java=\"`title`\"\u003e`title`\u003c/span\u003e.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Toggle rule on or off.\n"
                    },
                    "expression": {
                        "type": "string",
                        "description": "Rule expression. Requests that fail to match this expression will be subject to \u003cspan pulumi-lang-nodejs=\"`action`\" pulumi-lang-dotnet=\"`Action`\" pulumi-lang-go=\"`action`\" pulumi-lang-python=\"`action`\" pulumi-lang-yaml=\"`action`\" pulumi-lang-java=\"`action`\"\u003e`action`\u003c/span\u003e.\n"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "position": {
                        "$ref": "#/types/cloudflare:index/TokenValidationRulesPosition:TokenValidationRulesPosition",
                        "description": "Update rule order among zone rules."
                    },
                    "selector": {
                        "$ref": "#/types/cloudflare:index/TokenValidationRulesSelector:TokenValidationRulesSelector",
                        "description": "Select operations covered by this rule.\n\nFor details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/)."
                    },
                    "title": {
                        "type": "string",
                        "description": "A human-readable name for the rule."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/totalTls:TotalTls": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTotalTls = new cloudflare.TotalTls(\"example_total_tls\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled: true,\n    certificateAuthority: \"google\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_total_tls = cloudflare.TotalTls(\"example_total_tls\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled=True,\n    certificate_authority=\"google\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTotalTls = new Cloudflare.Index.TotalTls(\"example_total_tls\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Enabled = true,\n        CertificateAuthority = \"google\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewTotalTls(ctx, \"example_total_tls\", \u0026cloudflare.TotalTlsArgs{\n\t\t\tZoneId:               pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnabled:              pulumi.Bool(true),\n\t\t\tCertificateAuthority: pulumi.String(\"google\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.TotalTls;\nimport com.pulumi.cloudflare.TotalTlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleTotalTls = new TotalTls(\"exampleTotalTls\", TotalTlsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .enabled(true)\n            .certificateAuthority(\"google\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleTotalTls:\n    type: cloudflare:TotalTls\n    name: example_total_tls\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      enabled: true\n      certificateAuthority: google\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/totalTls:TotalTls example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "The Certificate Authority that Total TLS certificates will be issued through.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "If enabled, Total TLS will order a hostname specific TLS certificate for any proxied A, AAAA, or CNAME record in your zone.\n"
                },
                "validityPeriod": {
                    "type": "integer",
                    "description": "The validity period in days for the certificates ordered via Total TLS.\nAvailable values: 90.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "enabled",
                "validityPeriod",
                "zoneId"
            ],
            "inputProperties": {
                "certificateAuthority": {
                    "type": "string",
                    "description": "The Certificate Authority that Total TLS certificates will be issued through.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "If enabled, Total TLS will order a hostname specific TLS certificate for any proxied A, AAAA, or CNAME record in your zone.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TotalTls resources.\n",
                "properties": {
                    "certificateAuthority": {
                        "type": "string",
                        "description": "The Certificate Authority that Total TLS certificates will be issued through.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "If enabled, Total TLS will order a hostname specific TLS certificate for any proxied A, AAAA, or CNAME record in your zone.\n"
                    },
                    "validityPeriod": {
                        "type": "integer",
                        "description": "The validity period in days for the certificates ordered via Total TLS.\nAvailable values: 90.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/tunnel:Tunnel": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflared = new cloudflare.ZeroTrustTunnelCloudflared(\"example_zero_trust_tunnel_cloudflared\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"blog\",\n    configSrc: \"cloudflare\",\n    tunnelSecret: \"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared = cloudflare.ZeroTrustTunnelCloudflared(\"example_zero_trust_tunnel_cloudflared\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"blog\",\n    config_src=\"cloudflare\",\n    tunnel_secret=\"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflared = new Cloudflare.Index.ZeroTrustTunnelCloudflared(\"example_zero_trust_tunnel_cloudflared\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"blog\",\n        ConfigSrc = \"cloudflare\",\n        TunnelSecret = \"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflared(ctx, \"example_zero_trust_tunnel_cloudflared\", \u0026cloudflare.ZeroTrustTunnelCloudflaredArgs{\n\t\t\tAccountId:    pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:         pulumi.String(\"blog\"),\n\t\t\tConfigSrc:    pulumi.String(\"cloudflare\"),\n\t\t\tTunnelSecret: pulumi.String(\"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflared;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflared = new ZeroTrustTunnelCloudflared(\"exampleZeroTrustTunnelCloudflared\", ZeroTrustTunnelCloudflaredArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"blog\")\n            .configSrc(\"cloudflare\")\n            .tunnelSecret(\"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflared:\n    type: cloudflare:ZeroTrustTunnelCloudflared\n    name: example_zero_trust_tunnel_cloudflared\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: blog\n      configSrc: cloudflare\n      tunnelSecret: AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tunnel:Tunnel example '\u003caccount_id\u003e/\u003ctunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "accountTag": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "configSrc": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "connections": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/TunnelConnection:TunnelConnection"
                    },
                    "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                    "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                },
                "connsActiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                },
                "connsInactiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Metadata associated with the tunnel.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "remoteConfig": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can be configured remotely from the Zero Trust dashboard. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tunnel must be configured locally on the origin machine.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" configSrc \" pulumi-lang-dotnet=\" ConfigSrc \" pulumi-lang-go=\" configSrc \" pulumi-lang-python=\" config_src \" pulumi-lang-yaml=\" configSrc \" pulumi-lang-java=\" configSrc \"\u003e configSrc \u003c/span\u003efield instead."
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "tunType": {
                    "type": "string",
                    "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                },
                "tunnelSecret": {
                    "type": "string",
                    "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                    "secret": true
                }
            },
            "required": [
                "accountTag",
                "configSrc",
                "connections",
                "connsActiveAt",
                "connsInactiveAt",
                "createdAt",
                "deletedAt",
                "metadata",
                "name",
                "remoteConfig",
                "status",
                "tunType"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "configSrc": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "tunnelSecret": {
                    "type": "string",
                    "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                    "secret": true
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Tunnel resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "accountTag": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "configSrc": {
                        "type": "string",
                        "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                    },
                    "connections": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/TunnelConnection:TunnelConnection"
                        },
                        "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                        "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                    },
                    "connsActiveAt": {
                        "type": "string",
                        "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                    },
                    "connsInactiveAt": {
                        "type": "string",
                        "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "metadata": {
                        "type": "string",
                        "description": "Metadata associated with the tunnel.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for a tunnel.\n"
                    },
                    "remoteConfig": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can be configured remotely from the Zero Trust dashboard. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tunnel must be configured locally on the origin machine.\n",
                        "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" configSrc \" pulumi-lang-dotnet=\" ConfigSrc \" pulumi-lang-go=\" configSrc \" pulumi-lang-python=\" config_src \" pulumi-lang-yaml=\" configSrc \" pulumi-lang-java=\" configSrc \"\u003e configSrc \u003c/span\u003efield instead."
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                    },
                    "tunType": {
                        "type": "string",
                        "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                    },
                    "tunnelSecret": {
                        "type": "string",
                        "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                        "secret": true
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnel:Tunnel"
                }
            ],
            "deprecationMessage": "cloudflare.index/tunnel.Tunnel has been deprecated in favor of cloudflare.index/zerotrusttunnelcloudflared.ZeroTrustTunnelCloudflared"
        },
        "cloudflare:index/tunnelConfig:TunnelConfig": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredConfig = new cloudflare.ZeroTrustTunnelCloudflaredConfig(\"example_zero_trust_tunnel_cloudflared_config\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    config: {\n        ingresses: [{\n            hostname: \"tunnel.example.com\",\n            service: \"https://localhost:8001\",\n            originRequest: {\n                access: {\n                    audTag: [\"string\"],\n                    teamName: \"zero-trust-organization-name\",\n                    required: false,\n                },\n                caPool: \"caPool\",\n                connectTimeout: 10,\n                disableChunkedEncoding: true,\n                http2Origin: true,\n                httpHostHeader: \"httpHostHeader\",\n                keepAliveConnections: 100,\n                keepAliveTimeout: 90,\n                matchSnItoHost: false,\n                noHappyEyeballs: false,\n                noTlsVerify: false,\n                originServerName: \"originServerName\",\n                proxyType: \"proxyType\",\n                tcpKeepAlive: 30,\n                tlsTimeout: 10,\n            },\n            path: \"subpath\",\n        }],\n        originRequest: {\n            access: {\n                audTags: [\"string\"],\n                teamName: \"zero-trust-organization-name\",\n                required: false,\n            },\n            caPool: \"caPool\",\n            connectTimeout: 10,\n            disableChunkedEncoding: true,\n            http2Origin: true,\n            httpHostHeader: \"httpHostHeader\",\n            keepAliveConnections: 100,\n            keepAliveTimeout: 90,\n            matchSnItoHost: false,\n            noHappyEyeballs: false,\n            noTlsVerify: false,\n            originServerName: \"originServerName\",\n            proxyType: \"proxyType\",\n            tcpKeepAlive: 30,\n            tlsTimeout: 10,\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_config = cloudflare.ZeroTrustTunnelCloudflaredConfig(\"example_zero_trust_tunnel_cloudflared_config\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    config={\n        \"ingresses\": [{\n            \"hostname\": \"tunnel.example.com\",\n            \"service\": \"https://localhost:8001\",\n            \"origin_request\": {\n                \"access\": {\n                    \"aud_tag\": [\"string\"],\n                    \"team_name\": \"zero-trust-organization-name\",\n                    \"required\": False,\n                },\n                \"ca_pool\": \"caPool\",\n                \"connect_timeout\": 10,\n                \"disable_chunked_encoding\": True,\n                \"http2_origin\": True,\n                \"http_host_header\": \"httpHostHeader\",\n                \"keep_alive_connections\": 100,\n                \"keep_alive_timeout\": 90,\n                \"match_sn_ito_host\": False,\n                \"no_happy_eyeballs\": False,\n                \"no_tls_verify\": False,\n                \"origin_server_name\": \"originServerName\",\n                \"proxy_type\": \"proxyType\",\n                \"tcp_keep_alive\": 30,\n                \"tls_timeout\": 10,\n            },\n            \"path\": \"subpath\",\n        }],\n        \"origin_request\": {\n            \"access\": {\n                \"aud_tags\": [\"string\"],\n                \"team_name\": \"zero-trust-organization-name\",\n                \"required\": False,\n            },\n            \"ca_pool\": \"caPool\",\n            \"connect_timeout\": 10,\n            \"disable_chunked_encoding\": True,\n            \"http2_origin\": True,\n            \"http_host_header\": \"httpHostHeader\",\n            \"keep_alive_connections\": 100,\n            \"keep_alive_timeout\": 90,\n            \"match_sn_ito_host\": False,\n            \"no_happy_eyeballs\": False,\n            \"no_tls_verify\": False,\n            \"origin_server_name\": \"originServerName\",\n            \"proxy_type\": \"proxyType\",\n            \"tcp_keep_alive\": 30,\n            \"tls_timeout\": 10,\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredConfig = new Cloudflare.Index.ZeroTrustTunnelCloudflaredConfig(\"example_zero_trust_tunnel_cloudflared_config\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        Config = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigArgs\n        {\n            Ingresses = new[]\n            {\n                new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigIngressArgs\n                {\n                    Hostname = \"tunnel.example.com\",\n                    Service = \"https://localhost:8001\",\n                    OriginRequest = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestArgs\n                    {\n                        Access = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccessArgs\n                        {\n                            AudTag = new[]\n                            {\n                                \"string\",\n                            },\n                            TeamName = \"zero-trust-organization-name\",\n                            Required = false,\n                        },\n                        CaPool = \"caPool\",\n                        ConnectTimeout = 10,\n                        DisableChunkedEncoding = true,\n                        Http2Origin = true,\n                        HttpHostHeader = \"httpHostHeader\",\n                        KeepAliveConnections = 100,\n                        KeepAliveTimeout = 90,\n                        MatchSnItoHost = false,\n                        NoHappyEyeballs = false,\n                        NoTlsVerify = false,\n                        OriginServerName = \"originServerName\",\n                        ProxyType = \"proxyType\",\n                        TcpKeepAlive = 30,\n                        TlsTimeout = 10,\n                    },\n                    Path = \"subpath\",\n                },\n            },\n            OriginRequest = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs\n            {\n                Access = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs\n                {\n                    AudTags = new[]\n                    {\n                        \"string\",\n                    },\n                    TeamName = \"zero-trust-organization-name\",\n                    Required = false,\n                },\n                CaPool = \"caPool\",\n                ConnectTimeout = 10,\n                DisableChunkedEncoding = true,\n                Http2Origin = true,\n                HttpHostHeader = \"httpHostHeader\",\n                KeepAliveConnections = 100,\n                KeepAliveTimeout = 90,\n                MatchSnItoHost = false,\n                NoHappyEyeballs = false,\n                NoTlsVerify = false,\n                OriginServerName = \"originServerName\",\n                ProxyType = \"proxyType\",\n                TcpKeepAlive = 30,\n                TlsTimeout = 10,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflaredConfig(ctx, \"example_zero_trust_tunnel_cloudflared_config\", \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTunnelId:  pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tConfig: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigArgs{\n\t\t\t\tIngresses: cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressArray{\n\t\t\t\t\t\u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressArgs{\n\t\t\t\t\t\tHostname: pulumi.String(\"tunnel.example.com\"),\n\t\t\t\t\t\tService:  pulumi.String(\"https://localhost:8001\"),\n\t\t\t\t\t\tOriginRequest: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestArgs{\n\t\t\t\t\t\t\tAccess: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccessArgs{\n\t\t\t\t\t\t\t\tAudTag: []string{\n\t\t\t\t\t\t\t\t\t\"string\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTeamName: pulumi.String(\"zero-trust-organization-name\"),\n\t\t\t\t\t\t\t\tRequired: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tCaPool:                 pulumi.String(\"caPool\"),\n\t\t\t\t\t\t\tConnectTimeout:         pulumi.Int(10),\n\t\t\t\t\t\t\tDisableChunkedEncoding: pulumi.Bool(true),\n\t\t\t\t\t\t\tHttp2Origin:            pulumi.Bool(true),\n\t\t\t\t\t\t\tHttpHostHeader:         pulumi.String(\"httpHostHeader\"),\n\t\t\t\t\t\t\tKeepAliveConnections:   pulumi.Int(100),\n\t\t\t\t\t\t\tKeepAliveTimeout:       pulumi.Int(90),\n\t\t\t\t\t\t\tMatchSnItoHost:         pulumi.Bool(false),\n\t\t\t\t\t\t\tNoHappyEyeballs:        pulumi.Bool(false),\n\t\t\t\t\t\t\tNoTlsVerify:            pulumi.Bool(false),\n\t\t\t\t\t\t\tOriginServerName:       pulumi.String(\"originServerName\"),\n\t\t\t\t\t\t\tProxyType:              pulumi.String(\"proxyType\"),\n\t\t\t\t\t\t\tTcpKeepAlive:           pulumi.Int(30),\n\t\t\t\t\t\t\tTlsTimeout:             pulumi.Int(10),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tPath: pulumi.String(\"subpath\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tOriginRequest: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs{\n\t\t\t\t\tAccess: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs{\n\t\t\t\t\t\tAudTags: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTeamName: pulumi.String(\"zero-trust-organization-name\"),\n\t\t\t\t\t\tRequired: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tCaPool:                 pulumi.String(\"caPool\"),\n\t\t\t\t\tConnectTimeout:         pulumi.Int(10),\n\t\t\t\t\tDisableChunkedEncoding: pulumi.Bool(true),\n\t\t\t\t\tHttp2Origin:            pulumi.Bool(true),\n\t\t\t\t\tHttpHostHeader:         pulumi.String(\"httpHostHeader\"),\n\t\t\t\t\tKeepAliveConnections:   pulumi.Int(100),\n\t\t\t\t\tKeepAliveTimeout:       pulumi.Int(90),\n\t\t\t\t\tMatchSnItoHost:         pulumi.Bool(false),\n\t\t\t\t\tNoHappyEyeballs:        pulumi.Bool(false),\n\t\t\t\t\tNoTlsVerify:            pulumi.Bool(false),\n\t\t\t\t\tOriginServerName:       pulumi.String(\"originServerName\"),\n\t\t\t\t\tProxyType:              pulumi.String(\"proxyType\"),\n\t\t\t\t\tTcpKeepAlive:           pulumi.Int(30),\n\t\t\t\t\tTlsTimeout:             pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredConfig;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustTunnelCloudflaredConfigConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflaredConfig = new ZeroTrustTunnelCloudflaredConfig(\"exampleZeroTrustTunnelCloudflaredConfig\", ZeroTrustTunnelCloudflaredConfigArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .config(ZeroTrustTunnelCloudflaredConfigConfigArgs.builder()\n                .ingresses(ZeroTrustTunnelCloudflaredConfigConfigIngressArgs.builder()\n                    .hostname(\"tunnel.example.com\")\n                    .service(\"https://localhost:8001\")\n                    .originRequest(ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestArgs.builder()\n                        .access(ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccessArgs.builder()\n                            .audTag(List.of(\"string\"))\n                            .teamName(\"zero-trust-organization-name\")\n                            .required(false)\n                            .build())\n                        .caPool(\"caPool\")\n                        .connectTimeout(10)\n                        .disableChunkedEncoding(true)\n                        .http2Origin(true)\n                        .httpHostHeader(\"httpHostHeader\")\n                        .keepAliveConnections(100)\n                        .keepAliveTimeout(90)\n                        .matchSnItoHost(false)\n                        .noHappyEyeballs(false)\n                        .noTlsVerify(false)\n                        .originServerName(\"originServerName\")\n                        .proxyType(\"proxyType\")\n                        .tcpKeepAlive(30)\n                        .tlsTimeout(10)\n                        .build())\n                    .path(\"subpath\")\n                    .build())\n                .originRequest(ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs.builder()\n                    .access(ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs.builder()\n                        .audTags(\"string\")\n                        .teamName(\"zero-trust-organization-name\")\n                        .required(false)\n                        .build())\n                    .caPool(\"caPool\")\n                    .connectTimeout(10)\n                    .disableChunkedEncoding(true)\n                    .http2Origin(true)\n                    .httpHostHeader(\"httpHostHeader\")\n                    .keepAliveConnections(100)\n                    .keepAliveTimeout(90)\n                    .matchSnItoHost(false)\n                    .noHappyEyeballs(false)\n                    .noTlsVerify(false)\n                    .originServerName(\"originServerName\")\n                    .proxyType(\"proxyType\")\n                    .tcpKeepAlive(30)\n                    .tlsTimeout(10)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflaredConfig:\n    type: cloudflare:ZeroTrustTunnelCloudflaredConfig\n    name: example_zero_trust_tunnel_cloudflared_config\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n      config:\n        ingresses:\n          - hostname: tunnel.example.com\n            service: https://localhost:8001\n            originRequest:\n              access:\n                audTag:\n                  - string\n                teamName: zero-trust-organization-name\n                required: false\n              caPool: caPool\n              connectTimeout: 10\n              disableChunkedEncoding: true\n              http2Origin: true\n              httpHostHeader: httpHostHeader\n              keepAliveConnections: 100\n              keepAliveTimeout: 90\n              matchSnItoHost: false\n              noHappyEyeballs: false\n              noTlsVerify: false\n              originServerName: originServerName\n              proxyType: proxyType\n              tcpKeepAlive: 30\n              tlsTimeout: 10\n            path: subpath\n        originRequest:\n          access:\n            audTags:\n              - string\n            teamName: zero-trust-organization-name\n            required: false\n          caPool: caPool\n          connectTimeout: 10\n          disableChunkedEncoding: true\n          http2Origin: true\n          httpHostHeader: httpHostHeader\n          keepAliveConnections: 100\n          keepAliveTimeout: 90\n          matchSnItoHost: false\n          noHappyEyeballs: false\n          noTlsVerify: false\n          originServerName: originServerName\n          proxyType: proxyType\n          tcpKeepAlive: 30\n          tlsTimeout: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tunnelConfig:TunnelConfig example '\u003caccount_id\u003e/\u003ctunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/TunnelConfigConfig:TunnelConfigConfig",
                    "description": "The tunnel configuration and ingress rules.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "source": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The version of the Tunnel Configuration.\n"
                }
            },
            "required": [
                "config",
                "createdAt",
                "source",
                "tunnelId",
                "version"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/TunnelConfigConfig:TunnelConfigConfig",
                    "description": "The tunnel configuration and ingress rules.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                }
            },
            "requiredInputs": [
                "tunnelId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TunnelConfig resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/TunnelConfigConfig:TunnelConfigConfig",
                        "description": "The tunnel configuration and ingress rules.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "source": {
                        "type": "string",
                        "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "version": {
                        "type": "integer",
                        "description": "The version of the Tunnel Configuration.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnelConfig:TunnelConfig"
                }
            ],
            "deprecationMessage": "cloudflare.index/tunnelconfig.TunnelConfig has been deprecated in favor of cloudflare.index/zerotrusttunnelcloudflaredconfig.ZeroTrustTunnelCloudflaredConfig"
        },
        "cloudflare:index/tunnelRoute:TunnelRoute": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredRoute = new cloudflare.ZeroTrustTunnelCloudflaredRoute(\"example_zero_trust_tunnel_cloudflared_route\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    network: \"172.16.0.0/16\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    comment: \"Example comment for this route.\",\n    virtualNetworkId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_route = cloudflare.ZeroTrustTunnelCloudflaredRoute(\"example_zero_trust_tunnel_cloudflared_route\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    network=\"172.16.0.0/16\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    comment=\"Example comment for this route.\",\n    virtual_network_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredRoute = new Cloudflare.Index.ZeroTrustTunnelCloudflaredRoute(\"example_zero_trust_tunnel_cloudflared_route\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Network = \"172.16.0.0/16\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        Comment = \"Example comment for this route.\",\n        VirtualNetworkId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflaredRoute(ctx, \"example_zero_trust_tunnel_cloudflared_route\", \u0026cloudflare.ZeroTrustTunnelCloudflaredRouteArgs{\n\t\t\tAccountId:        pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tNetwork:          pulumi.String(\"172.16.0.0/16\"),\n\t\t\tTunnelId:         pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tComment:          pulumi.String(\"Example comment for this route.\"),\n\t\t\tVirtualNetworkId: pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredRoute;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflaredRoute = new ZeroTrustTunnelCloudflaredRoute(\"exampleZeroTrustTunnelCloudflaredRoute\", ZeroTrustTunnelCloudflaredRouteArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .network(\"172.16.0.0/16\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .comment(\"Example comment for this route.\")\n            .virtualNetworkId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflaredRoute:\n    type: cloudflare:ZeroTrustTunnelCloudflaredRoute\n    name: example_zero_trust_tunnel_cloudflared_route\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      network: 172.16.0.0/16\n      tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n      comment: Example comment for this route.\n      virtualNetworkId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tunnelRoute:TunnelRoute example '\u003caccount_id\u003e/\u003croute_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the route.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                }
            },
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "network",
                "tunnelId",
                "virtualNetworkId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the route.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                }
            },
            "requiredInputs": [
                "network",
                "tunnelId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TunnelRoute resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "Optional remark describing the route.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "network": {
                        "type": "string",
                        "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "virtualNetworkId": {
                        "type": "string",
                        "description": "UUID of the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnelRoute:TunnelRoute"
                }
            ],
            "deprecationMessage": "cloudflare.index/tunnelroute.TunnelRoute has been deprecated in favor of cloudflare.index/zerotrusttunnelcloudflaredroute.ZeroTrustTunnelCloudflaredRoute"
        },
        "cloudflare:index/tunnelVirtualNetwork:TunnelVirtualNetwork": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredVirtualNetwork = new cloudflare.ZeroTrustTunnelCloudflaredVirtualNetwork(\"example_zero_trust_tunnel_cloudflared_virtual_network\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"us-east-1-vpc\",\n    comment: \"Staging VPC for data science\",\n    isDefault: true,\n    isDefaultNetwork: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_virtual_network = cloudflare.ZeroTrustTunnelCloudflaredVirtualNetwork(\"example_zero_trust_tunnel_cloudflared_virtual_network\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"us-east-1-vpc\",\n    comment=\"Staging VPC for data science\",\n    is_default=True,\n    is_default_network=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredVirtualNetwork = new Cloudflare.Index.ZeroTrustTunnelCloudflaredVirtualNetwork(\"example_zero_trust_tunnel_cloudflared_virtual_network\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"us-east-1-vpc\",\n        Comment = \"Staging VPC for data science\",\n        IsDefault = true,\n        IsDefaultNetwork = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflaredVirtualNetwork(ctx, \"example_zero_trust_tunnel_cloudflared_virtual_network\", \u0026cloudflare.ZeroTrustTunnelCloudflaredVirtualNetworkArgs{\n\t\t\tAccountId:        pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:             pulumi.String(\"us-east-1-vpc\"),\n\t\t\tComment:          pulumi.String(\"Staging VPC for data science\"),\n\t\t\tIsDefault:        pulumi.Bool(true),\n\t\t\tIsDefaultNetwork: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredVirtualNetwork;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredVirtualNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflaredVirtualNetwork = new ZeroTrustTunnelCloudflaredVirtualNetwork(\"exampleZeroTrustTunnelCloudflaredVirtualNetwork\", ZeroTrustTunnelCloudflaredVirtualNetworkArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"us-east-1-vpc\")\n            .comment(\"Staging VPC for data science\")\n            .isDefault(true)\n            .isDefaultNetwork(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflaredVirtualNetwork:\n    type: cloudflare:ZeroTrustTunnelCloudflaredVirtualNetwork\n    name: example_zero_trust_tunnel_cloudflared_virtual_network\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: us-east-1-vpc\n      comment: Staging VPC for data science\n      isDefault: true\n      isDefaultNetwork: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/tunnelVirtualNetwork:TunnelVirtualNetwork example '\u003caccount_id\u003e/\u003cvirtual_network_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the virtual network.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" isDefaultNetwork \" pulumi-lang-dotnet=\" IsDefaultNetwork \" pulumi-lang-go=\" isDefaultNetwork \" pulumi-lang-python=\" is_default_network \" pulumi-lang-yaml=\" isDefaultNetwork \" pulumi-lang-java=\" isDefaultNetwork \"\u003e isDefaultNetwork \u003c/span\u003eproperty instead."
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "isDefaultNetwork",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the virtual network.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" isDefaultNetwork \" pulumi-lang-dotnet=\" IsDefaultNetwork \" pulumi-lang-go=\" isDefaultNetwork \" pulumi-lang-python=\" is_default_network \" pulumi-lang-yaml=\" isDefaultNetwork \" pulumi-lang-java=\" isDefaultNetwork \"\u003e isDefaultNetwork \u003c/span\u003eproperty instead."
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TunnelVirtualNetwork resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "Optional remark describing the virtual network.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "isDefault": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                        "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" isDefaultNetwork \" pulumi-lang-dotnet=\" IsDefaultNetwork \" pulumi-lang-go=\" isDefaultNetwork \" pulumi-lang-python=\" is_default_network \" pulumi-lang-yaml=\" isDefaultNetwork \" pulumi-lang-java=\" isDefaultNetwork \"\u003e isDefaultNetwork \u003c/span\u003eproperty instead."
                    },
                    "isDefaultNetwork": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnelVirtualNetwork:TunnelVirtualNetwork"
                }
            ],
            "deprecationMessage": "cloudflare.index/tunnelvirtualnetwork.TunnelVirtualNetwork has been deprecated in favor of cloudflare.index/zerotrusttunnelcloudflaredvirtualnetwork.ZeroTrustTunnelCloudflaredVirtualNetwork"
        },
        "cloudflare:index/turnstileWidget:TurnstileWidget": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Turnstile Sites Read`\n- `Turnstile Sites Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTurnstileWidget = new cloudflare.TurnstileWidget(\"example_turnstile_widget\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    domains: [\n        \"203.0.113.1\",\n        \"cloudflare.com\",\n        \"blog.example.com\",\n    ],\n    mode: \"invisible\",\n    name: \"blog.cloudflare.com login form\",\n    botFightMode: false,\n    clearanceLevel: \"interactive\",\n    ephemeralId: false,\n    offlabel: false,\n    region: \"world\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_turnstile_widget = cloudflare.TurnstileWidget(\"example_turnstile_widget\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    domains=[\n        \"203.0.113.1\",\n        \"cloudflare.com\",\n        \"blog.example.com\",\n    ],\n    mode=\"invisible\",\n    name=\"blog.cloudflare.com login form\",\n    bot_fight_mode=False,\n    clearance_level=\"interactive\",\n    ephemeral_id=False,\n    offlabel=False,\n    region=\"world\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTurnstileWidget = new Cloudflare.Index.TurnstileWidget(\"example_turnstile_widget\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Domains = new[]\n        {\n            \"203.0.113.1\",\n            \"cloudflare.com\",\n            \"blog.example.com\",\n        },\n        Mode = \"invisible\",\n        Name = \"blog.cloudflare.com login form\",\n        BotFightMode = false,\n        ClearanceLevel = \"interactive\",\n        EphemeralId = false,\n        Offlabel = false,\n        Region = \"world\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewTurnstileWidget(ctx, \"example_turnstile_widget\", \u0026cloudflare.TurnstileWidgetArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"203.0.113.1\"),\n\t\t\t\tpulumi.String(\"cloudflare.com\"),\n\t\t\t\tpulumi.String(\"blog.example.com\"),\n\t\t\t},\n\t\t\tMode:           pulumi.String(\"invisible\"),\n\t\t\tName:           pulumi.String(\"blog.cloudflare.com login form\"),\n\t\t\tBotFightMode:   pulumi.Bool(false),\n\t\t\tClearanceLevel: pulumi.String(\"interactive\"),\n\t\t\tEphemeralId:    pulumi.Bool(false),\n\t\t\tOfflabel:       pulumi.Bool(false),\n\t\t\tRegion:         pulumi.String(\"world\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.TurnstileWidget;\nimport com.pulumi.cloudflare.TurnstileWidgetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleTurnstileWidget = new TurnstileWidget(\"exampleTurnstileWidget\", TurnstileWidgetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .domains(            \n                \"203.0.113.1\",\n                \"cloudflare.com\",\n                \"blog.example.com\")\n            .mode(\"invisible\")\n            .name(\"blog.cloudflare.com login form\")\n            .botFightMode(false)\n            .clearanceLevel(\"interactive\")\n            .ephemeralId(false)\n            .offlabel(false)\n            .region(\"world\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleTurnstileWidget:\n    type: cloudflare:TurnstileWidget\n    name: example_turnstile_widget\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      domains:\n        - 203.0.113.1\n        - cloudflare.com\n        - blog.example.com\n      mode: invisible\n      name: blog.cloudflare.com login form\n      botFightMode: false\n      clearanceLevel: interactive\n      ephemeralId: false\n      offlabel: false\n      region: world\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/turnstileWidget:TurnstileWidget example '\u003caccount_id\u003e/\u003csitekey\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "botFightMode": {
                    "type": "boolean",
                    "description": "If bot*fight*mode is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, Cloudflare issues computationally\nexpensive challenges in response to malicious bots (ENT only).\n"
                },
                "clearanceLevel": {
                    "type": "string",
                    "description": "If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance,\nthis setting can determine the clearance level to be set\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"noClearance\"\" pulumi-lang-dotnet=\"\"NoClearance\"\" pulumi-lang-go=\"\"noClearance\"\" pulumi-lang-python=\"\"no_clearance\"\" pulumi-lang-yaml=\"\"noClearance\"\" pulumi-lang-java=\"\"noClearance\"\"\u003e\"noClearance\"\u003c/span\u003e, \"jschallenge\", \"managed\", \"interactive\".\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the widget was created.\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ephemeralId": {
                    "type": "boolean",
                    "description": "Return the Ephemeral ID in /siteverify (ENT only).\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Widget Mode\nAvailable values: \"non-interactive\", \"invisible\", \"managed\".\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the widget was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human readable widget name. Not unique. Cloudflare suggests that you\nset this to a meaningful string to make it easier to identify your\nwidget, and where it is used.\n"
                },
                "offlabel": {
                    "type": "boolean",
                    "description": "Do not show any Cloudflare branding on the widget (ENT only).\n"
                },
                "region": {
                    "type": "string",
                    "description": "Region where this widget can be used. This cannot be changed after creation.\nAvailable values: \"world\", \"china\".\n"
                },
                "secret": {
                    "type": "string",
                    "description": "Secret key for this widget.\n",
                    "secret": true
                },
                "sitekey": {
                    "type": "string",
                    "description": "Widget item identifier tag.\n"
                }
            },
            "required": [
                "botFightMode",
                "clearanceLevel",
                "createdOn",
                "domains",
                "ephemeralId",
                "mode",
                "modifiedOn",
                "name",
                "offlabel",
                "region",
                "secret",
                "sitekey"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier\n"
                },
                "botFightMode": {
                    "type": "boolean",
                    "description": "If bot*fight*mode is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, Cloudflare issues computationally\nexpensive challenges in response to malicious bots (ENT only).\n"
                },
                "clearanceLevel": {
                    "type": "string",
                    "description": "If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance,\nthis setting can determine the clearance level to be set\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"noClearance\"\" pulumi-lang-dotnet=\"\"NoClearance\"\" pulumi-lang-go=\"\"noClearance\"\" pulumi-lang-python=\"\"no_clearance\"\" pulumi-lang-yaml=\"\"noClearance\"\" pulumi-lang-java=\"\"noClearance\"\"\u003e\"noClearance\"\u003c/span\u003e, \"jschallenge\", \"managed\", \"interactive\".\n"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ephemeralId": {
                    "type": "boolean",
                    "description": "Return the Ephemeral ID in /siteverify (ENT only).\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Widget Mode\nAvailable values: \"non-interactive\", \"invisible\", \"managed\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human readable widget name. Not unique. Cloudflare suggests that you\nset this to a meaningful string to make it easier to identify your\nwidget, and where it is used.\n"
                },
                "offlabel": {
                    "type": "boolean",
                    "description": "Do not show any Cloudflare branding on the widget (ENT only).\n"
                },
                "region": {
                    "type": "string",
                    "description": "Region where this widget can be used. This cannot be changed after creation.\nAvailable values: \"world\", \"china\".\n"
                }
            },
            "requiredInputs": [
                "domains",
                "mode",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering TurnstileWidget resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "botFightMode": {
                        "type": "boolean",
                        "description": "If bot*fight*mode is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, Cloudflare issues computationally\nexpensive challenges in response to malicious bots (ENT only).\n"
                    },
                    "clearanceLevel": {
                        "type": "string",
                        "description": "If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance,\nthis setting can determine the clearance level to be set\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"noClearance\"\" pulumi-lang-dotnet=\"\"NoClearance\"\" pulumi-lang-go=\"\"noClearance\"\" pulumi-lang-python=\"\"no_clearance\"\" pulumi-lang-yaml=\"\"noClearance\"\" pulumi-lang-java=\"\"noClearance\"\"\u003e\"noClearance\"\u003c/span\u003e, \"jschallenge\", \"managed\", \"interactive\".\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the widget was created.\n"
                    },
                    "domains": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ephemeralId": {
                        "type": "boolean",
                        "description": "Return the Ephemeral ID in /siteverify (ENT only).\n"
                    },
                    "mode": {
                        "type": "string",
                        "description": "Widget Mode\nAvailable values: \"non-interactive\", \"invisible\", \"managed\".\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the widget was modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Human readable widget name. Not unique. Cloudflare suggests that you\nset this to a meaningful string to make it easier to identify your\nwidget, and where it is used.\n"
                    },
                    "offlabel": {
                        "type": "boolean",
                        "description": "Do not show any Cloudflare branding on the widget (ENT only).\n"
                    },
                    "region": {
                        "type": "string",
                        "description": "Region where this widget can be used. This cannot be changed after creation.\nAvailable values: \"world\", \"china\".\n"
                    },
                    "secret": {
                        "type": "string",
                        "description": "Secret key for this widget.\n",
                        "secret": true
                    },
                    "sitekey": {
                        "type": "string",
                        "description": "Widget item identifier tag.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/universalSslSetting:UniversalSslSetting": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUniversalSslSetting = new cloudflare.UniversalSslSetting(\"example_universal_ssl_setting\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_universal_ssl_setting = cloudflare.UniversalSslSetting(\"example_universal_ssl_setting\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUniversalSslSetting = new Cloudflare.Index.UniversalSslSetting(\"example_universal_ssl_setting\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewUniversalSslSetting(ctx, \"example_universal_ssl_setting\", \u0026cloudflare.UniversalSslSettingArgs{\n\t\t\tZoneId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.UniversalSslSetting;\nimport com.pulumi.cloudflare.UniversalSslSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleUniversalSslSetting = new UniversalSslSetting(\"exampleUniversalSslSetting\", UniversalSslSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleUniversalSslSetting:\n    type: cloudflare:UniversalSslSetting\n    name: example_universal_ssl_setting\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/universalSslSetting:UniversalSslSetting example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Disabling Universal SSL removes any currently active Universal SSL certificates for your zone from the edge and prevents any future Universal SSL certificates from being ordered. If there are no advanced certificates or custom certificates uploaded for the domain, visitors will be unable to access the domain over HTTPS.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "zoneId"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Disabling Universal SSL removes any currently active Universal SSL certificates for your zone from the edge and prevents any future Universal SSL certificates from being ordered. If there are no advanced certificates or custom certificates uploaded for the domain, visitors will be unable to access the domain over HTTPS.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering UniversalSslSetting resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Disabling Universal SSL removes any currently active Universal SSL certificates for your zone from the edge and prevents any future Universal SSL certificates from being ordered. If there are no advanced certificates or custom certificates uploaded for the domain, visitors will be unable to access the domain over HTTPS.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/urlNormalizationSettings:UrlNormalizationSettings": {
            "description": "Accepted Permissions\n\n- `Account Rulesets Read`\n- `Account Rulesets Write`\n- `Account WAF Read`\n- `Account WAF Write`\n- `Bot Management Read`\n- `Bot Management Write`\n- `Cache Settings Read`\n- `Cache Settings Write`\n- `Config Settings Read`\n- `Config Settings Write`\n- `Custom Errors Read`\n- `Custom Errors Write`\n- `Dynamic URL Redirects Read`\n- `Dynamic URL Redirects Write`\n- `HTTP DDoS Managed Ruleset Read`\n- `HTTP DDoS Managed Ruleset Write`\n- `L4 DDoS Managed Ruleset Read`\n- `L4 DDoS Managed Ruleset Write`\n- `Logs Read`\n- `Logs Write`\n- `Magic Firewall Read`\n- `Magic Firewall Write`\n- `Managed headers Read`\n- `Managed headers Write`\n- `Mass URL Redirects Read`\n- `Mass URL Redirects Write`\n- `Origin Read`\n- `Origin Write`\n- `Response Compression Read`\n- `Response Compression Write`\n- `Sanitize Read`\n- `Sanitize Write`\n- `Select Configuration Read`\n- `Select Configuration Write`\n- `Transform Rules Read`\n- `Transform Rules Write`\n- `Zone Transform Rules Read`\n- `Zone Transform Rules Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUrlNormalizationSettings = new cloudflare.UrlNormalizationSettings(\"example_url_normalization_settings\", {\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    scope: \"incoming\",\n    type: \"cloudflare\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_url_normalization_settings = cloudflare.UrlNormalizationSettings(\"example_url_normalization_settings\",\n    zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    scope=\"incoming\",\n    type=\"cloudflare\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUrlNormalizationSettings = new Cloudflare.Index.UrlNormalizationSettings(\"example_url_normalization_settings\", new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        Scope = \"incoming\",\n        Type = \"cloudflare\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewUrlNormalizationSettings(ctx, \"example_url_normalization_settings\", \u0026cloudflare.UrlNormalizationSettingsArgs{\n\t\t\tZoneId: pulumi.String(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tScope:  pulumi.String(\"incoming\"),\n\t\t\tType:   pulumi.String(\"cloudflare\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.UrlNormalizationSettings;\nimport com.pulumi.cloudflare.UrlNormalizationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleUrlNormalizationSettings = new UrlNormalizationSettings(\"exampleUrlNormalizationSettings\", UrlNormalizationSettingsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .scope(\"incoming\")\n            .type(\"cloudflare\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleUrlNormalizationSettings:\n    type: cloudflare:UrlNormalizationSettings\n    name: example_url_normalization_settings\n    properties:\n      zoneId: 9f1839b6152d298aca64c4e906b6d074\n      scope: incoming\n      type: cloudflare\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/urlNormalizationSettings:UrlNormalizationSettings example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "scope": {
                    "type": "string",
                    "description": "The scope of the URL normalization.\nAvailable values: \"incoming\", \"both\", \"none\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of URL normalization performed by Cloudflare.\nAvailable values: \"cloudflare\", \"rfc3986\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "required": [
                "scope",
                "type",
                "zoneId"
            ],
            "inputProperties": {
                "scope": {
                    "type": "string",
                    "description": "The scope of the URL normalization.\nAvailable values: \"incoming\", \"both\", \"none\".\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of URL normalization performed by Cloudflare.\nAvailable values: \"cloudflare\", \"rfc3986\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The unique ID of the zone.\n"
                }
            },
            "requiredInputs": [
                "scope",
                "type",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering UrlNormalizationSettings resources.\n",
                "properties": {
                    "scope": {
                        "type": "string",
                        "description": "The scope of the URL normalization.\nAvailable values: \"incoming\", \"both\", \"none\".\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of URL normalization performed by Cloudflare.\nAvailable values: \"cloudflare\", \"rfc3986\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/user:User": {
            "description": "Accepted Permissions\n\n- `User Details Read`\n- `User Details Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUser = new cloudflare.User(\"example_user\", {\n    country: \"US\",\n    firstName: \"John\",\n    lastName: \"Appleseed\",\n    telephone: \"+1 123-123-1234\",\n    zipcode: \"12345\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user = cloudflare.User(\"example_user\",\n    country=\"US\",\n    first_name=\"John\",\n    last_name=\"Appleseed\",\n    telephone=\"+1 123-123-1234\",\n    zipcode=\"12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUser = new Cloudflare.Index.User(\"example_user\", new()\n    {\n        Country = \"US\",\n        FirstName = \"John\",\n        LastName = \"Appleseed\",\n        Telephone = \"+1 123-123-1234\",\n        Zipcode = \"12345\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewUser(ctx, \"example_user\", \u0026cloudflare.UserArgs{\n\t\t\tCountry:   pulumi.String(\"US\"),\n\t\t\tFirstName: pulumi.String(\"John\"),\n\t\t\tLastName:  pulumi.String(\"Appleseed\"),\n\t\t\tTelephone: pulumi.String(\"+1 123-123-1234\"),\n\t\t\tZipcode:   pulumi.String(\"12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.User;\nimport com.pulumi.cloudflare.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleUser = new User(\"exampleUser\", UserArgs.builder()\n            .country(\"US\")\n            .firstName(\"John\")\n            .lastName(\"Appleseed\")\n            .telephone(\"+1 123-123-1234\")\n            .zipcode(\"12345\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleUser:\n    type: cloudflare:User\n    name: example_user\n    properties:\n      country: US\n      firstName: John\n      lastName: Appleseed\n      telephone: +1 123-123-1234\n      zipcode: '12345'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "betas": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Lists the betas that the user is participating in.\n"
                },
                "country": {
                    "type": "string",
                    "description": "The country in which the user lives.\n"
                },
                "firstName": {
                    "type": "string",
                    "description": "User's first name\n"
                },
                "hasBusinessZones": {
                    "type": "boolean",
                    "description": "Indicates whether user has any business zones\n"
                },
                "hasEnterpriseZones": {
                    "type": "boolean",
                    "description": "Indicates whether user has any enterprise zones\n"
                },
                "hasProZones": {
                    "type": "boolean",
                    "description": "Indicates whether user has any pro zones\n"
                },
                "lastName": {
                    "type": "string",
                    "description": "User's last name\n"
                },
                "organizations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserOrganization:UserOrganization"
                    }
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Indicates whether user has been suspended\n"
                },
                "telephone": {
                    "type": "string",
                    "description": "User's telephone number\n"
                },
                "twoFactorAuthenticationEnabled": {
                    "type": "boolean",
                    "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication.\n"
                },
                "twoFactorAuthenticationLocked": {
                    "type": "boolean",
                    "description": "Indicates whether two-factor authentication is required by one of the accounts that the user is a member of.\n"
                },
                "zipcode": {
                    "type": "string",
                    "description": "The zipcode or postal code where the user lives.\n"
                }
            },
            "required": [
                "betas",
                "hasBusinessZones",
                "hasEnterpriseZones",
                "hasProZones",
                "organizations",
                "suspended",
                "twoFactorAuthenticationEnabled",
                "twoFactorAuthenticationLocked"
            ],
            "inputProperties": {
                "country": {
                    "type": "string",
                    "description": "The country in which the user lives.\n"
                },
                "firstName": {
                    "type": "string",
                    "description": "User's first name\n"
                },
                "lastName": {
                    "type": "string",
                    "description": "User's last name\n"
                },
                "telephone": {
                    "type": "string",
                    "description": "User's telephone number\n"
                },
                "zipcode": {
                    "type": "string",
                    "description": "The zipcode or postal code where the user lives.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering User resources.\n",
                "properties": {
                    "betas": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Lists the betas that the user is participating in.\n"
                    },
                    "country": {
                        "type": "string",
                        "description": "The country in which the user lives.\n"
                    },
                    "firstName": {
                        "type": "string",
                        "description": "User's first name\n"
                    },
                    "hasBusinessZones": {
                        "type": "boolean",
                        "description": "Indicates whether user has any business zones\n"
                    },
                    "hasEnterpriseZones": {
                        "type": "boolean",
                        "description": "Indicates whether user has any enterprise zones\n"
                    },
                    "hasProZones": {
                        "type": "boolean",
                        "description": "Indicates whether user has any pro zones\n"
                    },
                    "lastName": {
                        "type": "string",
                        "description": "User's last name\n"
                    },
                    "organizations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/UserOrganization:UserOrganization"
                        }
                    },
                    "suspended": {
                        "type": "boolean",
                        "description": "Indicates whether user has been suspended\n"
                    },
                    "telephone": {
                        "type": "string",
                        "description": "User's telephone number\n"
                    },
                    "twoFactorAuthenticationEnabled": {
                        "type": "boolean",
                        "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication.\n"
                    },
                    "twoFactorAuthenticationLocked": {
                        "type": "boolean",
                        "description": "Indicates whether two-factor authentication is required by one of the accounts that the user is a member of.\n"
                    },
                    "zipcode": {
                        "type": "string",
                        "description": "The zipcode or postal code where the user lives.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/userAgentBlockingRule:UserAgentBlockingRule": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserAgentBlockingRule = new cloudflare.UserAgentBlockingRule(\"example_user_agent_blocking_rule\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    configuration: {\n        target: \"ua\",\n        value: \"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\",\n    },\n    mode: \"challenge\",\n    description: \"Prevent multiple login failures to mitigate brute force attacks\",\n    paused: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_agent_blocking_rule = cloudflare.UserAgentBlockingRule(\"example_user_agent_blocking_rule\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    configuration={\n        \"target\": \"ua\",\n        \"value\": \"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\",\n    },\n    mode=\"challenge\",\n    description=\"Prevent multiple login failures to mitigate brute force attacks\",\n    paused=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserAgentBlockingRule = new Cloudflare.Index.UserAgentBlockingRule(\"example_user_agent_blocking_rule\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Configuration = new Cloudflare.Inputs.UserAgentBlockingRuleConfigurationArgs\n        {\n            Target = \"ua\",\n            Value = \"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\",\n        },\n        Mode = \"challenge\",\n        Description = \"Prevent multiple login failures to mitigate brute force attacks\",\n        Paused = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewUserAgentBlockingRule(ctx, \"example_user_agent_blocking_rule\", \u0026cloudflare.UserAgentBlockingRuleArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConfiguration: \u0026cloudflare.UserAgentBlockingRuleConfigurationArgs{\n\t\t\t\tTarget: pulumi.String(\"ua\"),\n\t\t\t\tValue:  pulumi.String(\"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\"),\n\t\t\t},\n\t\t\tMode:        pulumi.String(\"challenge\"),\n\t\t\tDescription: pulumi.String(\"Prevent multiple login failures to mitigate brute force attacks\"),\n\t\t\tPaused:      pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.UserAgentBlockingRule;\nimport com.pulumi.cloudflare.UserAgentBlockingRuleArgs;\nimport com.pulumi.cloudflare.inputs.UserAgentBlockingRuleConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleUserAgentBlockingRule = new UserAgentBlockingRule(\"exampleUserAgentBlockingRule\", UserAgentBlockingRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .configuration(UserAgentBlockingRuleConfigurationArgs.builder()\n                .target(\"ua\")\n                .value(\"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\")\n                .build())\n            .mode(\"challenge\")\n            .description(\"Prevent multiple login failures to mitigate brute force attacks\")\n            .paused(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleUserAgentBlockingRule:\n    type: cloudflare:UserAgentBlockingRule\n    name: example_user_agent_blocking_rule\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      configuration:\n        target: ua\n        value: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\n      mode: challenge\n      description: Prevent multiple login failures to mitigate brute force attacks\n      paused: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/userAgentBlockingRule:UserAgentBlockingRule example '\u003czone_id\u003e/\u003cua_rule_id\u003e'\n```\n\n",
            "properties": {
                "configuration": {
                    "$ref": "#/types/cloudflare:index/UserAgentBlockingRuleConfiguration:UserAgentBlockingRuleConfiguration"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "configuration",
                "mode",
                "paused"
            ],
            "inputProperties": {
                "configuration": {
                    "$ref": "#/types/cloudflare:index/UserAgentBlockingRuleConfiguration:UserAgentBlockingRuleConfiguration"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "configuration",
                "mode"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering UserAgentBlockingRule resources.\n",
                "properties": {
                    "configuration": {
                        "$ref": "#/types/cloudflare:index/UserAgentBlockingRuleConfiguration:UserAgentBlockingRuleConfiguration"
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                    },
                    "mode": {
                        "type": "string",
                        "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the rule is currently paused.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/userGroup:UserGroup": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserGroup = new cloudflare.UserGroup(\"example_user_group\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"My New User Group\",\n    policies: [{\n        access: \"allow\",\n        permissionGroups: [\n            {\n                id: \"c8fed203ed3043cba015a93ad1616f1f\",\n            },\n            {\n                id: \"82e64a83756745bbbb1c9c2701bf816b\",\n            },\n        ],\n        resourceGroups: [{\n            id: \"6d7f2f5f5b1d4a0e9081fdc98d432fd1\",\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_group = cloudflare.UserGroup(\"example_user_group\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"My New User Group\",\n    policies=[{\n        \"access\": \"allow\",\n        \"permission_groups\": [\n            {\n                \"id\": \"c8fed203ed3043cba015a93ad1616f1f\",\n            },\n            {\n                \"id\": \"82e64a83756745bbbb1c9c2701bf816b\",\n            },\n        ],\n        \"resource_groups\": [{\n            \"id\": \"6d7f2f5f5b1d4a0e9081fdc98d432fd1\",\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserGroup = new Cloudflare.Index.UserGroup(\"example_user_group\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"My New User Group\",\n        Policies = new[]\n        {\n            new Cloudflare.Inputs.UserGroupPolicyArgs\n            {\n                Access = \"allow\",\n                PermissionGroups = new[]\n                {\n                    new Cloudflare.Inputs.UserGroupPolicyPermissionGroupArgs\n                    {\n                        Id = \"c8fed203ed3043cba015a93ad1616f1f\",\n                    },\n                    new Cloudflare.Inputs.UserGroupPolicyPermissionGroupArgs\n                    {\n                        Id = \"82e64a83756745bbbb1c9c2701bf816b\",\n                    },\n                },\n                ResourceGroups = new[]\n                {\n                    new Cloudflare.Inputs.UserGroupPolicyResourceGroupArgs\n                    {\n                        Id = \"6d7f2f5f5b1d4a0e9081fdc98d432fd1\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewUserGroup(ctx, \"example_user_group\", \u0026cloudflare.UserGroupArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"My New User Group\"),\n\t\t\tPolicies: cloudflare.UserGroupPolicyArray{\n\t\t\t\t\u0026cloudflare.UserGroupPolicyArgs{\n\t\t\t\t\tAccess: pulumi.String(\"allow\"),\n\t\t\t\t\tPermissionGroups: cloudflare.UserGroupPolicyPermissionGroupArray{\n\t\t\t\t\t\t\u0026cloudflare.UserGroupPolicyPermissionGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"c8fed203ed3043cba015a93ad1616f1f\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cloudflare.UserGroupPolicyPermissionGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"82e64a83756745bbbb1c9c2701bf816b\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tResourceGroups: cloudflare.UserGroupPolicyResourceGroupArray{\n\t\t\t\t\t\t\u0026cloudflare.UserGroupPolicyResourceGroupArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"6d7f2f5f5b1d4a0e9081fdc98d432fd1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.UserGroup;\nimport com.pulumi.cloudflare.UserGroupArgs;\nimport com.pulumi.cloudflare.inputs.UserGroupPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleUserGroup = new UserGroup(\"exampleUserGroup\", UserGroupArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"My New User Group\")\n            .policies(UserGroupPolicyArgs.builder()\n                .access(\"allow\")\n                .permissionGroups(                \n                    UserGroupPolicyPermissionGroupArgs.builder()\n                        .id(\"c8fed203ed3043cba015a93ad1616f1f\")\n                        .build(),\n                    UserGroupPolicyPermissionGroupArgs.builder()\n                        .id(\"82e64a83756745bbbb1c9c2701bf816b\")\n                        .build())\n                .resourceGroups(UserGroupPolicyResourceGroupArgs.builder()\n                    .id(\"6d7f2f5f5b1d4a0e9081fdc98d432fd1\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleUserGroup:\n    type: cloudflare:UserGroup\n    name: example_user_group\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: My New User Group\n      policies:\n        - access: allow\n          permissionGroups:\n            - id: c8fed203ed3043cba015a93ad1616f1f\n            - id: 82e64a83756745bbbb1c9c2701bf816b\n          resourceGroups:\n            - id: 6d7f2f5f5b1d4a0e9081fdc98d432fd1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/userGroup:UserGroup example '\u003caccount_id\u003e/\u003cuser_group_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "Timestamp for the creation of the user group\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time the user group was modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the User group.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserGroupPolicy:UserGroupPolicy"
                    },
                    "description": "Policies attached to the User group\n"
                }
            },
            "required": [
                "accountId",
                "createdOn",
                "modifiedOn",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the User group.\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserGroupPolicy:UserGroupPolicy"
                    },
                    "description": "Policies attached to the User group\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering UserGroup resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "Timestamp for the creation of the user group\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time the user group was modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the User group.\n"
                    },
                    "policies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/UserGroupPolicy:UserGroupPolicy"
                        },
                        "description": "Policies attached to the User group\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/userGroupMembers:UserGroupMembers": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserGroupMembers = new cloudflare.UserGroupMembers(\"example_user_group_members\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    userGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    members: [{\n        id: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_group_members = cloudflare.UserGroupMembers(\"example_user_group_members\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    user_group_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    members=[{\n        \"id\": \"023e105f4ecef8ad9ca31a8372d0c353\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserGroupMembers = new Cloudflare.Index.UserGroupMembers(\"example_user_group_members\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        UserGroupId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Members = new[]\n        {\n            new Cloudflare.Inputs.UserGroupMembersMemberArgs\n            {\n                Id = \"023e105f4ecef8ad9ca31a8372d0c353\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewUserGroupMembers(ctx, \"example_user_group_members\", \u0026cloudflare.UserGroupMembersArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tUserGroupId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tMembers: cloudflare.UserGroupMembersMemberArray{\n\t\t\t\t\u0026cloudflare.UserGroupMembersMemberArgs{\n\t\t\t\t\tId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.UserGroupMembers;\nimport com.pulumi.cloudflare.UserGroupMembersArgs;\nimport com.pulumi.cloudflare.inputs.UserGroupMembersMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleUserGroupMembers = new UserGroupMembers(\"exampleUserGroupMembers\", UserGroupMembersArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .userGroupId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .members(UserGroupMembersMemberArgs.builder()\n                .id(\"023e105f4ecef8ad9ca31a8372d0c353\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleUserGroupMembers:\n    type: cloudflare:UserGroupMembers\n    name: example_user_group_members\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      userGroupId: 023e105f4ecef8ad9ca31a8372d0c353\n      members:\n        - id: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/userGroupMembers:UserGroupMembers example '\u003caccount_id\u003e/\u003cuser_group_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "members": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserGroupMembersMember:UserGroupMembersMember"
                    }
                },
                "userGroupId": {
                    "type": "string",
                    "description": "User Group identifier tag.\n"
                }
            },
            "required": [
                "accountId",
                "members",
                "userGroupId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier tag.\n"
                },
                "members": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/UserGroupMembersMember:UserGroupMembersMember"
                    }
                },
                "userGroupId": {
                    "type": "string",
                    "description": "User Group identifier tag.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "members",
                "userGroupId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering UserGroupMembers resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "members": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/UserGroupMembersMember:UserGroupMembersMember"
                        }
                    },
                    "userGroupId": {
                        "type": "string",
                        "description": "User Group identifier tag.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/vulnerabilityScannerCredential:VulnerabilityScannerCredential": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerCredential = new cloudflare.VulnerabilityScannerCredential(\"example_vulnerability_scanner_credential\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    credentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    location: \"header\",\n    locationName: \"Authorization\",\n    name: \"Admin API key\",\n    value: \"Bearer EXAMPLE_TOKEN\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_credential = cloudflare.VulnerabilityScannerCredential(\"example_vulnerability_scanner_credential\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    credential_set_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    location=\"header\",\n    location_name=\"Authorization\",\n    name=\"Admin API key\",\n    value=\"Bearer EXAMPLE_TOKEN\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerCredential = new Cloudflare.Index.VulnerabilityScannerCredential(\"example_vulnerability_scanner_credential\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CredentialSetId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n        Location = \"header\",\n        LocationName = \"Authorization\",\n        Name = \"Admin API key\",\n        Value = \"Bearer EXAMPLE_TOKEN\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewVulnerabilityScannerCredential(ctx, \"example_vulnerability_scanner_credential\", \u0026cloudflare.VulnerabilityScannerCredentialArgs{\n\t\t\tAccountId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCredentialSetId: pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t\tLocation:        pulumi.String(\"header\"),\n\t\t\tLocationName:    pulumi.String(\"Authorization\"),\n\t\t\tName:            pulumi.String(\"Admin API key\"),\n\t\t\tValue:           pulumi.String(\"Bearer EXAMPLE_TOKEN\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.VulnerabilityScannerCredential;\nimport com.pulumi.cloudflare.VulnerabilityScannerCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleVulnerabilityScannerCredential = new VulnerabilityScannerCredential(\"exampleVulnerabilityScannerCredential\", VulnerabilityScannerCredentialArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .credentialSetId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .location(\"header\")\n            .locationName(\"Authorization\")\n            .name(\"Admin API key\")\n            .value(\"Bearer EXAMPLE_TOKEN\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleVulnerabilityScannerCredential:\n    type: cloudflare:VulnerabilityScannerCredential\n    name: example_vulnerability_scanner_credential\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      credentialSetId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n      location: header\n      locationName: Authorization\n      name: Admin API key\n      value: Bearer EXAMPLE_TOKEN\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/vulnerabilityScannerCredential:VulnerabilityScannerCredential example '\u003caccount_id\u003e/\u003ccredential_set_id\u003e/\u003ccredential_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "credentialSetId": {
                    "type": "string"
                },
                "location": {
                    "type": "string",
                    "description": "Where the credential is attached in outgoing requests.\nAvailable values: \"header\", \"cookie\".\n"
                },
                "locationName": {
                    "type": "string",
                    "description": "Name of the header or cookie where the credential is attached.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The credential value (e.g. API key, session token). Write-only.\nNever returned in responses.\n",
                    "secret": true
                }
            },
            "required": [
                "credentialSetId",
                "location",
                "locationName",
                "name",
                "value"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "credentialSetId": {
                    "type": "string"
                },
                "location": {
                    "type": "string",
                    "description": "Where the credential is attached in outgoing requests.\nAvailable values: \"header\", \"cookie\".\n"
                },
                "locationName": {
                    "type": "string",
                    "description": "Name of the header or cookie where the credential is attached.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The credential value (e.g. API key, session token). Write-only.\nNever returned in responses.\n",
                    "secret": true
                }
            },
            "requiredInputs": [
                "credentialSetId",
                "location",
                "locationName",
                "name",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering VulnerabilityScannerCredential resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "credentialSetId": {
                        "type": "string"
                    },
                    "location": {
                        "type": "string",
                        "description": "Where the credential is attached in outgoing requests.\nAvailable values: \"header\", \"cookie\".\n"
                    },
                    "locationName": {
                        "type": "string",
                        "description": "Name of the header or cookie where the credential is attached.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Human-readable name.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "The credential value (e.g. API key, session token). Write-only.\nNever returned in responses.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/vulnerabilityScannerCredentialSet:VulnerabilityScannerCredentialSet": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerCredentialSet = new cloudflare.VulnerabilityScannerCredentialSet(\"example_vulnerability_scanner_credential_set\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"Production API credentials\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_credential_set = cloudflare.VulnerabilityScannerCredentialSet(\"example_vulnerability_scanner_credential_set\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"Production API credentials\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerCredentialSet = new Cloudflare.Index.VulnerabilityScannerCredentialSet(\"example_vulnerability_scanner_credential_set\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"Production API credentials\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewVulnerabilityScannerCredentialSet(ctx, \"example_vulnerability_scanner_credential_set\", \u0026cloudflare.VulnerabilityScannerCredentialSetArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"Production API credentials\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.VulnerabilityScannerCredentialSet;\nimport com.pulumi.cloudflare.VulnerabilityScannerCredentialSetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleVulnerabilityScannerCredentialSet = new VulnerabilityScannerCredentialSet(\"exampleVulnerabilityScannerCredentialSet\", VulnerabilityScannerCredentialSetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"Production API credentials\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleVulnerabilityScannerCredentialSet:\n    type: cloudflare:VulnerabilityScannerCredentialSet\n    name: example_vulnerability_scanner_credential_set\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: Production API credentials\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/vulnerabilityScannerCredentialSet:VulnerabilityScannerCredentialSet example '\u003caccount_id\u003e/\u003ccredential_set_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering VulnerabilityScannerCredentialSet resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Human-readable name.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/vulnerabilityScannerTargetEnvironment:VulnerabilityScannerTargetEnvironment": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerTargetEnvironment = new cloudflare.VulnerabilityScannerTargetEnvironment(\"example_vulnerability_scanner_target_environment\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"Production Zone\",\n    target: {\n        type: \"zone\",\n        zoneTag: \"d8e8fca2dc0f896fd7cb4cb0031ba249\",\n    },\n    description: \"Main production environment\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_target_environment = cloudflare.VulnerabilityScannerTargetEnvironment(\"example_vulnerability_scanner_target_environment\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"Production Zone\",\n    target={\n        \"type\": \"zone\",\n        \"zone_tag\": \"d8e8fca2dc0f896fd7cb4cb0031ba249\",\n    },\n    description=\"Main production environment\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerTargetEnvironment = new Cloudflare.Index.VulnerabilityScannerTargetEnvironment(\"example_vulnerability_scanner_target_environment\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"Production Zone\",\n        Target = new Cloudflare.Inputs.VulnerabilityScannerTargetEnvironmentTargetArgs\n        {\n            Type = \"zone\",\n            ZoneTag = \"d8e8fca2dc0f896fd7cb4cb0031ba249\",\n        },\n        Description = \"Main production environment\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewVulnerabilityScannerTargetEnvironment(ctx, \"example_vulnerability_scanner_target_environment\", \u0026cloudflare.VulnerabilityScannerTargetEnvironmentArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"Production Zone\"),\n\t\t\tTarget: \u0026cloudflare.VulnerabilityScannerTargetEnvironmentTargetArgs{\n\t\t\t\tType:    pulumi.String(\"zone\"),\n\t\t\t\tZoneTag: pulumi.String(\"d8e8fca2dc0f896fd7cb4cb0031ba249\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Main production environment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.VulnerabilityScannerTargetEnvironment;\nimport com.pulumi.cloudflare.VulnerabilityScannerTargetEnvironmentArgs;\nimport com.pulumi.cloudflare.inputs.VulnerabilityScannerTargetEnvironmentTargetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleVulnerabilityScannerTargetEnvironment = new VulnerabilityScannerTargetEnvironment(\"exampleVulnerabilityScannerTargetEnvironment\", VulnerabilityScannerTargetEnvironmentArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"Production Zone\")\n            .target(VulnerabilityScannerTargetEnvironmentTargetArgs.builder()\n                .type(\"zone\")\n                .zoneTag(\"d8e8fca2dc0f896fd7cb4cb0031ba249\")\n                .build())\n            .description(\"Main production environment\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleVulnerabilityScannerTargetEnvironment:\n    type: cloudflare:VulnerabilityScannerTargetEnvironment\n    name: example_vulnerability_scanner_target_environment\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: Production Zone\n      target:\n        type: zone\n        zoneTag: d8e8fca2dc0f896fd7cb4cb0031ba249\n      description: Main production environment\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/vulnerabilityScannerTargetEnvironment:VulnerabilityScannerTargetEnvironment example '\u003caccount_id\u003e/\u003ctarget_environment_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Optional description.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/VulnerabilityScannerTargetEnvironmentTarget:VulnerabilityScannerTargetEnvironmentTarget",
                    "description": "Identifies the Cloudflare asset to scan. Uses a \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e discriminator.\nCurrently the service supports only \u003cspan pulumi-lang-nodejs=\"`zone`\" pulumi-lang-dotnet=\"`Zone`\" pulumi-lang-go=\"`zone`\" pulumi-lang-python=\"`zone`\" pulumi-lang-yaml=\"`zone`\" pulumi-lang-java=\"`zone`\"\u003e`zone`\u003c/span\u003e targets.\n"
                }
            },
            "required": [
                "name",
                "target"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Optional description.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Human-readable name.\n"
                },
                "target": {
                    "$ref": "#/types/cloudflare:index/VulnerabilityScannerTargetEnvironmentTarget:VulnerabilityScannerTargetEnvironmentTarget",
                    "description": "Identifies the Cloudflare asset to scan. Uses a \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e discriminator.\nCurrently the service supports only \u003cspan pulumi-lang-nodejs=\"`zone`\" pulumi-lang-dotnet=\"`Zone`\" pulumi-lang-go=\"`zone`\" pulumi-lang-python=\"`zone`\" pulumi-lang-yaml=\"`zone`\" pulumi-lang-java=\"`zone`\"\u003e`zone`\u003c/span\u003e targets.\n"
                }
            },
            "requiredInputs": [
                "name",
                "target"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering VulnerabilityScannerTargetEnvironment resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Optional description.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Human-readable name.\n"
                    },
                    "target": {
                        "$ref": "#/types/cloudflare:index/VulnerabilityScannerTargetEnvironmentTarget:VulnerabilityScannerTargetEnvironmentTarget",
                        "description": "Identifies the Cloudflare asset to scan. Uses a \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e discriminator.\nCurrently the service supports only \u003cspan pulumi-lang-nodejs=\"`zone`\" pulumi-lang-dotnet=\"`Zone`\" pulumi-lang-go=\"`zone`\" pulumi-lang-python=\"`zone`\" pulumi-lang-yaml=\"`zone`\" pulumi-lang-java=\"`zone`\"\u003e`zone`\u003c/span\u003e targets.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/waitingRoom:WaitingRoom": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoom = new cloudflare.WaitingRoom(\"example_waiting_room\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    host: \"shop.example.com\",\n    name: \"production_webinar\",\n    newUsersPerMinute: 200,\n    totalActiveUsers: 200,\n    additionalRoutes: [{\n        host: \"shop2.example.com\",\n        path: \"/shop2/checkout\",\n    }],\n    cookieAttributes: {\n        samesite: \"auto\",\n        secure: \"auto\",\n    },\n    cookieSuffix: \"abcd\",\n    customPageHtml: \"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}\",\n    defaultTemplateLanguage: \"es-ES\",\n    description: \"Production - DO NOT MODIFY\",\n    disableSessionRenewal: false,\n    enabledOriginCommands: [\"revoke\"],\n    jsonResponseEnabled: false,\n    path: \"/shop/checkout\",\n    queueAll: true,\n    queueingMethod: \"fifo\",\n    queueingStatusCode: 202,\n    sessionDuration: 1,\n    suspended: true,\n    turnstileAction: \"log\",\n    turnstileMode: \"off\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room = cloudflare.WaitingRoom(\"example_waiting_room\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    host=\"shop.example.com\",\n    name=\"production_webinar\",\n    new_users_per_minute=200,\n    total_active_users=200,\n    additional_routes=[{\n        \"host\": \"shop2.example.com\",\n        \"path\": \"/shop2/checkout\",\n    }],\n    cookie_attributes={\n        \"samesite\": \"auto\",\n        \"secure\": \"auto\",\n    },\n    cookie_suffix=\"abcd\",\n    custom_page_html=\"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}\",\n    default_template_language=\"es-ES\",\n    description=\"Production - DO NOT MODIFY\",\n    disable_session_renewal=False,\n    enabled_origin_commands=[\"revoke\"],\n    json_response_enabled=False,\n    path=\"/shop/checkout\",\n    queue_all=True,\n    queueing_method=\"fifo\",\n    queueing_status_code=202,\n    session_duration=1,\n    suspended=True,\n    turnstile_action=\"log\",\n    turnstile_mode=\"off\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoom = new Cloudflare.Index.WaitingRoom(\"example_waiting_room\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Host = \"shop.example.com\",\n        Name = \"production_webinar\",\n        NewUsersPerMinute = 200,\n        TotalActiveUsers = 200,\n        AdditionalRoutes = new[]\n        {\n            new Cloudflare.Inputs.WaitingRoomAdditionalRouteArgs\n            {\n                Host = \"shop2.example.com\",\n                Path = \"/shop2/checkout\",\n            },\n        },\n        CookieAttributes = new Cloudflare.Inputs.WaitingRoomCookieAttributesArgs\n        {\n            Samesite = \"auto\",\n            Secure = \"auto\",\n        },\n        CookieSuffix = \"abcd\",\n        CustomPageHtml = \"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}\",\n        DefaultTemplateLanguage = \"es-ES\",\n        Description = \"Production - DO NOT MODIFY\",\n        DisableSessionRenewal = false,\n        EnabledOriginCommands = new[]\n        {\n            \"revoke\",\n        },\n        JsonResponseEnabled = false,\n        Path = \"/shop/checkout\",\n        QueueAll = true,\n        QueueingMethod = \"fifo\",\n        QueueingStatusCode = 202,\n        SessionDuration = 1,\n        Suspended = true,\n        TurnstileAction = \"log\",\n        TurnstileMode = \"off\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWaitingRoom(ctx, \"example_waiting_room\", \u0026cloudflare.WaitingRoomArgs{\n\t\t\tZoneId:            pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHost:              pulumi.String(\"shop.example.com\"),\n\t\t\tName:              pulumi.String(\"production_webinar\"),\n\t\t\tNewUsersPerMinute: pulumi.Int(200),\n\t\t\tTotalActiveUsers:  pulumi.Int(200),\n\t\t\tAdditionalRoutes: cloudflare.WaitingRoomAdditionalRouteArray{\n\t\t\t\t\u0026cloudflare.WaitingRoomAdditionalRouteArgs{\n\t\t\t\t\tHost: pulumi.String(\"shop2.example.com\"),\n\t\t\t\t\tPath: pulumi.String(\"/shop2/checkout\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCookieAttributes: \u0026cloudflare.WaitingRoomCookieAttributesArgs{\n\t\t\t\tSamesite: pulumi.String(\"auto\"),\n\t\t\t\tSecure:   pulumi.String(\"auto\"),\n\t\t\t},\n\t\t\tCookieSuffix:            pulumi.String(\"abcd\"),\n\t\t\tCustomPageHtml:          pulumi.String(\"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}\"),\n\t\t\tDefaultTemplateLanguage: pulumi.String(\"es-ES\"),\n\t\t\tDescription:             pulumi.String(\"Production - DO NOT MODIFY\"),\n\t\t\tDisableSessionRenewal:   pulumi.Bool(false),\n\t\t\tEnabledOriginCommands: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"revoke\"),\n\t\t\t},\n\t\t\tJsonResponseEnabled: pulumi.Bool(false),\n\t\t\tPath:                pulumi.String(\"/shop/checkout\"),\n\t\t\tQueueAll:            pulumi.Bool(true),\n\t\t\tQueueingMethod:      pulumi.String(\"fifo\"),\n\t\t\tQueueingStatusCode:  pulumi.Int(202),\n\t\t\tSessionDuration:     pulumi.Int(1),\n\t\t\tSuspended:           pulumi.Bool(true),\n\t\t\tTurnstileAction:     pulumi.String(\"log\"),\n\t\t\tTurnstileMode:       pulumi.String(\"off\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WaitingRoom;\nimport com.pulumi.cloudflare.WaitingRoomArgs;\nimport com.pulumi.cloudflare.inputs.WaitingRoomAdditionalRouteArgs;\nimport com.pulumi.cloudflare.inputs.WaitingRoomCookieAttributesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWaitingRoom = new WaitingRoom(\"exampleWaitingRoom\", WaitingRoomArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .host(\"shop.example.com\")\n            .name(\"production_webinar\")\n            .newUsersPerMinute(200)\n            .totalActiveUsers(200)\n            .additionalRoutes(WaitingRoomAdditionalRouteArgs.builder()\n                .host(\"shop2.example.com\")\n                .path(\"/shop2/checkout\")\n                .build())\n            .cookieAttributes(WaitingRoomCookieAttributesArgs.builder()\n                .samesite(\"auto\")\n                .secure(\"auto\")\n                .build())\n            .cookieSuffix(\"abcd\")\n            .customPageHtml(\"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}\")\n            .defaultTemplateLanguage(\"es-ES\")\n            .description(\"Production - DO NOT MODIFY\")\n            .disableSessionRenewal(false)\n            .enabledOriginCommands(\"revoke\")\n            .jsonResponseEnabled(false)\n            .path(\"/shop/checkout\")\n            .queueAll(true)\n            .queueingMethod(\"fifo\")\n            .queueingStatusCode(202)\n            .sessionDuration(1)\n            .suspended(true)\n            .turnstileAction(\"log\")\n            .turnstileMode(\"off\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWaitingRoom:\n    type: cloudflare:WaitingRoom\n    name: example_waiting_room\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      host: shop.example.com\n      name: production_webinar\n      newUsersPerMinute: 200\n      totalActiveUsers: 200\n      additionalRoutes:\n        - host: shop2.example.com\n          path: /shop2/checkout\n      cookieAttributes:\n        samesite: auto\n        secure: auto\n      cookieSuffix: abcd\n      customPageHtml: '{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}'\n      defaultTemplateLanguage: es-ES\n      description: Production - DO NOT MODIFY\n      disableSessionRenewal: false\n      enabledOriginCommands:\n        - revoke\n      jsonResponseEnabled: false\n      path: /shop/checkout\n      queueAll: true\n      queueingMethod: fifo\n      queueingStatusCode: 202\n      sessionDuration: 1\n      suspended: true\n      turnstileAction: log\n      turnstileMode: off\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/waitingRoom:WaitingRoom example '\u003czone_id\u003e/\u003cwaiting_room_id\u003e'\n```\n\n",
            "properties": {
                "additionalRoutes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WaitingRoomAdditionalRoute:WaitingRoomAdditionalRoute"
                    },
                    "description": "Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.\n"
                },
                "cookieAttributes": {
                    "$ref": "#/types/cloudflare:index/WaitingRoomCookieAttributes:WaitingRoomCookieAttributes",
                    "description": "Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position.\n"
                },
                "cookieSuffix": {
                    "type": "string",
                    "description": "Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(_*cf*waitingroom). If \u003cspan pulumi-lang-nodejs=\"`cookieSuffix`\" pulumi-lang-dotnet=\"`CookieSuffix`\" pulumi-lang-go=\"`cookieSuffix`\" pulumi-lang-python=\"`cookie_suffix`\" pulumi-lang-yaml=\"`cookieSuffix`\" pulumi-lang-java=\"`cookieSuffix`\"\u003e`cookieSuffix`\u003c/span\u003e is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using \u003cspan pulumi-lang-nodejs=\"`additionalRoutes`\" pulumi-lang-dotnet=\"`AdditionalRoutes`\" pulumi-lang-go=\"`additionalRoutes`\" pulumi-lang-python=\"`additional_routes`\" pulumi-lang-yaml=\"`additionalRoutes`\" pulumi-lang-java=\"`additionalRoutes`\"\u003e`additionalRoutes`\u003c/span\u003e.\n"
                },
                "createdOn": {
                    "type": "string"
                },
                "customPageHtml": {
                    "type": "string",
                    "description": "Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom*page*html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge:\n"
                },
                "defaultTemplateLanguage": {
                    "type": "string",
                    "description": "The language of the default page template. If no\u003cspan pulumi-lang-nodejs=\" defaultTemplateLanguage \" pulumi-lang-dotnet=\" DefaultTemplateLanguage \" pulumi-lang-go=\" defaultTemplateLanguage \" pulumi-lang-python=\" default_template_language \" pulumi-lang-yaml=\" defaultTemplateLanguage \" pulumi-lang-java=\" defaultTemplateLanguage \"\u003e defaultTemplateLanguage \u003c/span\u003eis provided, then `en-US` (English) will be used.\nAvailable values: \"en-US\", \"es-ES\", \"de-DE\", \"fr-FR\", \"it-IT\", \"ja-JP\", \"ko-KR\", \"pt-BR\", \"zh-CN\", \"zh-TW\", \"nl-NL\", \"pl-PL\", \"id-ID\", \"tr-TR\", \"ar-EG\", \"ru-RU\", \"fa-IR\", \"bg-BG\", \"hr-HR\", \"cs-CZ\", \"da-DK\", \"fi-FI\", \"lt-LT\", \"ms-MY\", \"nb-NO\", \"ro-RO\", \"el-GR\", \"he-IL\", \"hi-IN\", \"hu-HU\", \"sr-BA\", \"sk-SK\", \"sl-SI\", \"sv-SE\", \"tl-PH\", \"th-TH\", \"uk-UA\", \"vi-VN\"."
                },
                "description": {
                    "type": "string",
                    "description": "A note that you can use to add more details about the waiting room."
                },
                "disableSessionRenewal": {
                    "type": "boolean",
                    "description": "Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, an accepted user will have\u003cspan pulumi-lang-nodejs=\" sessionDuration \" pulumi-lang-dotnet=\" SessionDuration \" pulumi-lang-go=\" sessionDuration \" pulumi-lang-python=\" session_duration \" pulumi-lang-yaml=\" sessionDuration \" pulumi-lang-java=\" sessionDuration \"\u003e sessionDuration \u003c/span\u003eminutes to browse the site. After that, they will have to go through the waiting room again. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, a user's session cookie will be automatically renewed on every request."
                },
                "enabledOriginCommands": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of enabled origin commands."
                },
                "host": {
                    "type": "string",
                    "description": "The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique.\n"
                },
                "jsonResponseEnabled": {
                    "type": "boolean",
                    "description": "Only available for the Waiting Room Advanced subscription. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields:\n1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**).\n2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.\n3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`.\n4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile).\n5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it.\n6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile).\n7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**.\n8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment.\n9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.\n10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change.\n11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, there is no specified refresh time —\\_it will always be **zero**.\n12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.\n13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.\n14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.\n15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin.\n16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue.\n17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists.\n18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts.\n19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts.\n20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**.\n21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends.\n22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**.\n23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.\n24. \u003cspan pulumi-lang-nodejs=\"`turnstile`\" pulumi-lang-dotnet=\"`Turnstile`\" pulumi-lang-go=\"`turnstile`\" pulumi-lang-python=\"`turnstile`\" pulumi-lang-yaml=\"`turnstile`\" pulumi-lang-java=\"`turnstile`\"\u003e`turnstile`\u003c/span\u003e: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the \u003cspan pulumi-lang-nodejs=\"`customHtml`\" pulumi-lang-dotnet=\"`CustomHtml`\" pulumi-lang-go=\"`customHtml`\" pulumi-lang-python=\"`custom_html`\" pulumi-lang-yaml=\"`customHtml`\" pulumi-lang-java=\"`customHtml`\"\u003e`customHtml`\u003c/span\u003e template to ensure the Turnstile widget appears.\n25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.\n\nAn example cURL to a waiting room could be:\n\n\tcurl -X GET \"https://example.com/waitingroom\" \\\n\t\t-H \"Accept: application/json\"\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 0,\n\t\t\t\"waitTime50Percentile\": 0,\n\t\t\t\"waitTime75Percentile\": 0,\n\t\t\t\"waitTimeFormatted\": \"10 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"fifo\",\n\t\t\t\"isFIFOQueue\": true,\n\t\t\t\"isRandomQueue\": false,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": false,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 0,\n\t\t\t\"timeUntilEventEndFormatted\": \"unavailable\",\n\t\t\t\"shuffleAtEventStart\": false\n\t\t}\n\t}\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 5,\n\t\t\t\"waitTime50Percentile\": 10,\n\t\t\t\"waitTime75Percentile\": 15,\n\t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"random\",\n\t\t\t\"isFIFOQueue\": false,\n\t\t\t\"isRandomQueue\": true,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": true,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 15,\n\t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\",\n\t\t\t\"shuffleAtEventStart\": true\n\t\t}\n\t}"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "newUsersPerMinute": {
                    "type": "integer",
                    "description": "Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world.\n"
                },
                "nextEventPrequeueStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when the next event will begin queueing."
                },
                "nextEventStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when the next event will start."
                },
                "path": {
                    "type": "string",
                    "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported."
                },
                "queueAll": {
                    "type": "boolean",
                    "description": "If\u003cspan pulumi-lang-nodejs=\" queueAll \" pulumi-lang-dotnet=\" QueueAll \" pulumi-lang-go=\" queueAll \" pulumi-lang-python=\" queue_all \" pulumi-lang-yaml=\" queueAll \" pulumi-lang-java=\" queueAll \"\u003e queueAll \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable."
                },
                "queueingMethod": {
                    "type": "string",
                    "description": "Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if \u003cspan pulumi-lang-nodejs=\"`queueAll`\" pulumi-lang-dotnet=\"`QueueAll`\" pulumi-lang-go=\"`queueAll`\" pulumi-lang-python=\"`queue_all`\" pulumi-lang-yaml=\"`queueAll`\" pulumi-lang-java=\"`queueAll`\"\u003e`queueAll`\u003c/span\u003e is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are:\n1. \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.\n2. \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e: Random queue where customers gain access randomly, regardless of arrival time.\n3. \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with \u003cspan pulumi-lang-nodejs=\"`suspended`\" pulumi-lang-dotnet=\"`Suspended`\" pulumi-lang-go=\"`suspended`\" pulumi-lang-python=\"`suspended`\" pulumi-lang-yaml=\"`suspended`\" pulumi-lang-java=\"`suspended`\"\u003e`suspended`\u003c/span\u003e) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa.\n4. \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, and its events override this with \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**.\nAvailable values: \"fifo\", \"random\", \"passthrough\", \"reject\"."
                },
                "queueingStatusCode": {
                    "type": "integer",
                    "description": "HTTP status code returned to a user while in the queue.\nAvailable values: 200, 202, 429."
                },
                "sessionDuration": {
                    "type": "integer",
                    "description": "Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route."
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Suspends or allows traffic going to the waiting room. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the traffic will not go to the waiting room."
                },
                "totalActiveUsers": {
                    "type": "integer",
                    "description": "Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.\n"
                },
                "turnstileAction": {
                    "type": "string",
                    "description": "Which action to take when a bot is detected using Turnstile. \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e will\nhave no impact on queueing behavior, simply keeping track of how many\nbots are detected in Waiting Room Analytics. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e will send\nbots to a false queueing state, where they will never reach your\norigin. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e."
                },
                "turnstileMode": {
                    "type": "string",
                    "description": "Which Turnstile widget type to use for detecting bot traffic. See\n[the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types)\nfor the definitions of these widget types. Set to \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e to disable the\nTurnstile integration entirely. Setting this to anything other than\n\u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`invisible`\" pulumi-lang-dotnet=\"`Invisible`\" pulumi-lang-go=\"`invisible`\" pulumi-lang-python=\"`invisible`\" pulumi-lang-yaml=\"`invisible`\" pulumi-lang-java=\"`invisible`\"\u003e`invisible`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"off\", \"invisible\", \u003cspan pulumi-lang-nodejs=\"\"visibleNonInteractive\"\" pulumi-lang-dotnet=\"\"VisibleNonInteractive\"\" pulumi-lang-go=\"\"visibleNonInteractive\"\" pulumi-lang-python=\"\"visible_non_interactive\"\" pulumi-lang-yaml=\"\"visibleNonInteractive\"\" pulumi-lang-java=\"\"visibleNonInteractive\"\"\u003e\"visibleNonInteractive\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "required": [
                "additionalRoutes",
                "cookieAttributes",
                "cookieSuffix",
                "createdOn",
                "customPageHtml",
                "defaultTemplateLanguage",
                "description",
                "disableSessionRenewal",
                "enabledOriginCommands",
                "host",
                "jsonResponseEnabled",
                "modifiedOn",
                "name",
                "newUsersPerMinute",
                "nextEventPrequeueStartTime",
                "nextEventStartTime",
                "path",
                "queueAll",
                "queueingMethod",
                "queueingStatusCode",
                "sessionDuration",
                "suspended",
                "totalActiveUsers",
                "turnstileAction",
                "turnstileMode"
            ],
            "inputProperties": {
                "additionalRoutes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WaitingRoomAdditionalRoute:WaitingRoomAdditionalRoute"
                    },
                    "description": "Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.\n"
                },
                "cookieAttributes": {
                    "$ref": "#/types/cloudflare:index/WaitingRoomCookieAttributes:WaitingRoomCookieAttributes",
                    "description": "Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position.\n"
                },
                "cookieSuffix": {
                    "type": "string",
                    "description": "Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(_*cf*waitingroom). If \u003cspan pulumi-lang-nodejs=\"`cookieSuffix`\" pulumi-lang-dotnet=\"`CookieSuffix`\" pulumi-lang-go=\"`cookieSuffix`\" pulumi-lang-python=\"`cookie_suffix`\" pulumi-lang-yaml=\"`cookieSuffix`\" pulumi-lang-java=\"`cookieSuffix`\"\u003e`cookieSuffix`\u003c/span\u003e is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using \u003cspan pulumi-lang-nodejs=\"`additionalRoutes`\" pulumi-lang-dotnet=\"`AdditionalRoutes`\" pulumi-lang-go=\"`additionalRoutes`\" pulumi-lang-python=\"`additional_routes`\" pulumi-lang-yaml=\"`additionalRoutes`\" pulumi-lang-java=\"`additionalRoutes`\"\u003e`additionalRoutes`\u003c/span\u003e.\n"
                },
                "customPageHtml": {
                    "type": "string",
                    "description": "Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom*page*html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge:\n"
                },
                "defaultTemplateLanguage": {
                    "type": "string",
                    "description": "The language of the default page template. If no\u003cspan pulumi-lang-nodejs=\" defaultTemplateLanguage \" pulumi-lang-dotnet=\" DefaultTemplateLanguage \" pulumi-lang-go=\" defaultTemplateLanguage \" pulumi-lang-python=\" default_template_language \" pulumi-lang-yaml=\" defaultTemplateLanguage \" pulumi-lang-java=\" defaultTemplateLanguage \"\u003e defaultTemplateLanguage \u003c/span\u003eis provided, then `en-US` (English) will be used.\nAvailable values: \"en-US\", \"es-ES\", \"de-DE\", \"fr-FR\", \"it-IT\", \"ja-JP\", \"ko-KR\", \"pt-BR\", \"zh-CN\", \"zh-TW\", \"nl-NL\", \"pl-PL\", \"id-ID\", \"tr-TR\", \"ar-EG\", \"ru-RU\", \"fa-IR\", \"bg-BG\", \"hr-HR\", \"cs-CZ\", \"da-DK\", \"fi-FI\", \"lt-LT\", \"ms-MY\", \"nb-NO\", \"ro-RO\", \"el-GR\", \"he-IL\", \"hi-IN\", \"hu-HU\", \"sr-BA\", \"sk-SK\", \"sl-SI\", \"sv-SE\", \"tl-PH\", \"th-TH\", \"uk-UA\", \"vi-VN\"."
                },
                "description": {
                    "type": "string",
                    "description": "A note that you can use to add more details about the waiting room."
                },
                "disableSessionRenewal": {
                    "type": "boolean",
                    "description": "Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, an accepted user will have\u003cspan pulumi-lang-nodejs=\" sessionDuration \" pulumi-lang-dotnet=\" SessionDuration \" pulumi-lang-go=\" sessionDuration \" pulumi-lang-python=\" session_duration \" pulumi-lang-yaml=\" sessionDuration \" pulumi-lang-java=\" sessionDuration \"\u003e sessionDuration \u003c/span\u003eminutes to browse the site. After that, they will have to go through the waiting room again. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, a user's session cookie will be automatically renewed on every request."
                },
                "enabledOriginCommands": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of enabled origin commands."
                },
                "host": {
                    "type": "string",
                    "description": "The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique.\n"
                },
                "jsonResponseEnabled": {
                    "type": "boolean",
                    "description": "Only available for the Waiting Room Advanced subscription. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields:\n1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**).\n2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.\n3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`.\n4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile).\n5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it.\n6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile).\n7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**.\n8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment.\n9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.\n10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change.\n11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, there is no specified refresh time —\\_it will always be **zero**.\n12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.\n13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.\n14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.\n15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin.\n16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue.\n17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists.\n18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts.\n19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts.\n20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**.\n21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends.\n22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**.\n23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.\n24. \u003cspan pulumi-lang-nodejs=\"`turnstile`\" pulumi-lang-dotnet=\"`Turnstile`\" pulumi-lang-go=\"`turnstile`\" pulumi-lang-python=\"`turnstile`\" pulumi-lang-yaml=\"`turnstile`\" pulumi-lang-java=\"`turnstile`\"\u003e`turnstile`\u003c/span\u003e: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the \u003cspan pulumi-lang-nodejs=\"`customHtml`\" pulumi-lang-dotnet=\"`CustomHtml`\" pulumi-lang-go=\"`customHtml`\" pulumi-lang-python=\"`custom_html`\" pulumi-lang-yaml=\"`customHtml`\" pulumi-lang-java=\"`customHtml`\"\u003e`customHtml`\u003c/span\u003e template to ensure the Turnstile widget appears.\n25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.\n\nAn example cURL to a waiting room could be:\n\n\tcurl -X GET \"https://example.com/waitingroom\" \\\n\t\t-H \"Accept: application/json\"\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 0,\n\t\t\t\"waitTime50Percentile\": 0,\n\t\t\t\"waitTime75Percentile\": 0,\n\t\t\t\"waitTimeFormatted\": \"10 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"fifo\",\n\t\t\t\"isFIFOQueue\": true,\n\t\t\t\"isRandomQueue\": false,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": false,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 0,\n\t\t\t\"timeUntilEventEndFormatted\": \"unavailable\",\n\t\t\t\"shuffleAtEventStart\": false\n\t\t}\n\t}\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 5,\n\t\t\t\"waitTime50Percentile\": 10,\n\t\t\t\"waitTime75Percentile\": 15,\n\t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"random\",\n\t\t\t\"isFIFOQueue\": false,\n\t\t\t\"isRandomQueue\": true,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": true,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 15,\n\t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\",\n\t\t\t\"shuffleAtEventStart\": true\n\t\t}\n\t}"
                },
                "name": {
                    "type": "string",
                    "description": "A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "newUsersPerMinute": {
                    "type": "integer",
                    "description": "Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported."
                },
                "queueAll": {
                    "type": "boolean",
                    "description": "If\u003cspan pulumi-lang-nodejs=\" queueAll \" pulumi-lang-dotnet=\" QueueAll \" pulumi-lang-go=\" queueAll \" pulumi-lang-python=\" queue_all \" pulumi-lang-yaml=\" queueAll \" pulumi-lang-java=\" queueAll \"\u003e queueAll \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable."
                },
                "queueingMethod": {
                    "type": "string",
                    "description": "Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if \u003cspan pulumi-lang-nodejs=\"`queueAll`\" pulumi-lang-dotnet=\"`QueueAll`\" pulumi-lang-go=\"`queueAll`\" pulumi-lang-python=\"`queue_all`\" pulumi-lang-yaml=\"`queueAll`\" pulumi-lang-java=\"`queueAll`\"\u003e`queueAll`\u003c/span\u003e is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are:\n1. \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.\n2. \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e: Random queue where customers gain access randomly, regardless of arrival time.\n3. \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with \u003cspan pulumi-lang-nodejs=\"`suspended`\" pulumi-lang-dotnet=\"`Suspended`\" pulumi-lang-go=\"`suspended`\" pulumi-lang-python=\"`suspended`\" pulumi-lang-yaml=\"`suspended`\" pulumi-lang-java=\"`suspended`\"\u003e`suspended`\u003c/span\u003e) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa.\n4. \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, and its events override this with \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**.\nAvailable values: \"fifo\", \"random\", \"passthrough\", \"reject\"."
                },
                "queueingStatusCode": {
                    "type": "integer",
                    "description": "HTTP status code returned to a user while in the queue.\nAvailable values: 200, 202, 429."
                },
                "sessionDuration": {
                    "type": "integer",
                    "description": "Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route."
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Suspends or allows traffic going to the waiting room. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the traffic will not go to the waiting room."
                },
                "totalActiveUsers": {
                    "type": "integer",
                    "description": "Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.\n"
                },
                "turnstileAction": {
                    "type": "string",
                    "description": "Which action to take when a bot is detected using Turnstile. \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e will\nhave no impact on queueing behavior, simply keeping track of how many\nbots are detected in Waiting Room Analytics. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e will send\nbots to a false queueing state, where they will never reach your\norigin. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e."
                },
                "turnstileMode": {
                    "type": "string",
                    "description": "Which Turnstile widget type to use for detecting bot traffic. See\n[the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types)\nfor the definitions of these widget types. Set to \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e to disable the\nTurnstile integration entirely. Setting this to anything other than\n\u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`invisible`\" pulumi-lang-dotnet=\"`Invisible`\" pulumi-lang-go=\"`invisible`\" pulumi-lang-python=\"`invisible`\" pulumi-lang-yaml=\"`invisible`\" pulumi-lang-java=\"`invisible`\"\u003e`invisible`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"off\", \"invisible\", \u003cspan pulumi-lang-nodejs=\"\"visibleNonInteractive\"\" pulumi-lang-dotnet=\"\"VisibleNonInteractive\"\" pulumi-lang-go=\"\"visibleNonInteractive\"\" pulumi-lang-python=\"\"visible_non_interactive\"\" pulumi-lang-yaml=\"\"visibleNonInteractive\"\" pulumi-lang-java=\"\"visibleNonInteractive\"\"\u003e\"visibleNonInteractive\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier."
                }
            },
            "requiredInputs": [
                "host",
                "name",
                "newUsersPerMinute",
                "totalActiveUsers"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WaitingRoom resources.\n",
                "properties": {
                    "additionalRoutes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WaitingRoomAdditionalRoute:WaitingRoomAdditionalRoute"
                        },
                        "description": "Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.\n"
                    },
                    "cookieAttributes": {
                        "$ref": "#/types/cloudflare:index/WaitingRoomCookieAttributes:WaitingRoomCookieAttributes",
                        "description": "Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position.\n"
                    },
                    "cookieSuffix": {
                        "type": "string",
                        "description": "Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(_*cf*waitingroom). If \u003cspan pulumi-lang-nodejs=\"`cookieSuffix`\" pulumi-lang-dotnet=\"`CookieSuffix`\" pulumi-lang-go=\"`cookieSuffix`\" pulumi-lang-python=\"`cookie_suffix`\" pulumi-lang-yaml=\"`cookieSuffix`\" pulumi-lang-java=\"`cookieSuffix`\"\u003e`cookieSuffix`\u003c/span\u003e is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using \u003cspan pulumi-lang-nodejs=\"`additionalRoutes`\" pulumi-lang-dotnet=\"`AdditionalRoutes`\" pulumi-lang-go=\"`additionalRoutes`\" pulumi-lang-python=\"`additional_routes`\" pulumi-lang-yaml=\"`additionalRoutes`\" pulumi-lang-java=\"`additionalRoutes`\"\u003e`additionalRoutes`\u003c/span\u003e.\n"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "customPageHtml": {
                        "type": "string",
                        "description": "Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom*page*html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge:\n"
                    },
                    "defaultTemplateLanguage": {
                        "type": "string",
                        "description": "The language of the default page template. If no\u003cspan pulumi-lang-nodejs=\" defaultTemplateLanguage \" pulumi-lang-dotnet=\" DefaultTemplateLanguage \" pulumi-lang-go=\" defaultTemplateLanguage \" pulumi-lang-python=\" default_template_language \" pulumi-lang-yaml=\" defaultTemplateLanguage \" pulumi-lang-java=\" defaultTemplateLanguage \"\u003e defaultTemplateLanguage \u003c/span\u003eis provided, then `en-US` (English) will be used.\nAvailable values: \"en-US\", \"es-ES\", \"de-DE\", \"fr-FR\", \"it-IT\", \"ja-JP\", \"ko-KR\", \"pt-BR\", \"zh-CN\", \"zh-TW\", \"nl-NL\", \"pl-PL\", \"id-ID\", \"tr-TR\", \"ar-EG\", \"ru-RU\", \"fa-IR\", \"bg-BG\", \"hr-HR\", \"cs-CZ\", \"da-DK\", \"fi-FI\", \"lt-LT\", \"ms-MY\", \"nb-NO\", \"ro-RO\", \"el-GR\", \"he-IL\", \"hi-IN\", \"hu-HU\", \"sr-BA\", \"sk-SK\", \"sl-SI\", \"sv-SE\", \"tl-PH\", \"th-TH\", \"uk-UA\", \"vi-VN\"."
                    },
                    "description": {
                        "type": "string",
                        "description": "A note that you can use to add more details about the waiting room."
                    },
                    "disableSessionRenewal": {
                        "type": "boolean",
                        "description": "Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, an accepted user will have\u003cspan pulumi-lang-nodejs=\" sessionDuration \" pulumi-lang-dotnet=\" SessionDuration \" pulumi-lang-go=\" sessionDuration \" pulumi-lang-python=\" session_duration \" pulumi-lang-yaml=\" sessionDuration \" pulumi-lang-java=\" sessionDuration \"\u003e sessionDuration \u003c/span\u003eminutes to browse the site. After that, they will have to go through the waiting room again. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, a user's session cookie will be automatically renewed on every request."
                    },
                    "enabledOriginCommands": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of enabled origin commands."
                    },
                    "host": {
                        "type": "string",
                        "description": "The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique.\n"
                    },
                    "jsonResponseEnabled": {
                        "type": "boolean",
                        "description": "Only available for the Waiting Room Advanced subscription. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields:\n1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**).\n2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.\n3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`.\n4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile).\n5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it.\n6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile).\n7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**.\n8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment.\n9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.\n10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change.\n11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, there is no specified refresh time —\\_it will always be **zero**.\n12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.\n13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.\n14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.\n15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin.\n16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue.\n17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists.\n18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts.\n19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts.\n20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**.\n21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends.\n22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**.\n23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.\n24. \u003cspan pulumi-lang-nodejs=\"`turnstile`\" pulumi-lang-dotnet=\"`Turnstile`\" pulumi-lang-go=\"`turnstile`\" pulumi-lang-python=\"`turnstile`\" pulumi-lang-yaml=\"`turnstile`\" pulumi-lang-java=\"`turnstile`\"\u003e`turnstile`\u003c/span\u003e: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the \u003cspan pulumi-lang-nodejs=\"`customHtml`\" pulumi-lang-dotnet=\"`CustomHtml`\" pulumi-lang-go=\"`customHtml`\" pulumi-lang-python=\"`custom_html`\" pulumi-lang-yaml=\"`customHtml`\" pulumi-lang-java=\"`customHtml`\"\u003e`customHtml`\u003c/span\u003e template to ensure the Turnstile widget appears.\n25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.\n\nAn example cURL to a waiting room could be:\n\n\tcurl -X GET \"https://example.com/waitingroom\" \\\n\t\t-H \"Accept: application/json\"\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 0,\n\t\t\t\"waitTime50Percentile\": 0,\n\t\t\t\"waitTime75Percentile\": 0,\n\t\t\t\"waitTimeFormatted\": \"10 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"fifo\",\n\t\t\t\"isFIFOQueue\": true,\n\t\t\t\"isRandomQueue\": false,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": false,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 0,\n\t\t\t\"timeUntilEventEndFormatted\": \"unavailable\",\n\t\t\t\"shuffleAtEventStart\": false\n\t\t}\n\t}\n\nIf \u003cspan pulumi-lang-nodejs=\"`jsonResponseEnabled`\" pulumi-lang-dotnet=\"`JsonResponseEnabled`\" pulumi-lang-go=\"`jsonResponseEnabled`\" pulumi-lang-python=\"`json_response_enabled`\" pulumi-lang-yaml=\"`jsonResponseEnabled`\" pulumi-lang-java=\"`jsonResponseEnabled`\"\u003e`jsonResponseEnabled`\u003c/span\u003e is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 5,\n\t\t\t\"waitTime50Percentile\": 10,\n\t\t\t\"waitTime75Percentile\": 15,\n\t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"random\",\n\t\t\t\"isFIFOQueue\": false,\n\t\t\t\"isRandomQueue\": true,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": true,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 15,\n\t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\",\n\t\t\t\"shuffleAtEventStart\": true\n\t\t}\n\t}"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                    },
                    "newUsersPerMinute": {
                        "type": "integer",
                        "description": "Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world.\n"
                    },
                    "nextEventPrequeueStartTime": {
                        "type": "string",
                        "description": "An ISO 8601 timestamp that marks when the next event will begin queueing."
                    },
                    "nextEventStartTime": {
                        "type": "string",
                        "description": "An ISO 8601 timestamp that marks when the next event will start."
                    },
                    "path": {
                        "type": "string",
                        "description": "Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported."
                    },
                    "queueAll": {
                        "type": "boolean",
                        "description": "If\u003cspan pulumi-lang-nodejs=\" queueAll \" pulumi-lang-dotnet=\" QueueAll \" pulumi-lang-go=\" queueAll \" pulumi-lang-python=\" queue_all \" pulumi-lang-yaml=\" queueAll \" pulumi-lang-java=\" queueAll \"\u003e queueAll \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable."
                    },
                    "queueingMethod": {
                        "type": "string",
                        "description": "Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if \u003cspan pulumi-lang-nodejs=\"`queueAll`\" pulumi-lang-dotnet=\"`QueueAll`\" pulumi-lang-go=\"`queueAll`\" pulumi-lang-python=\"`queue_all`\" pulumi-lang-yaml=\"`queueAll`\" pulumi-lang-java=\"`queueAll`\"\u003e`queueAll`\u003c/span\u003e is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are:\n1. \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.\n2. \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e: Random queue where customers gain access randomly, regardless of arrival time.\n3. \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with \u003cspan pulumi-lang-nodejs=\"`suspended`\" pulumi-lang-dotnet=\"`Suspended`\" pulumi-lang-go=\"`suspended`\" pulumi-lang-python=\"`suspended`\" pulumi-lang-yaml=\"`suspended`\" pulumi-lang-java=\"`suspended`\"\u003e`suspended`\u003c/span\u003e) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa.\n4. \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses \u003cspan pulumi-lang-nodejs=\"`reject`\" pulumi-lang-dotnet=\"`Reject`\" pulumi-lang-go=\"`reject`\" pulumi-lang-python=\"`reject`\" pulumi-lang-yaml=\"`reject`\" pulumi-lang-java=\"`reject`\"\u003e`reject`\u003c/span\u003e, and its events override this with \u003cspan pulumi-lang-nodejs=\"`fifo`\" pulumi-lang-dotnet=\"`Fifo`\" pulumi-lang-go=\"`fifo`\" pulumi-lang-python=\"`fifo`\" pulumi-lang-yaml=\"`fifo`\" pulumi-lang-java=\"`fifo`\"\u003e`fifo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`random`\" pulumi-lang-dotnet=\"`Random`\" pulumi-lang-go=\"`random`\" pulumi-lang-python=\"`random`\" pulumi-lang-yaml=\"`random`\" pulumi-lang-java=\"`random`\"\u003e`random`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**.\nAvailable values: \"fifo\", \"random\", \"passthrough\", \"reject\"."
                    },
                    "queueingStatusCode": {
                        "type": "integer",
                        "description": "HTTP status code returned to a user while in the queue.\nAvailable values: 200, 202, 429."
                    },
                    "sessionDuration": {
                        "type": "integer",
                        "description": "Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route."
                    },
                    "suspended": {
                        "type": "boolean",
                        "description": "Suspends or allows traffic going to the waiting room. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the traffic will not go to the waiting room."
                    },
                    "totalActiveUsers": {
                        "type": "integer",
                        "description": "Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.\n"
                    },
                    "turnstileAction": {
                        "type": "string",
                        "description": "Which action to take when a bot is detected using Turnstile. \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e will\nhave no impact on queueing behavior, simply keeping track of how many\nbots are detected in Waiting Room Analytics. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e will send\nbots to a false queueing state, where they will never reach your\norigin. \u003cspan pulumi-lang-nodejs=\"`infiniteQueue`\" pulumi-lang-dotnet=\"`InfiniteQueue`\" pulumi-lang-go=\"`infiniteQueue`\" pulumi-lang-python=\"`infinite_queue`\" pulumi-lang-yaml=\"`infiniteQueue`\" pulumi-lang-java=\"`infiniteQueue`\"\u003e`infiniteQueue`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e."
                    },
                    "turnstileMode": {
                        "type": "string",
                        "description": "Which Turnstile widget type to use for detecting bot traffic. See\n[the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types)\nfor the definitions of these widget types. Set to \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e to disable the\nTurnstile integration entirely. Setting this to anything other than\n\u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`invisible`\" pulumi-lang-dotnet=\"`Invisible`\" pulumi-lang-go=\"`invisible`\" pulumi-lang-python=\"`invisible`\" pulumi-lang-yaml=\"`invisible`\" pulumi-lang-java=\"`invisible`\"\u003e`invisible`\u003c/span\u003e requires Advanced Waiting Room.\nAvailable values: \"off\", \"invisible\", \u003cspan pulumi-lang-nodejs=\"\"visibleNonInteractive\"\" pulumi-lang-dotnet=\"\"VisibleNonInteractive\"\" pulumi-lang-go=\"\"visibleNonInteractive\"\" pulumi-lang-python=\"\"visible_non_interactive\"\" pulumi-lang-yaml=\"\"visibleNonInteractive\"\" pulumi-lang-java=\"\"visibleNonInteractive\"\"\u003e\"visibleNonInteractive\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/waitingRoomEvent:WaitingRoomEvent": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomEvent = new cloudflare.WaitingRoomEvent(\"example_waiting_room_event\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    waitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n    eventEndTime: \"2021-09-28T17:00:00.000Z\",\n    eventStartTime: \"2021-09-28T15:30:00.000Z\",\n    name: \"production_webinar_event\",\n    customPageHtml: \"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}\",\n    description: \"Production event - DO NOT MODIFY\",\n    disableSessionRenewal: true,\n    newUsersPerMinute: 200,\n    prequeueStartTime: \"2021-09-28T15:00:00.000Z\",\n    queueingMethod: \"random\",\n    sessionDuration: 1,\n    shuffleAtEventStart: true,\n    suspended: true,\n    totalActiveUsers: 200,\n    turnstileAction: \"log\",\n    turnstileMode: \"off\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_event = cloudflare.WaitingRoomEvent(\"example_waiting_room_event\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    waiting_room_id=\"699d98642c564d2e855e9661899b7252\",\n    event_end_time=\"2021-09-28T17:00:00.000Z\",\n    event_start_time=\"2021-09-28T15:30:00.000Z\",\n    name=\"production_webinar_event\",\n    custom_page_html=\"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}\",\n    description=\"Production event - DO NOT MODIFY\",\n    disable_session_renewal=True,\n    new_users_per_minute=200,\n    prequeue_start_time=\"2021-09-28T15:00:00.000Z\",\n    queueing_method=\"random\",\n    session_duration=1,\n    shuffle_at_event_start=True,\n    suspended=True,\n    total_active_users=200,\n    turnstile_action=\"log\",\n    turnstile_mode=\"off\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomEvent = new Cloudflare.Index.WaitingRoomEvent(\"example_waiting_room_event\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WaitingRoomId = \"699d98642c564d2e855e9661899b7252\",\n        EventEndTime = \"2021-09-28T17:00:00.000Z\",\n        EventStartTime = \"2021-09-28T15:30:00.000Z\",\n        Name = \"production_webinar_event\",\n        CustomPageHtml = \"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}\",\n        Description = \"Production event - DO NOT MODIFY\",\n        DisableSessionRenewal = true,\n        NewUsersPerMinute = 200,\n        PrequeueStartTime = \"2021-09-28T15:00:00.000Z\",\n        QueueingMethod = \"random\",\n        SessionDuration = 1,\n        ShuffleAtEventStart = true,\n        Suspended = true,\n        TotalActiveUsers = 200,\n        TurnstileAction = \"log\",\n        TurnstileMode = \"off\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWaitingRoomEvent(ctx, \"example_waiting_room_event\", \u0026cloudflare.WaitingRoomEventArgs{\n\t\t\tZoneId:                pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWaitingRoomId:         pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tEventEndTime:          pulumi.String(\"2021-09-28T17:00:00.000Z\"),\n\t\t\tEventStartTime:        pulumi.String(\"2021-09-28T15:30:00.000Z\"),\n\t\t\tName:                  pulumi.String(\"production_webinar_event\"),\n\t\t\tCustomPageHtml:        pulumi.String(\"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}\"),\n\t\t\tDescription:           pulumi.String(\"Production event - DO NOT MODIFY\"),\n\t\t\tDisableSessionRenewal: pulumi.Bool(true),\n\t\t\tNewUsersPerMinute:     pulumi.Int(200),\n\t\t\tPrequeueStartTime:     pulumi.String(\"2021-09-28T15:00:00.000Z\"),\n\t\t\tQueueingMethod:        pulumi.String(\"random\"),\n\t\t\tSessionDuration:       pulumi.Int(1),\n\t\t\tShuffleAtEventStart:   pulumi.Bool(true),\n\t\t\tSuspended:             pulumi.Bool(true),\n\t\t\tTotalActiveUsers:      pulumi.Int(200),\n\t\t\tTurnstileAction:       pulumi.String(\"log\"),\n\t\t\tTurnstileMode:         pulumi.String(\"off\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WaitingRoomEvent;\nimport com.pulumi.cloudflare.WaitingRoomEventArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWaitingRoomEvent = new WaitingRoomEvent(\"exampleWaitingRoomEvent\", WaitingRoomEventArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .waitingRoomId(\"699d98642c564d2e855e9661899b7252\")\n            .eventEndTime(\"2021-09-28T17:00:00.000Z\")\n            .eventStartTime(\"2021-09-28T15:30:00.000Z\")\n            .name(\"production_webinar_event\")\n            .customPageHtml(\"{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}\")\n            .description(\"Production event - DO NOT MODIFY\")\n            .disableSessionRenewal(true)\n            .newUsersPerMinute(200)\n            .prequeueStartTime(\"2021-09-28T15:00:00.000Z\")\n            .queueingMethod(\"random\")\n            .sessionDuration(1)\n            .shuffleAtEventStart(true)\n            .suspended(true)\n            .totalActiveUsers(200)\n            .turnstileAction(\"log\")\n            .turnstileMode(\"off\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWaitingRoomEvent:\n    type: cloudflare:WaitingRoomEvent\n    name: example_waiting_room_event\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      waitingRoomId: 699d98642c564d2e855e9661899b7252\n      eventEndTime: 2021-09-28T17:00:00.000Z\n      eventStartTime: 2021-09-28T15:30:00.000Z\n      name: production_webinar_event\n      customPageHtml: '{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}'\n      description: Production event - DO NOT MODIFY\n      disableSessionRenewal: true\n      newUsersPerMinute: 200\n      prequeueStartTime: 2021-09-28T15:00:00.000Z\n      queueingMethod: random\n      sessionDuration: 1\n      shuffleAtEventStart: true\n      suspended: true\n      totalActiveUsers: 200\n      turnstileAction: log\n      turnstileMode: off\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/waitingRoomEvent:WaitingRoomEvent example '\u003czone_id\u003e/\u003cwaiting_room_id\u003e/\u003cevent_id\u003e'\n```\n\n",
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "customPageHtml": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`customPageHtml`\" pulumi-lang-dotnet=\"`CustomPageHtml`\" pulumi-lang-go=\"`customPageHtml`\" pulumi-lang-python=\"`custom_page_html`\" pulumi-lang-yaml=\"`customPageHtml`\" pulumi-lang-java=\"`customPageHtml`\"\u003e`customPageHtml`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A note that you can use to add more details about the event.\n"
                },
                "disableSessionRenewal": {
                    "type": "boolean",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`disableSessionRenewal`\" pulumi-lang-dotnet=\"`DisableSessionRenewal`\" pulumi-lang-go=\"`disableSessionRenewal`\" pulumi-lang-python=\"`disable_session_renewal`\" pulumi-lang-yaml=\"`disableSessionRenewal`\" pulumi-lang-java=\"`disableSessionRenewal`\"\u003e`disableSessionRenewal`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "eventEndTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks the end of the event.\n"
                },
                "eventStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "newUsersPerMinute": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property is also set.\n"
                },
                "prequeueStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e.\n"
                },
                "queueingMethod": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "sessionDuration": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`sessionDuration`\" pulumi-lang-dotnet=\"`SessionDuration`\" pulumi-lang-go=\"`sessionDuration`\" pulumi-lang-python=\"`session_duration`\" pulumi-lang-yaml=\"`sessionDuration`\" pulumi-lang-java=\"`sessionDuration`\"\u003e`sessionDuration`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "shuffleAtEventStart": {
                    "type": "boolean",
                    "description": "If enabled, users in the prequeue will be shuffled randomly at the \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e. Requires that \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Suspends or allows an event. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the event is ignored and traffic will be handled based on the waiting room configuration.\n"
                },
                "totalActiveUsers": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property is also set.\n"
                },
                "turnstileAction": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileAction`\" pulumi-lang-dotnet=\"`TurnstileAction`\" pulumi-lang-go=\"`turnstileAction`\" pulumi-lang-python=\"`turnstile_action`\" pulumi-lang-yaml=\"`turnstileAction`\" pulumi-lang-java=\"`turnstileAction`\"\u003e`turnstileAction`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e.\n"
                },
                "turnstileMode": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileMode`\" pulumi-lang-dotnet=\"`TurnstileMode`\" pulumi-lang-go=\"`turnstileMode`\" pulumi-lang-python=\"`turnstile_mode`\" pulumi-lang-yaml=\"`turnstileMode`\" pulumi-lang-java=\"`turnstileMode`\"\u003e`turnstileMode`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"off\", \"invisible\", \"visible*non*interactive\", \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e.\n"
                },
                "waitingRoomId": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "createdOn",
                "description",
                "eventEndTime",
                "eventStartTime",
                "modifiedOn",
                "name",
                "shuffleAtEventStart",
                "suspended",
                "waitingRoomId"
            ],
            "inputProperties": {
                "customPageHtml": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`customPageHtml`\" pulumi-lang-dotnet=\"`CustomPageHtml`\" pulumi-lang-go=\"`customPageHtml`\" pulumi-lang-python=\"`custom_page_html`\" pulumi-lang-yaml=\"`customPageHtml`\" pulumi-lang-java=\"`customPageHtml`\"\u003e`customPageHtml`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A note that you can use to add more details about the event.\n"
                },
                "disableSessionRenewal": {
                    "type": "boolean",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`disableSessionRenewal`\" pulumi-lang-dotnet=\"`DisableSessionRenewal`\" pulumi-lang-go=\"`disableSessionRenewal`\" pulumi-lang-python=\"`disable_session_renewal`\" pulumi-lang-yaml=\"`disableSessionRenewal`\" pulumi-lang-java=\"`disableSessionRenewal`\"\u003e`disableSessionRenewal`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "eventEndTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks the end of the event.\n"
                },
                "eventStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                },
                "newUsersPerMinute": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property is also set.\n"
                },
                "prequeueStartTime": {
                    "type": "string",
                    "description": "An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e.\n"
                },
                "queueingMethod": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "sessionDuration": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`sessionDuration`\" pulumi-lang-dotnet=\"`SessionDuration`\" pulumi-lang-go=\"`sessionDuration`\" pulumi-lang-python=\"`session_duration`\" pulumi-lang-yaml=\"`sessionDuration`\" pulumi-lang-java=\"`sessionDuration`\"\u003e`sessionDuration`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                },
                "shuffleAtEventStart": {
                    "type": "boolean",
                    "description": "If enabled, users in the prequeue will be shuffled randomly at the \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e. Requires that \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.\n"
                },
                "suspended": {
                    "type": "boolean",
                    "description": "Suspends or allows an event. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the event is ignored and traffic will be handled based on the waiting room configuration.\n"
                },
                "totalActiveUsers": {
                    "type": "integer",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property is also set.\n"
                },
                "turnstileAction": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileAction`\" pulumi-lang-dotnet=\"`TurnstileAction`\" pulumi-lang-go=\"`turnstileAction`\" pulumi-lang-python=\"`turnstile_action`\" pulumi-lang-yaml=\"`turnstileAction`\" pulumi-lang-java=\"`turnstileAction`\"\u003e`turnstileAction`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e.\n"
                },
                "turnstileMode": {
                    "type": "string",
                    "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileMode`\" pulumi-lang-dotnet=\"`TurnstileMode`\" pulumi-lang-go=\"`turnstileMode`\" pulumi-lang-python=\"`turnstile_mode`\" pulumi-lang-yaml=\"`turnstileMode`\" pulumi-lang-java=\"`turnstileMode`\"\u003e`turnstileMode`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"off\", \"invisible\", \"visible*non*interactive\", \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e.\n"
                },
                "waitingRoomId": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "eventEndTime",
                "eventStartTime",
                "name",
                "waitingRoomId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WaitingRoomEvent resources.\n",
                "properties": {
                    "createdOn": {
                        "type": "string"
                    },
                    "customPageHtml": {
                        "type": "string",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`customPageHtml`\" pulumi-lang-dotnet=\"`CustomPageHtml`\" pulumi-lang-go=\"`customPageHtml`\" pulumi-lang-python=\"`custom_page_html`\" pulumi-lang-yaml=\"`customPageHtml`\" pulumi-lang-java=\"`customPageHtml`\"\u003e`customPageHtml`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A note that you can use to add more details about the event.\n"
                    },
                    "disableSessionRenewal": {
                        "type": "boolean",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`disableSessionRenewal`\" pulumi-lang-dotnet=\"`DisableSessionRenewal`\" pulumi-lang-go=\"`disableSessionRenewal`\" pulumi-lang-python=\"`disable_session_renewal`\" pulumi-lang-yaml=\"`disableSessionRenewal`\" pulumi-lang-java=\"`disableSessionRenewal`\"\u003e`disableSessionRenewal`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                    },
                    "eventEndTime": {
                        "type": "string",
                        "description": "An ISO 8601 timestamp that marks the end of the event.\n"
                    },
                    "eventStartTime": {
                        "type": "string",
                        "description": "An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.\n"
                    },
                    "newUsersPerMinute": {
                        "type": "integer",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property is also set.\n"
                    },
                    "prequeueStartTime": {
                        "type": "string",
                        "description": "An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e.\n"
                    },
                    "queueingMethod": {
                        "type": "string",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                    },
                    "sessionDuration": {
                        "type": "integer",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`sessionDuration`\" pulumi-lang-dotnet=\"`SessionDuration`\" pulumi-lang-go=\"`sessionDuration`\" pulumi-lang-python=\"`session_duration`\" pulumi-lang-yaml=\"`sessionDuration`\" pulumi-lang-java=\"`sessionDuration`\"\u003e`sessionDuration`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n"
                    },
                    "shuffleAtEventStart": {
                        "type": "boolean",
                        "description": "If enabled, users in the prequeue will be shuffled randomly at the \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e. Requires that \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.\n"
                    },
                    "suspended": {
                        "type": "boolean",
                        "description": "Suspends or allows an event. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the event is ignored and traffic will be handled based on the waiting room configuration.\n"
                    },
                    "totalActiveUsers": {
                        "type": "integer",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property is also set.\n"
                    },
                    "turnstileAction": {
                        "type": "string",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileAction`\" pulumi-lang-dotnet=\"`TurnstileAction`\" pulumi-lang-go=\"`turnstileAction`\" pulumi-lang-python=\"`turnstile_action`\" pulumi-lang-yaml=\"`turnstileAction`\" pulumi-lang-java=\"`turnstileAction`\"\u003e`turnstileAction`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e.\n"
                    },
                    "turnstileMode": {
                        "type": "string",
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileMode`\" pulumi-lang-dotnet=\"`TurnstileMode`\" pulumi-lang-go=\"`turnstileMode`\" pulumi-lang-python=\"`turnstile_mode`\" pulumi-lang-yaml=\"`turnstileMode`\" pulumi-lang-java=\"`turnstileMode`\"\u003e`turnstileMode`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"off\", \"invisible\", \"visible*non*interactive\", \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e.\n"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/waitingRoomRules:WaitingRoomRules": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomRules = new cloudflare.WaitingRoomRules(\"example_waiting_room_rules\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    waitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n    rules: [{\n        action: \"bypass_waiting_room\",\n        expression: \"ip.src in {10.20.30.40}\",\n        description: \"allow all traffic from 10.20.30.40\",\n        enabled: true,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_rules = cloudflare.WaitingRoomRules(\"example_waiting_room_rules\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    waiting_room_id=\"699d98642c564d2e855e9661899b7252\",\n    rules=[{\n        \"action\": \"bypass_waiting_room\",\n        \"expression\": \"ip.src in {10.20.30.40}\",\n        \"description\": \"allow all traffic from 10.20.30.40\",\n        \"enabled\": True,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomRules = new Cloudflare.Index.WaitingRoomRules(\"example_waiting_room_rules\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WaitingRoomId = \"699d98642c564d2e855e9661899b7252\",\n        Rules = new[]\n        {\n            new Cloudflare.Inputs.WaitingRoomRulesRuleArgs\n            {\n                Action = \"bypass_waiting_room\",\n                Expression = \"ip.src in {10.20.30.40}\",\n                Description = \"allow all traffic from 10.20.30.40\",\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWaitingRoomRules(ctx, \"example_waiting_room_rules\", \u0026cloudflare.WaitingRoomRulesArgs{\n\t\t\tZoneId:        pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWaitingRoomId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tRules: cloudflare.WaitingRoomRulesRuleArray{\n\t\t\t\t\u0026cloudflare.WaitingRoomRulesRuleArgs{\n\t\t\t\t\tAction:      pulumi.String(\"bypass_waiting_room\"),\n\t\t\t\t\tExpression:  pulumi.String(\"ip.src in {10.20.30.40}\"),\n\t\t\t\t\tDescription: pulumi.String(\"allow all traffic from 10.20.30.40\"),\n\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WaitingRoomRules;\nimport com.pulumi.cloudflare.WaitingRoomRulesArgs;\nimport com.pulumi.cloudflare.inputs.WaitingRoomRulesRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWaitingRoomRules = new WaitingRoomRules(\"exampleWaitingRoomRules\", WaitingRoomRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .waitingRoomId(\"699d98642c564d2e855e9661899b7252\")\n            .rules(WaitingRoomRulesRuleArgs.builder()\n                .action(\"bypass_waiting_room\")\n                .expression(\"ip.src in {10.20.30.40}\")\n                .description(\"allow all traffic from 10.20.30.40\")\n                .enabled(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWaitingRoomRules:\n    type: cloudflare:WaitingRoomRules\n    name: example_waiting_room_rules\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      waitingRoomId: 699d98642c564d2e855e9661899b7252\n      rules:\n        - action: bypass_waiting_room\n          expression: ip.src in {10.20.30.40}\n          description: allow all traffic from 10.20.30.40\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/waitingRoomRules:WaitingRoomRules example '\u003czone_id\u003e/\u003cwaiting_room_id\u003e'\n```\n\n",
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WaitingRoomRulesRule:WaitingRoomRulesRule"
                    }
                },
                "waitingRoomId": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "rules",
                "waitingRoomId"
            ],
            "inputProperties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WaitingRoomRulesRule:WaitingRoomRulesRule"
                    }
                },
                "waitingRoomId": {
                    "type": "string"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "rules",
                "waitingRoomId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WaitingRoomRules resources.\n",
                "properties": {
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WaitingRoomRulesRule:WaitingRoomRulesRule"
                        }
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/waitingRoomSettings:WaitingRoomSettings": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomSettings = new cloudflare.WaitingRoomSettings(\"example_waiting_room_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    searchEngineCrawlerBypass: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_settings = cloudflare.WaitingRoomSettings(\"example_waiting_room_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    search_engine_crawler_bypass=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomSettings = new Cloudflare.Index.WaitingRoomSettings(\"example_waiting_room_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SearchEngineCrawlerBypass = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWaitingRoomSettings(ctx, \"example_waiting_room_settings\", \u0026cloudflare.WaitingRoomSettingsArgs{\n\t\t\tZoneId:                    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSearchEngineCrawlerBypass: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WaitingRoomSettings;\nimport com.pulumi.cloudflare.WaitingRoomSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWaitingRoomSettings = new WaitingRoomSettings(\"exampleWaitingRoomSettings\", WaitingRoomSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .searchEngineCrawlerBypass(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWaitingRoomSettings:\n    type: cloudflare:WaitingRoomSettings\n    name: example_waiting_room_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      searchEngineCrawlerBypass: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/waitingRoomSettings:WaitingRoomSettings example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "searchEngineCrawlerBypass": {
                    "type": "boolean",
                    "description": "Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone.\nVerified search engine crawlers will not be tracked or counted by the waiting room system,\nand will not appear in waiting room analytics.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "searchEngineCrawlerBypass",
                "zoneId"
            ],
            "inputProperties": {
                "searchEngineCrawlerBypass": {
                    "type": "boolean",
                    "description": "Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone.\nVerified search engine crawlers will not be tracked or counted by the waiting room system,\nand will not appear in waiting room analytics.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WaitingRoomSettings resources.\n",
                "properties": {
                    "searchEngineCrawlerBypass": {
                        "type": "boolean",
                        "description": "Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone.\nVerified search engine crawlers will not be tracked or counted by the waiting room system,\nand will not appear in waiting room analytics.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/web3Hostname:Web3Hostname": {
            "description": "Accepted Permissions\n\n- `Web3 Hostnames Read`\n- `Web3 Hostnames Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWeb3Hostname = new cloudflare.Web3Hostname(\"example_web3_hostname\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"gateway.example.com\",\n    target: \"ipfs\",\n    description: \"This is my IPFS gateway.\",\n    dnslink: \"/ipns/onboarding.ipfs.cloudflare.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web3_hostname = cloudflare.Web3Hostname(\"example_web3_hostname\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"gateway.example.com\",\n    target=\"ipfs\",\n    description=\"This is my IPFS gateway.\",\n    dnslink=\"/ipns/onboarding.ipfs.cloudflare.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWeb3Hostname = new Cloudflare.Index.Web3Hostname(\"example_web3_hostname\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"gateway.example.com\",\n        Target = \"ipfs\",\n        Description = \"This is my IPFS gateway.\",\n        Dnslink = \"/ipns/onboarding.ipfs.cloudflare.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWeb3Hostname(ctx, \"example_web3_hostname\", \u0026cloudflare.Web3HostnameArgs{\n\t\t\tZoneId:      pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:        pulumi.String(\"gateway.example.com\"),\n\t\t\tTarget:      pulumi.String(\"ipfs\"),\n\t\t\tDescription: pulumi.String(\"This is my IPFS gateway.\"),\n\t\t\tDnslink:     pulumi.String(\"/ipns/onboarding.ipfs.cloudflare.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Web3Hostname;\nimport com.pulumi.cloudflare.Web3HostnameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWeb3Hostname = new Web3Hostname(\"exampleWeb3Hostname\", Web3HostnameArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"gateway.example.com\")\n            .target(\"ipfs\")\n            .description(\"This is my IPFS gateway.\")\n            .dnslink(\"/ipns/onboarding.ipfs.cloudflare.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWeb3Hostname:\n    type: cloudflare:Web3Hostname\n    name: example_web3_hostname\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: gateway.example.com\n      target: ipfs\n      description: This is my IPFS gateway.\n      dnslink: /ipns/onboarding.ipfs.cloudflare.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/web3Hostname:Web3Hostname example '\u003czone_id\u003e/\u003cidentifier\u003e'\n```\n\n",
            "properties": {
                "createdOn": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Specify an optional description of the hostname.\n"
                },
                "dnslink": {
                    "type": "string",
                    "description": "Specify the DNSLink value used if the target is ipfs.\n"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the hostname that points to the target gateway via CNAME.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Specifies the status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"deleting\", \"error\".\n"
                },
                "target": {
                    "type": "string",
                    "description": "Specify the target gateway of the hostname.\nAvailable values: \"ethereum\", \"ipfs\", \"ipfs*universal*path\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Specify the identifier of the hostname.\n"
                }
            },
            "required": [
                "createdOn",
                "modifiedOn",
                "name",
                "status",
                "target"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "Specify an optional description of the hostname.\n"
                },
                "dnslink": {
                    "type": "string",
                    "description": "Specify the DNSLink value used if the target is ipfs.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the hostname that points to the target gateway via CNAME.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Specify the target gateway of the hostname.\nAvailable values: \"ethereum\", \"ipfs\", \"ipfs*universal*path\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Specify the identifier of the hostname.\n"
                }
            },
            "requiredInputs": [
                "name",
                "target"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Web3Hostname resources.\n",
                "properties": {
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "Specify an optional description of the hostname.\n"
                    },
                    "dnslink": {
                        "type": "string",
                        "description": "Specify the DNSLink value used if the target is ipfs.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the hostname that points to the target gateway via CNAME.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Specifies the status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"deleting\", \"error\".\n"
                    },
                    "target": {
                        "type": "string",
                        "description": "Specify the target gateway of the hostname.\nAvailable values: \"ethereum\", \"ipfs\", \"ipfs*universal*path\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Specify the identifier of the hostname.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/webAnalyticsRule:WebAnalyticsRule": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWebAnalyticsRule = new cloudflare.WebAnalyticsRule(\"example_web_analytics_rule\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    rulesetId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    host: \"example.com\",\n    inclusive: true,\n    isPaused: false,\n    paths: [\"*\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web_analytics_rule = cloudflare.WebAnalyticsRule(\"example_web_analytics_rule\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    ruleset_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    host=\"example.com\",\n    inclusive=True,\n    is_paused=False,\n    paths=[\"*\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWebAnalyticsRule = new Cloudflare.Index.WebAnalyticsRule(\"example_web_analytics_rule\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RulesetId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Host = \"example.com\",\n        Inclusive = true,\n        IsPaused = false,\n        Paths = new[]\n        {\n            \"*\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWebAnalyticsRule(ctx, \"example_web_analytics_rule\", \u0026cloudflare.WebAnalyticsRuleArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRulesetId: pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tHost:      pulumi.String(\"example.com\"),\n\t\t\tInclusive: pulumi.Bool(true),\n\t\t\tIsPaused:  pulumi.Bool(false),\n\t\t\tPaths: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WebAnalyticsRule;\nimport com.pulumi.cloudflare.WebAnalyticsRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWebAnalyticsRule = new WebAnalyticsRule(\"exampleWebAnalyticsRule\", WebAnalyticsRuleArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .rulesetId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .host(\"example.com\")\n            .inclusive(true)\n            .isPaused(false)\n            .paths(\"*\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWebAnalyticsRule:\n    type: cloudflare:WebAnalyticsRule\n    name: example_web_analytics_rule\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      rulesetId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      host: example.com\n      inclusive: true\n      isPaused: false\n      paths:\n        - '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "created": {
                    "type": "string"
                },
                "host": {
                    "type": "string"
                },
                "inclusive": {
                    "type": "boolean",
                    "description": "Whether the rule includes or excludes traffic from being measured.\n"
                },
                "isPaused": {
                    "type": "boolean",
                    "description": "Whether the rule is paused or not.\n"
                },
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "priority": {
                    "type": "number"
                },
                "rulesetId": {
                    "type": "string",
                    "description": "The Web Analytics ruleset identifier.\n"
                }
            },
            "required": [
                "created",
                "priority",
                "rulesetId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "host": {
                    "type": "string"
                },
                "inclusive": {
                    "type": "boolean",
                    "description": "Whether the rule includes or excludes traffic from being measured.\n"
                },
                "isPaused": {
                    "type": "boolean",
                    "description": "Whether the rule is paused or not.\n"
                },
                "paths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "rulesetId": {
                    "type": "string",
                    "description": "The Web Analytics ruleset identifier.\n"
                }
            },
            "requiredInputs": [
                "rulesetId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WebAnalyticsRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "created": {
                        "type": "string"
                    },
                    "host": {
                        "type": "string"
                    },
                    "inclusive": {
                        "type": "boolean",
                        "description": "Whether the rule includes or excludes traffic from being measured.\n"
                    },
                    "isPaused": {
                        "type": "boolean",
                        "description": "Whether the rule is paused or not.\n"
                    },
                    "paths": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "priority": {
                        "type": "number"
                    },
                    "rulesetId": {
                        "type": "string",
                        "description": "The Web Analytics ruleset identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/webAnalyticsSite:WebAnalyticsSite": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWebAnalyticsSite = new cloudflare.WebAnalyticsSite(\"example_web_analytics_site\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    autoInstall: true,\n    host: \"example.com\",\n    zoneTag: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web_analytics_site = cloudflare.WebAnalyticsSite(\"example_web_analytics_site\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    auto_install=True,\n    host=\"example.com\",\n    zone_tag=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWebAnalyticsSite = new Cloudflare.Index.WebAnalyticsSite(\"example_web_analytics_site\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AutoInstall = true,\n        Host = \"example.com\",\n        ZoneTag = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWebAnalyticsSite(ctx, \"example_web_analytics_site\", \u0026cloudflare.WebAnalyticsSiteArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAutoInstall: pulumi.Bool(true),\n\t\t\tHost:        pulumi.String(\"example.com\"),\n\t\t\tZoneTag:     pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WebAnalyticsSite;\nimport com.pulumi.cloudflare.WebAnalyticsSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWebAnalyticsSite = new WebAnalyticsSite(\"exampleWebAnalyticsSite\", WebAnalyticsSiteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .autoInstall(true)\n            .host(\"example.com\")\n            .zoneTag(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWebAnalyticsSite:\n    type: cloudflare:WebAnalyticsSite\n    name: example_web_analytics_site\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      autoInstall: true\n      host: example.com\n      zoneTag: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/webAnalyticsSite:WebAnalyticsSite example '\u003caccount_id\u003e/\u003csite_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "autoInstall": {
                    "type": "boolean",
                    "description": "If enabled, the JavaScript snippet is automatically injected for orange-clouded sites.\n"
                },
                "created": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enables or disables RUM. This option can be used only when\u003cspan pulumi-lang-nodejs=\" autoInstall \" pulumi-lang-dotnet=\" AutoInstall \" pulumi-lang-go=\" autoInstall \" pulumi-lang-python=\" auto_install \" pulumi-lang-yaml=\" autoInstall \" pulumi-lang-java=\" autoInstall \"\u003e autoInstall \u003c/span\u003eis set to true.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The hostname to use for gray-clouded sites.\n"
                },
                "lite": {
                    "type": "boolean",
                    "description": "If enabled, the JavaScript snippet will not be injected for visitors from the EU.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WebAnalyticsSiteRule:WebAnalyticsSiteRule"
                    },
                    "description": "A list of rules.\n"
                },
                "ruleset": {
                    "$ref": "#/types/cloudflare:index/WebAnalyticsSiteRuleset:WebAnalyticsSiteRuleset"
                },
                "siteTag": {
                    "type": "string",
                    "description": "The Web Analytics site identifier.\n"
                },
                "siteToken": {
                    "type": "string",
                    "description": "The Web Analytics site token.\n"
                },
                "snippet": {
                    "type": "string",
                    "description": "Encoded JavaScript snippet.\n"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "The zone identifier.\n"
                }
            },
            "required": [
                "created",
                "rules",
                "ruleset",
                "siteTag",
                "siteToken",
                "snippet"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "autoInstall": {
                    "type": "boolean",
                    "description": "If enabled, the JavaScript snippet is automatically injected for orange-clouded sites.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enables or disables RUM. This option can be used only when\u003cspan pulumi-lang-nodejs=\" autoInstall \" pulumi-lang-dotnet=\" AutoInstall \" pulumi-lang-go=\" autoInstall \" pulumi-lang-python=\" auto_install \" pulumi-lang-yaml=\" autoInstall \" pulumi-lang-java=\" autoInstall \"\u003e autoInstall \u003c/span\u003eis set to true.\n"
                },
                "host": {
                    "type": "string",
                    "description": "The hostname to use for gray-clouded sites.\n"
                },
                "lite": {
                    "type": "boolean",
                    "description": "If enabled, the JavaScript snippet will not be injected for visitors from the EU.\n"
                },
                "zoneTag": {
                    "type": "string",
                    "description": "The zone identifier.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WebAnalyticsSite resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "autoInstall": {
                        "type": "boolean",
                        "description": "If enabled, the JavaScript snippet is automatically injected for orange-clouded sites.\n"
                    },
                    "created": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Enables or disables RUM. This option can be used only when\u003cspan pulumi-lang-nodejs=\" autoInstall \" pulumi-lang-dotnet=\" AutoInstall \" pulumi-lang-go=\" autoInstall \" pulumi-lang-python=\" auto_install \" pulumi-lang-yaml=\" autoInstall \" pulumi-lang-java=\" autoInstall \"\u003e autoInstall \u003c/span\u003eis set to true.\n"
                    },
                    "host": {
                        "type": "string",
                        "description": "The hostname to use for gray-clouded sites.\n"
                    },
                    "lite": {
                        "type": "boolean",
                        "description": "If enabled, the JavaScript snippet will not be injected for visitors from the EU.\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WebAnalyticsSiteRule:WebAnalyticsSiteRule"
                        },
                        "description": "A list of rules.\n"
                    },
                    "ruleset": {
                        "$ref": "#/types/cloudflare:index/WebAnalyticsSiteRuleset:WebAnalyticsSiteRuleset"
                    },
                    "siteTag": {
                        "type": "string",
                        "description": "The Web Analytics site identifier.\n"
                    },
                    "siteToken": {
                        "type": "string",
                        "description": "The Web Analytics site token.\n"
                    },
                    "snippet": {
                        "type": "string",
                        "description": "Encoded JavaScript snippet.\n"
                    },
                    "zoneTag": {
                        "type": "string",
                        "description": "The zone identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/worker:Worker": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorker = new cloudflare.Worker(\"example_worker\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my-worker\",\n    logpush: true,\n    observability: {\n        enabled: true,\n        headSamplingRate: 1,\n        logs: {\n            destinations: [\"string\"],\n            enabled: true,\n            headSamplingRate: 1,\n            invocationLogs: true,\n            persist: true,\n        },\n        traces: {\n            destinations: [\"string\"],\n            enabled: true,\n            headSamplingRate: 1,\n            persist: true,\n        },\n    },\n    subdomain: {\n        enabled: true,\n        previewsEnabled: true,\n    },\n    tags: [\n        \"my-team\",\n        \"my-public-api\",\n    ],\n    tailConsumers: [{\n        name: \"my-tail-consumer\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_worker = cloudflare.Worker(\"example_worker\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my-worker\",\n    logpush=True,\n    observability={\n        \"enabled\": True,\n        \"head_sampling_rate\": 1,\n        \"logs\": {\n            \"destinations\": [\"string\"],\n            \"enabled\": True,\n            \"head_sampling_rate\": 1,\n            \"invocation_logs\": True,\n            \"persist\": True,\n        },\n        \"traces\": {\n            \"destinations\": [\"string\"],\n            \"enabled\": True,\n            \"head_sampling_rate\": 1,\n            \"persist\": True,\n        },\n    },\n    subdomain={\n        \"enabled\": True,\n        \"previews_enabled\": True,\n    },\n    tags=[\n        \"my-team\",\n        \"my-public-api\",\n    ],\n    tail_consumers=[{\n        \"name\": \"my-tail-consumer\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorker = new Cloudflare.Index.Worker(\"example_worker\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my-worker\",\n        Logpush = true,\n        Observability = new Cloudflare.Inputs.WorkerObservabilityArgs\n        {\n            Enabled = true,\n            HeadSamplingRate = 1,\n            Logs = new Cloudflare.Inputs.WorkerObservabilityLogsArgs\n            {\n                Destinations = new[]\n                {\n                    \"string\",\n                },\n                Enabled = true,\n                HeadSamplingRate = 1,\n                InvocationLogs = true,\n                Persist = true,\n            },\n            Traces = new Cloudflare.Inputs.WorkerObservabilityTracesArgs\n            {\n                Destinations = new[]\n                {\n                    \"string\",\n                },\n                Enabled = true,\n                HeadSamplingRate = 1,\n                Persist = true,\n            },\n        },\n        Subdomain = new Cloudflare.Inputs.WorkerSubdomainArgs\n        {\n            Enabled = true,\n            PreviewsEnabled = true,\n        },\n        Tags = new[]\n        {\n            \"my-team\",\n            \"my-public-api\",\n        },\n        TailConsumers = new[]\n        {\n            new Cloudflare.Inputs.WorkerTailConsumerArgs\n            {\n                Name = \"my-tail-consumer\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorker(ctx, \"example_worker\", \u0026cloudflare.WorkerArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my-worker\"),\n\t\t\tLogpush:   pulumi.Bool(true),\n\t\t\tObservability: \u0026cloudflare.WorkerObservabilityArgs{\n\t\t\t\tEnabled:          pulumi.Bool(true),\n\t\t\t\tHeadSamplingRate: pulumi.Float64(1),\n\t\t\t\tLogs: \u0026cloudflare.WorkerObservabilityLogsArgs{\n\t\t\t\t\tDestinations: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tEnabled:          pulumi.Bool(true),\n\t\t\t\t\tHeadSamplingRate: pulumi.Float64(1),\n\t\t\t\t\tInvocationLogs:   pulumi.Bool(true),\n\t\t\t\t\tPersist:          pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tTraces: \u0026cloudflare.WorkerObservabilityTracesArgs{\n\t\t\t\t\tDestinations: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tEnabled:          pulumi.Bool(true),\n\t\t\t\t\tHeadSamplingRate: pulumi.Float64(1),\n\t\t\t\t\tPersist:          pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSubdomain: \u0026cloudflare.WorkerSubdomainArgs{\n\t\t\t\tEnabled:         pulumi.Bool(true),\n\t\t\t\tPreviewsEnabled: pulumi.Bool(true),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"my-team\"),\n\t\t\t\tpulumi.String(\"my-public-api\"),\n\t\t\t},\n\t\t\tTailConsumers: cloudflare.WorkerTailConsumerArray{\n\t\t\t\t\u0026cloudflare.WorkerTailConsumerArgs{\n\t\t\t\t\tName: pulumi.String(\"my-tail-consumer\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Worker;\nimport com.pulumi.cloudflare.WorkerArgs;\nimport com.pulumi.cloudflare.inputs.WorkerObservabilityArgs;\nimport com.pulumi.cloudflare.inputs.WorkerObservabilityLogsArgs;\nimport com.pulumi.cloudflare.inputs.WorkerObservabilityTracesArgs;\nimport com.pulumi.cloudflare.inputs.WorkerSubdomainArgs;\nimport com.pulumi.cloudflare.inputs.WorkerTailConsumerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorker = new Worker(\"exampleWorker\", WorkerArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my-worker\")\n            .logpush(true)\n            .observability(WorkerObservabilityArgs.builder()\n                .enabled(true)\n                .headSamplingRate(1.0)\n                .logs(WorkerObservabilityLogsArgs.builder()\n                    .destinations(\"string\")\n                    .enabled(true)\n                    .headSamplingRate(1.0)\n                    .invocationLogs(true)\n                    .persist(true)\n                    .build())\n                .traces(WorkerObservabilityTracesArgs.builder()\n                    .destinations(\"string\")\n                    .enabled(true)\n                    .headSamplingRate(1.0)\n                    .persist(true)\n                    .build())\n                .build())\n            .subdomain(WorkerSubdomainArgs.builder()\n                .enabled(true)\n                .previewsEnabled(true)\n                .build())\n            .tags(            \n                \"my-team\",\n                \"my-public-api\")\n            .tailConsumers(WorkerTailConsumerArgs.builder()\n                .name(\"my-tail-consumer\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorker:\n    type: cloudflare:Worker\n    name: example_worker\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my-worker\n      logpush: true\n      observability:\n        enabled: true\n        headSamplingRate: 1\n        logs:\n          destinations:\n            - string\n          enabled: true\n          headSamplingRate: 1\n          invocationLogs: true\n          persist: true\n        traces:\n          destinations:\n            - string\n          enabled: true\n          headSamplingRate: 1\n          persist: true\n      subdomain:\n        enabled: true\n        previewsEnabled: true\n      tags:\n        - my-team\n        - my-public-api\n      tailConsumers:\n        - name: my-tail-consumer\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/worker:Worker example '\u003caccount_id\u003e/\u003cworker_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the Worker was created.\n"
                },
                "deployedOn": {
                    "type": "string",
                    "description": "When the Worker's most recent deployment was created. \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e if the Worker has never been deployed.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether logpush is enabled for the Worker.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Worker.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/WorkerObservability:WorkerObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "references": {
                    "$ref": "#/types/cloudflare:index/WorkerReferences:WorkerReferences",
                    "description": "Other resources that reference the Worker and depend on it existing.\n"
                },
                "subdomain": {
                    "$ref": "#/types/cloudflare:index/WorkerSubdomain:WorkerSubdomain",
                    "description": "Subdomain settings for the Worker.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags associated with the Worker.\n"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerTailConsumer:WorkerTailConsumer"
                    },
                    "description": "Other Workers that should consume logs from the Worker.\n"
                },
                "updatedOn": {
                    "type": "string",
                    "description": "When the Worker was most recently updated.\n"
                }
            },
            "required": [
                "createdOn",
                "deployedOn",
                "logpush",
                "name",
                "observability",
                "references",
                "subdomain",
                "tags",
                "tailConsumers",
                "updatedOn"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether logpush is enabled for the Worker.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Worker.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/WorkerObservability:WorkerObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "subdomain": {
                    "$ref": "#/types/cloudflare:index/WorkerSubdomain:WorkerSubdomain",
                    "description": "Subdomain settings for the Worker.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags associated with the Worker.\n"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerTailConsumer:WorkerTailConsumer"
                    },
                    "description": "Other Workers that should consume logs from the Worker.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Worker resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the Worker was created.\n"
                    },
                    "deployedOn": {
                        "type": "string",
                        "description": "When the Worker's most recent deployment was created. \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e if the Worker has never been deployed.\n"
                    },
                    "logpush": {
                        "type": "boolean",
                        "description": "Whether logpush is enabled for the Worker.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the Worker.\n"
                    },
                    "observability": {
                        "$ref": "#/types/cloudflare:index/WorkerObservability:WorkerObservability",
                        "description": "Observability settings for the Worker.\n"
                    },
                    "references": {
                        "$ref": "#/types/cloudflare:index/WorkerReferences:WorkerReferences",
                        "description": "Other resources that reference the Worker and depend on it existing.\n"
                    },
                    "subdomain": {
                        "$ref": "#/types/cloudflare:index/WorkerSubdomain:WorkerSubdomain",
                        "description": "Subdomain settings for the Worker.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Tags associated with the Worker.\n"
                    },
                    "tailConsumers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerTailConsumer:WorkerTailConsumer"
                        },
                        "description": "Other Workers that should consume logs from the Worker.\n"
                    },
                    "updatedOn": {
                        "type": "string",
                        "description": "When the Worker was most recently updated.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workerCronTrigger:WorkerCronTrigger": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCronTrigger = new cloudflare.WorkersCronTrigger(\"example_workers_cron_trigger\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n    body: [{\n        cron: \"*/30 * * * *\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_cron_trigger = cloudflare.WorkersCronTrigger(\"example_workers_cron_trigger\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\",\n    body=[{\n        \"cron\": \"*/30 * * * *\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCronTrigger = new Cloudflare.Index.WorkersCronTrigger(\"example_workers_cron_trigger\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n        Body = new[]\n        {\n            \n            {\n                { \"cron\", \"*/30 * * * *\" },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersCronTrigger(ctx, \"example_workers_cron_trigger\", \u0026cloudflare.WorkersCronTriggerArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName: pulumi.String(\"this-is_my_script-01\"),\n\t\t\tBody: []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"cron\": \"*/30 * * * *\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersCronTrigger;\nimport com.pulumi.cloudflare.WorkersCronTriggerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersCronTrigger = new WorkersCronTrigger(\"exampleWorkersCronTrigger\", WorkersCronTriggerArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .body(List.of(Map.of(\"cron\", \"*/30 * * * *\")))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersCronTrigger:\n    type: cloudflare:WorkersCronTrigger\n    name: example_workers_cron_trigger\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      scriptName: this-is_my_script-01\n      body:\n        - cron: '*/30 * * * *'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workerCronTrigger:WorkerCronTrigger example '\u003caccount_id\u003e/\u003cscript_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "schedules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerCronTriggerSchedule:WorkerCronTriggerSchedule"
                    }
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                }
            },
            "required": [
                "schedules",
                "scriptName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "schedules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerCronTriggerSchedule:WorkerCronTriggerSchedule"
                    }
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                }
            },
            "requiredInputs": [
                "schedules",
                "scriptName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkerCronTrigger resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "schedules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerCronTriggerSchedule:WorkerCronTriggerSchedule"
                        }
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workerCronTrigger:WorkerCronTrigger"
                }
            ],
            "deprecationMessage": "cloudflare.index/workercrontrigger.WorkerCronTrigger has been deprecated in favor of cloudflare.index/workerscrontrigger.WorkersCronTrigger"
        },
        "cloudflare:index/workerDomain:WorkerDomain": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCustomDomain = new cloudflare.WorkersCustomDomain(\"example_workers_custom_domain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"app.example.com\",\n    service: \"my-worker\",\n    environment: \"production\",\n    zoneId: \"593c9c94de529bbbfaac7c53ced0447d\",\n    zoneName: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_custom_domain = cloudflare.WorkersCustomDomain(\"example_workers_custom_domain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"app.example.com\",\n    service=\"my-worker\",\n    environment=\"production\",\n    zone_id=\"593c9c94de529bbbfaac7c53ced0447d\",\n    zone_name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCustomDomain = new Cloudflare.Index.WorkersCustomDomain(\"example_workers_custom_domain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"app.example.com\",\n        Service = \"my-worker\",\n        Environment = \"production\",\n        ZoneId = \"593c9c94de529bbbfaac7c53ced0447d\",\n        ZoneName = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersCustomDomain(ctx, \"example_workers_custom_domain\", \u0026cloudflare.WorkersCustomDomainArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostname:    pulumi.String(\"app.example.com\"),\n\t\t\tService:     pulumi.String(\"my-worker\"),\n\t\t\tEnvironment: pulumi.String(\"production\"),\n\t\t\tZoneId:      pulumi.String(\"593c9c94de529bbbfaac7c53ced0447d\"),\n\t\t\tZoneName:    pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersCustomDomain;\nimport com.pulumi.cloudflare.WorkersCustomDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersCustomDomain = new WorkersCustomDomain(\"exampleWorkersCustomDomain\", WorkersCustomDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"app.example.com\")\n            .service(\"my-worker\")\n            .environment(\"production\")\n            .zoneId(\"593c9c94de529bbbfaac7c53ced0447d\")\n            .zoneName(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersCustomDomain:\n    type: cloudflare:WorkersCustomDomain\n    name: example_workers_custom_domain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      hostname: app.example.com\n      service: my-worker\n      environment: production\n      zoneId: 593c9c94de529bbbfaac7c53ced0447d\n      zoneName: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workerDomain:WorkerDomain example '\u003caccount_id\u003e/\u003cdomain_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "certId": {
                    "type": "string",
                    "description": "ID of the TLS certificate issued for the domain.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Worker environment associated with the domain.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone containing the domain hostname.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone containing the domain hostname.\n"
                }
            },
            "required": [
                "certId",
                "environment",
                "hostname",
                "service",
                "zoneId",
                "zoneName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Worker environment associated with the domain.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone containing the domain hostname.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone containing the domain hostname.\n"
                }
            },
            "requiredInputs": [
                "hostname",
                "service"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkerDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "certId": {
                        "type": "string",
                        "description": "ID of the TLS certificate issued for the domain.\n"
                    },
                    "environment": {
                        "type": "string",
                        "description": "Worker environment associated with the domain.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "hostname": {
                        "type": "string",
                        "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                    },
                    "service": {
                        "type": "string",
                        "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "ID of the zone containing the domain hostname.\n"
                    },
                    "zoneName": {
                        "type": "string",
                        "description": "Name of the zone containing the domain hostname.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workerDomain:WorkerDomain"
                }
            ],
            "deprecationMessage": "cloudflare.index/workerdomain.WorkerDomain has been deprecated in favor of cloudflare.index/workerscustomdomain.WorkersCustomDomain"
        },
        "cloudflare:index/workerScript:WorkerScript": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n\u003e For more direct control over Workers resources, we recommend the beta \u003cspan pulumi-lang-nodejs=\"`cloudflare.Worker`\" pulumi-lang-dotnet=\"`cloudflare.Worker`\" pulumi-lang-go=\"`Worker`\" pulumi-lang-python=\"`Worker`\" pulumi-lang-yaml=\"`cloudflare.Worker`\" pulumi-lang-java=\"`cloudflare.Worker`\"\u003e`cloudflare.Worker`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cloudflare.WorkerVersion`\" pulumi-lang-dotnet=\"`cloudflare.WorkerVersion`\" pulumi-lang-go=\"`WorkerVersion`\" pulumi-lang-python=\"`WorkerVersion`\" pulumi-lang-yaml=\"`cloudflare.WorkerVersion`\" pulumi-lang-java=\"`cloudflare.WorkerVersion`\"\u003e`cloudflare.WorkerVersion`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`cloudflare.WorkersDeployment`\" pulumi-lang-dotnet=\"`cloudflare.WorkersDeployment`\" pulumi-lang-go=\"`WorkersDeployment`\" pulumi-lang-python=\"`WorkersDeployment`\" pulumi-lang-yaml=\"`cloudflare.WorkersDeployment`\" pulumi-lang-java=\"`cloudflare.WorkersDeployment`\"\u003e`cloudflare.WorkersDeployment`\u003c/span\u003e resources. See how to use them in the [developer documentation](https://developers.cloudflare.com/workers/platform/infrastructure-as-code/).\n\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workerScript:WorkerScript example '\u003caccount_id\u003e/\u003cscript_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptAnnotations:WorkerScriptAnnotations",
                    "description": "Annotations for the version created by this upload.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptAssets:WorkerScriptAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptBinding:WorkerScriptBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                },
                "bodyPart": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e event). Indicates a `service worker syntax` Worker.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e.\n"
                },
                "contentFile": {
                    "type": "string",
                    "description": "Path to a file containing the Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`content`\" pulumi-lang-dotnet=\"`Content`\" pulumi-lang-go=\"`content`\" pulumi-lang-python=\"`content`\" pulumi-lang-yaml=\"`content`\" pulumi-lang-java=\"`content`\"\u003e`content`\u003c/span\u003e. Must be paired with \u003cspan pulumi-lang-nodejs=\"`contentSha256`\" pulumi-lang-dotnet=\"`ContentSha256`\" pulumi-lang-go=\"`contentSha256`\" pulumi-lang-python=\"`content_sha256`\" pulumi-lang-yaml=\"`contentSha256`\" pulumi-lang-java=\"`contentSha256`\"\u003e`contentSha256`\u003c/span\u003e.\n"
                },
                "contentSha256": {
                    "type": "string",
                    "description": "SHA-256 hash of the Worker contents. Used to trigger updates when source code changes. Must be provided when \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e is specified.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "Content-Type of the Worker. Required if uploading a non-JavaScript Worker (e.g. \"text/x-python\").\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the script was created.\n"
                },
                "etag": {
                    "type": "string",
                    "description": "Hashed script content, can be used in a If-None-Match header when updating.\n"
                },
                "handlers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The names of handlers exported as part of the default export.\n"
                },
                "hasAssets": {
                    "type": "boolean",
                    "description": "Whether a Worker contains assets.\n"
                },
                "hasModules": {
                    "type": "boolean",
                    "description": "Whether a Worker contains modules.\n"
                },
                "keepAssets": {
                    "type": "boolean",
                    "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token.\n"
                },
                "keepBindings": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of binding types to keep from previous_upload.\n"
                },
                "lastDeployedFrom": {
                    "type": "string",
                    "description": "The client most recently used to deploy this Worker.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptLimits:WorkerScriptLimits",
                    "description": "Limits to apply for this Worker.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether Logpush is turned on for the Worker.\n"
                },
                "mainModule": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler). Indicates a `module syntax` Worker.\n"
                },
                "migrationTag": {
                    "type": "string",
                    "description": "The tag of the Durable Object migration that was most recently applied for this Worker.\n"
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptMigrations:WorkerScriptMigrations",
                    "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the script was last modified.\n"
                },
                "namedHandlers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptNamedHandler:WorkerScriptNamedHandler"
                    },
                    "description": "Named exports, such as Durable Object class implementations and named entrypoints.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptObservability:WorkerScriptObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptPlacement:WorkerScriptPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                },
                "placementMode": {
                    "type": "string",
                    "description": "Available values: \"smart\", \"targeted\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "placementStatus": {
                    "type": "string",
                    "description": "Available values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                },
                "startupTimeMs": {
                    "type": "integer"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptTailConsumer:WorkerScriptTailConsumer"
                    },
                    "description": "List of Workers that will consume logs from the attached Worker.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                }
            },
            "required": [
                "annotations",
                "bindings",
                "compatibilityDate",
                "compatibilityFlags",
                "createdOn",
                "etag",
                "handlers",
                "hasAssets",
                "hasModules",
                "lastDeployedFrom",
                "logpush",
                "migrationTag",
                "modifiedOn",
                "namedHandlers",
                "placement",
                "placementMode",
                "placementStatus",
                "scriptName",
                "startupTimeMs",
                "tailConsumers",
                "usageModel"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptAnnotations:WorkerScriptAnnotations",
                    "description": "Annotations for the version created by this upload.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptAssets:WorkerScriptAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptBinding:WorkerScriptBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                },
                "bodyPart": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e event). Indicates a `service worker syntax` Worker.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e.\n"
                },
                "contentFile": {
                    "type": "string",
                    "description": "Path to a file containing the Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`content`\" pulumi-lang-dotnet=\"`Content`\" pulumi-lang-go=\"`content`\" pulumi-lang-python=\"`content`\" pulumi-lang-yaml=\"`content`\" pulumi-lang-java=\"`content`\"\u003e`content`\u003c/span\u003e. Must be paired with \u003cspan pulumi-lang-nodejs=\"`contentSha256`\" pulumi-lang-dotnet=\"`ContentSha256`\" pulumi-lang-go=\"`contentSha256`\" pulumi-lang-python=\"`content_sha256`\" pulumi-lang-yaml=\"`contentSha256`\" pulumi-lang-java=\"`contentSha256`\"\u003e`contentSha256`\u003c/span\u003e.\n"
                },
                "contentSha256": {
                    "type": "string",
                    "description": "SHA-256 hash of the Worker contents. Used to trigger updates when source code changes. Must be provided when \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e is specified.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "Content-Type of the Worker. Required if uploading a non-JavaScript Worker (e.g. \"text/x-python\").\n"
                },
                "keepAssets": {
                    "type": "boolean",
                    "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token.\n"
                },
                "keepBindings": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of binding types to keep from previous_upload.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptLimits:WorkerScriptLimits",
                    "description": "Limits to apply for this Worker.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether Logpush is turned on for the Worker.\n"
                },
                "mainModule": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler). Indicates a `module syntax` Worker.\n"
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptMigrations:WorkerScriptMigrations",
                    "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptObservability:WorkerScriptObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/WorkerScriptPlacement:WorkerScriptPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptTailConsumer:WorkerScriptTailConsumer"
                    },
                    "description": "List of Workers that will consume logs from the attached Worker.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                }
            },
            "requiredInputs": [
                "scriptName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkerScript resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "annotations": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptAnnotations:WorkerScriptAnnotations",
                        "description": "Annotations for the version created by this upload.\n"
                    },
                    "assets": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptAssets:WorkerScriptAssets",
                        "description": "Configuration for assets within a Worker.\n"
                    },
                    "bindings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerScriptBinding:WorkerScriptBinding"
                        },
                        "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                    },
                    "bodyPart": {
                        "type": "string",
                        "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e event). Indicates a `service worker syntax` Worker.\n"
                    },
                    "compatibilityDate": {
                        "type": "string",
                        "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                    },
                    "compatibilityFlags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                    },
                    "content": {
                        "type": "string",
                        "description": "Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e.\n"
                    },
                    "contentFile": {
                        "type": "string",
                        "description": "Path to a file containing the Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`content`\" pulumi-lang-dotnet=\"`Content`\" pulumi-lang-go=\"`content`\" pulumi-lang-python=\"`content`\" pulumi-lang-yaml=\"`content`\" pulumi-lang-java=\"`content`\"\u003e`content`\u003c/span\u003e. Must be paired with \u003cspan pulumi-lang-nodejs=\"`contentSha256`\" pulumi-lang-dotnet=\"`ContentSha256`\" pulumi-lang-go=\"`contentSha256`\" pulumi-lang-python=\"`content_sha256`\" pulumi-lang-yaml=\"`contentSha256`\" pulumi-lang-java=\"`contentSha256`\"\u003e`contentSha256`\u003c/span\u003e.\n"
                    },
                    "contentSha256": {
                        "type": "string",
                        "description": "SHA-256 hash of the Worker contents. Used to trigger updates when source code changes. Must be provided when \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e is specified.\n"
                    },
                    "contentType": {
                        "type": "string",
                        "description": "Content-Type of the Worker. Required if uploading a non-JavaScript Worker (e.g. \"text/x-python\").\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the script was created.\n"
                    },
                    "etag": {
                        "type": "string",
                        "description": "Hashed script content, can be used in a If-None-Match header when updating.\n"
                    },
                    "handlers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The names of handlers exported as part of the default export.\n"
                    },
                    "hasAssets": {
                        "type": "boolean",
                        "description": "Whether a Worker contains assets.\n"
                    },
                    "hasModules": {
                        "type": "boolean",
                        "description": "Whether a Worker contains modules.\n"
                    },
                    "keepAssets": {
                        "type": "boolean",
                        "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token.\n"
                    },
                    "keepBindings": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of binding types to keep from previous_upload.\n"
                    },
                    "lastDeployedFrom": {
                        "type": "string",
                        "description": "The client most recently used to deploy this Worker.\n"
                    },
                    "limits": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptLimits:WorkerScriptLimits",
                        "description": "Limits to apply for this Worker.\n"
                    },
                    "logpush": {
                        "type": "boolean",
                        "description": "Whether Logpush is turned on for the Worker.\n"
                    },
                    "mainModule": {
                        "type": "string",
                        "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler). Indicates a `module syntax` Worker.\n"
                    },
                    "migrationTag": {
                        "type": "string",
                        "description": "The tag of the Durable Object migration that was most recently applied for this Worker.\n"
                    },
                    "migrations": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptMigrations:WorkerScriptMigrations",
                        "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the script was last modified.\n"
                    },
                    "namedHandlers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerScriptNamedHandler:WorkerScriptNamedHandler"
                        },
                        "description": "Named exports, such as Durable Object class implementations and named entrypoints.\n"
                    },
                    "observability": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptObservability:WorkerScriptObservability",
                        "description": "Observability settings for the Worker.\n"
                    },
                    "placement": {
                        "$ref": "#/types/cloudflare:index/WorkerScriptPlacement:WorkerScriptPlacement",
                        "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                    },
                    "placementMode": {
                        "type": "string",
                        "description": "Available values: \"smart\", \"targeted\".\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "placementStatus": {
                        "type": "string",
                        "description": "Available values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    },
                    "startupTimeMs": {
                        "type": "integer"
                    },
                    "tailConsumers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerScriptTailConsumer:WorkerScriptTailConsumer"
                        },
                        "description": "List of Workers that will consume logs from the attached Worker.\n"
                    },
                    "usageModel": {
                        "type": "string",
                        "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workerScript:WorkerScript"
                }
            ],
            "deprecationMessage": "cloudflare.index/workerscript.WorkerScript has been deprecated in favor of cloudflare.index/workersscript.WorkersScript"
        },
        "cloudflare:index/workerVersion:WorkerVersion": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkerVersion = new cloudflare.WorkerVersion(\"example_worker_version\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    workerId: \"worker_id\",\n    annotations: {\n        workersMessage: \"Fixed bug.\",\n        workersTag: \"v1.0.1\",\n    },\n    assets: {\n        config: {\n            htmlHandling: \"auto-trailing-slash\",\n            notFoundHandling: \"404-page\",\n            runWorkerFirst: [],\n        },\n        jwt: \"jwt\",\n    },\n    bindings: [{\n        name: \"MY_ENV_VAR\",\n        text: \"my_data\",\n        type: \"plain_text\",\n    }],\n    compatibilityDate: \"2021-01-01\",\n    compatibilityFlags: [\"nodejs_compat\"],\n    containers: [{\n        className: \"MyDurableObject\",\n    }],\n    limits: {\n        cpuMs: 50,\n        subrequests: 1000,\n    },\n    mainModule: \"index.js\",\n    migrations: {\n        deletedClasses: [\"string\"],\n        newClasses: [\"string\"],\n        newSqliteClasses: [\"string\"],\n        newTag: \"v2\",\n        oldTag: \"v1\",\n        renamedClasses: [{\n            from: \"from\",\n            to: \"to\",\n        }],\n        transferredClasses: [{\n            from: \"from\",\n            fromScript: \"from_script\",\n            to: \"to\",\n        }],\n    },\n    modules: [{\n        contentFile: \"dist/index.js\",\n        contentType: \"application/javascript+module\",\n        name: \"index.js\",\n    }],\n    placement: {\n        mode: \"smart\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_worker_version = cloudflare.WorkerVersion(\"example_worker_version\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    worker_id=\"worker_id\",\n    annotations={\n        \"workers_message\": \"Fixed bug.\",\n        \"workers_tag\": \"v1.0.1\",\n    },\n    assets={\n        \"config\": {\n            \"html_handling\": \"auto-trailing-slash\",\n            \"not_found_handling\": \"404-page\",\n            \"run_worker_first\": [],\n        },\n        \"jwt\": \"jwt\",\n    },\n    bindings=[{\n        \"name\": \"MY_ENV_VAR\",\n        \"text\": \"my_data\",\n        \"type\": \"plain_text\",\n    }],\n    compatibility_date=\"2021-01-01\",\n    compatibility_flags=[\"nodejs_compat\"],\n    containers=[{\n        \"class_name\": \"MyDurableObject\",\n    }],\n    limits={\n        \"cpu_ms\": 50,\n        \"subrequests\": 1000,\n    },\n    main_module=\"index.js\",\n    migrations={\n        \"deleted_classes\": [\"string\"],\n        \"new_classes\": [\"string\"],\n        \"new_sqlite_classes\": [\"string\"],\n        \"new_tag\": \"v2\",\n        \"old_tag\": \"v1\",\n        \"renamed_classes\": [{\n            \"from_\": \"from\",\n            \"to\": \"to\",\n        }],\n        \"transferred_classes\": [{\n            \"from_\": \"from\",\n            \"from_script\": \"from_script\",\n            \"to\": \"to\",\n        }],\n    },\n    modules=[{\n        \"content_file\": \"dist/index.js\",\n        \"content_type\": \"application/javascript+module\",\n        \"name\": \"index.js\",\n    }],\n    placement={\n        \"mode\": \"smart\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkerVersion = new Cloudflare.Index.WorkerVersion(\"example_worker_version\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WorkerId = \"worker_id\",\n        Annotations = new Cloudflare.Inputs.WorkerVersionAnnotationsArgs\n        {\n            WorkersMessage = \"Fixed bug.\",\n            WorkersTag = \"v1.0.1\",\n        },\n        Assets = new Cloudflare.Inputs.WorkerVersionAssetsArgs\n        {\n            Config = new Cloudflare.Inputs.WorkerVersionAssetsConfigArgs\n            {\n                HtmlHandling = \"auto-trailing-slash\",\n                NotFoundHandling = \"404-page\",\n                RunWorkerFirst = new() { },\n            },\n            Jwt = \"jwt\",\n        },\n        Bindings = new[]\n        {\n            new Cloudflare.Inputs.WorkerVersionBindingArgs\n            {\n                Name = \"MY_ENV_VAR\",\n                Text = \"my_data\",\n                Type = \"plain_text\",\n            },\n        },\n        CompatibilityDate = \"2021-01-01\",\n        CompatibilityFlags = new[]\n        {\n            \"nodejs_compat\",\n        },\n        Containers = new[]\n        {\n            new Cloudflare.Inputs.WorkerVersionContainerArgs\n            {\n                ClassName = \"MyDurableObject\",\n            },\n        },\n        Limits = new Cloudflare.Inputs.WorkerVersionLimitsArgs\n        {\n            CpuMs = 50,\n            Subrequests = 1000,\n        },\n        MainModule = \"index.js\",\n        Migrations = new Cloudflare.Inputs.WorkerVersionMigrationsArgs\n        {\n            DeletedClasses = new[]\n            {\n                \"string\",\n            },\n            NewClasses = new[]\n            {\n                \"string\",\n            },\n            NewSqliteClasses = new[]\n            {\n                \"string\",\n            },\n            NewTag = \"v2\",\n            OldTag = \"v1\",\n            RenamedClasses = new[]\n            {\n                new Cloudflare.Inputs.WorkerVersionMigrationsRenamedClassArgs\n                {\n                    From = \"from\",\n                    To = \"to\",\n                },\n            },\n            TransferredClasses = new[]\n            {\n                new Cloudflare.Inputs.WorkerVersionMigrationsTransferredClassArgs\n                {\n                    From = \"from\",\n                    FromScript = \"from_script\",\n                    To = \"to\",\n                },\n            },\n        },\n        Modules = new[]\n        {\n            new Cloudflare.Inputs.WorkerVersionModuleArgs\n            {\n                ContentFile = \"dist/index.js\",\n                ContentType = \"application/javascript+module\",\n                Name = \"index.js\",\n            },\n        },\n        Placement = new Cloudflare.Inputs.WorkerVersionPlacementArgs\n        {\n            Mode = \"smart\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkerVersion(ctx, \"example_worker_version\", \u0026cloudflare.WorkerVersionArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWorkerId:  pulumi.String(\"worker_id\"),\n\t\t\tAnnotations: \u0026cloudflare.WorkerVersionAnnotationsArgs{\n\t\t\t\tWorkersMessage: pulumi.String(\"Fixed bug.\"),\n\t\t\t\tWorkersTag:     pulumi.String(\"v1.0.1\"),\n\t\t\t},\n\t\t\tAssets: \u0026cloudflare.WorkerVersionAssetsArgs{\n\t\t\t\tConfig: \u0026cloudflare.WorkerVersionAssetsConfigArgs{\n\t\t\t\t\tHtmlHandling:     pulumi.String(\"auto-trailing-slash\"),\n\t\t\t\t\tNotFoundHandling: pulumi.String(\"404-page\"),\n\t\t\t\t\tRunWorkerFirst:   pulumi.Any{},\n\t\t\t\t},\n\t\t\t\tJwt: pulumi.String(\"jwt\"),\n\t\t\t},\n\t\t\tBindings: cloudflare.WorkerVersionBindingArray{\n\t\t\t\t\u0026cloudflare.WorkerVersionBindingArgs{\n\t\t\t\t\tName: pulumi.String(\"MY_ENV_VAR\"),\n\t\t\t\t\tText: pulumi.String(\"my_data\"),\n\t\t\t\t\tType: pulumi.String(\"plain_text\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCompatibilityDate: pulumi.String(\"2021-01-01\"),\n\t\t\tCompatibilityFlags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"nodejs_compat\"),\n\t\t\t},\n\t\t\tContainers: cloudflare.WorkerVersionContainerArray{\n\t\t\t\t\u0026cloudflare.WorkerVersionContainerArgs{\n\t\t\t\t\tClassName: pulumi.String(\"MyDurableObject\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLimits: \u0026cloudflare.WorkerVersionLimitsArgs{\n\t\t\t\tCpuMs:       pulumi.Int(50),\n\t\t\t\tSubrequests: pulumi.Int(1000),\n\t\t\t},\n\t\t\tMainModule: pulumi.String(\"index.js\"),\n\t\t\tMigrations: \u0026cloudflare.WorkerVersionMigrationsArgs{\n\t\t\t\tDeletedClasses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tNewClasses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tNewSqliteClasses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t\tNewTag: pulumi.String(\"v2\"),\n\t\t\t\tOldTag: pulumi.String(\"v1\"),\n\t\t\t\tRenamedClasses: cloudflare.WorkerVersionMigrationsRenamedClassArray{\n\t\t\t\t\t\u0026cloudflare.WorkerVersionMigrationsRenamedClassArgs{\n\t\t\t\t\t\tFrom: pulumi.String(\"from\"),\n\t\t\t\t\t\tTo:   pulumi.String(\"to\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tTransferredClasses: cloudflare.WorkerVersionMigrationsTransferredClassArray{\n\t\t\t\t\t\u0026cloudflare.WorkerVersionMigrationsTransferredClassArgs{\n\t\t\t\t\t\tFrom:       pulumi.String(\"from\"),\n\t\t\t\t\t\tFromScript: pulumi.String(\"from_script\"),\n\t\t\t\t\t\tTo:         pulumi.String(\"to\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tModules: cloudflare.WorkerVersionModuleArray{\n\t\t\t\t\u0026cloudflare.WorkerVersionModuleArgs{\n\t\t\t\t\tContentFile: pulumi.String(\"dist/index.js\"),\n\t\t\t\t\tContentType: pulumi.String(\"application/javascript+module\"),\n\t\t\t\t\tName:        pulumi.String(\"index.js\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPlacement: \u0026cloudflare.WorkerVersionPlacementArgs{\n\t\t\t\tMode: pulumi.String(\"smart\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkerVersion;\nimport com.pulumi.cloudflare.WorkerVersionArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionAnnotationsArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionAssetsArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionAssetsConfigArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionBindingArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionContainerArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionLimitsArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionMigrationsArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionModuleArgs;\nimport com.pulumi.cloudflare.inputs.WorkerVersionPlacementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkerVersion = new WorkerVersion(\"exampleWorkerVersion\", WorkerVersionArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .workerId(\"worker_id\")\n            .annotations(WorkerVersionAnnotationsArgs.builder()\n                .workersMessage(\"Fixed bug.\")\n                .workersTag(\"v1.0.1\")\n                .build())\n            .assets(WorkerVersionAssetsArgs.builder()\n                .config(WorkerVersionAssetsConfigArgs.builder()\n                    .htmlHandling(\"auto-trailing-slash\")\n                    .notFoundHandling(\"404-page\")\n                    .runWorkerFirst()\n                    .build())\n                .jwt(\"jwt\")\n                .build())\n            .bindings(WorkerVersionBindingArgs.builder()\n                .name(\"MY_ENV_VAR\")\n                .text(\"my_data\")\n                .type(\"plain_text\")\n                .build())\n            .compatibilityDate(\"2021-01-01\")\n            .compatibilityFlags(\"nodejs_compat\")\n            .containers(WorkerVersionContainerArgs.builder()\n                .className(\"MyDurableObject\")\n                .build())\n            .limits(WorkerVersionLimitsArgs.builder()\n                .cpuMs(50)\n                .subrequests(1000)\n                .build())\n            .mainModule(\"index.js\")\n            .migrations(WorkerVersionMigrationsArgs.builder()\n                .deletedClasses(\"string\")\n                .newClasses(\"string\")\n                .newSqliteClasses(\"string\")\n                .newTag(\"v2\")\n                .oldTag(\"v1\")\n                .renamedClasses(WorkerVersionMigrationsRenamedClassArgs.builder()\n                    .from(\"from\")\n                    .to(\"to\")\n                    .build())\n                .transferredClasses(WorkerVersionMigrationsTransferredClassArgs.builder()\n                    .from(\"from\")\n                    .fromScript(\"from_script\")\n                    .to(\"to\")\n                    .build())\n                .build())\n            .modules(WorkerVersionModuleArgs.builder()\n                .contentFile(\"dist/index.js\")\n                .contentType(\"application/javascript+module\")\n                .name(\"index.js\")\n                .build())\n            .placement(WorkerVersionPlacementArgs.builder()\n                .mode(\"smart\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkerVersion:\n    type: cloudflare:WorkerVersion\n    name: example_worker_version\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      workerId: worker_id\n      annotations:\n        workersMessage: Fixed bug.\n        workersTag: v1.0.1\n      assets:\n        config:\n          htmlHandling: auto-trailing-slash\n          notFoundHandling: 404-page\n          runWorkerFirst: []\n        jwt: jwt\n      bindings:\n        - name: MY_ENV_VAR\n          text: my_data\n          type: plain_text\n      compatibilityDate: 2021-01-01\n      compatibilityFlags:\n        - nodejs_compat\n      containers:\n        - className: MyDurableObject\n      limits:\n        cpuMs: 50\n        subrequests: 1000\n      mainModule: index.js\n      migrations:\n        deletedClasses:\n          - string\n        newClasses:\n          - string\n        newSqliteClasses:\n          - string\n        newTag: v2\n        oldTag: v1\n        renamedClasses:\n          - from: from\n            to: to\n        transferredClasses:\n          - from: from\n            fromScript: from_script\n            to: to\n      modules:\n        - contentFile: dist/index.js\n          contentType: application/javascript+module\n          name: index.js\n      placement:\n        mode: smart\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workerVersion:WorkerVersion example '\u003caccount_id\u003e/\u003cworker_id\u003e/\u003cversion_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionAnnotations:WorkerVersionAnnotations",
                    "description": "Metadata about the version.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionAssets:WorkerVersionAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionBinding:WorkerVersionBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings."
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker."
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e."
                },
                "containers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionContainer:WorkerVersionContainer"
                    },
                    "description": "List of containers attached to a Worker. Containers can only be attached to Durable Object classes of this Worker script."
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the version was created."
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionLimits:WorkerVersionLimits",
                    "description": "Resource limits enforced at runtime."
                },
                "mainModule": {
                    "type": "string",
                    "description": "The name of the main module in the \u003cspan pulumi-lang-nodejs=\"`modules`\" pulumi-lang-dotnet=\"`Modules`\" pulumi-lang-go=\"`modules`\" pulumi-lang-python=\"`modules`\" pulumi-lang-yaml=\"`modules`\" pulumi-lang-java=\"`modules`\"\u003e`modules`\u003c/span\u003e array (e.g. the name of the module that exports a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler)."
                },
                "mainScriptBase64": {
                    "type": "string",
                    "description": "The base64-encoded main script content. This is only returned for service worker syntax workers (not ES modules). Used when importing existing workers that use the older service worker syntax."
                },
                "migrationTag": {
                    "type": "string",
                    "description": "Durable Object migration tag. Set when the version is deployed. Omitted if the version has not been deployed or the Worker does not use Durable Objects."
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionMigrations:WorkerVersionMigrations",
                    "description": "Migrations for Durable Objects associated with the version. Migrations are applied when the version is deployed."
                },
                "modules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionModule:WorkerVersionModule"
                    },
                    "description": "Code, sourcemaps, and other content used at runtime.\n\nThis includes [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and\n[`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files used to configure \n[Static Assets](https://developers.cloudflare.com/workers/static-assets/). `_headers` and `_redirects` files should be \nincluded as modules named `_headers` and `_redirects` with content type `text/plain`."
                },
                "number": {
                    "type": "integer",
                    "description": "The integer version number, starting from one."
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionPlacement:WorkerVersionPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host."
                },
                "source": {
                    "type": "string",
                    "description": "The client used to create the version."
                },
                "startupTimeMs": {
                    "type": "integer",
                    "description": "Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time)."
                },
                "urls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "All routable URLs that always point to this version. Does not include alias URLs, since aliases can be updated to point to a different version."
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the version.\nAvailable values: \"standard\", \"bundled\", \"unbound\".",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "workerId": {
                    "type": "string",
                    "description": "Identifier for the Worker, which can be ID or name.\n"
                }
            },
            "required": [
                "annotations",
                "compatibilityFlags",
                "createdOn",
                "limits",
                "mainScriptBase64",
                "migrationTag",
                "number",
                "source",
                "startupTimeMs",
                "urls",
                "usageModel",
                "workerId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionAnnotations:WorkerVersionAnnotations",
                    "description": "Metadata about the version.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionAssets:WorkerVersionAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionBinding:WorkerVersionBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings."
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker."
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e."
                },
                "containers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionContainer:WorkerVersionContainer"
                    },
                    "description": "List of containers attached to a Worker. Containers can only be attached to Durable Object classes of this Worker script."
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionLimits:WorkerVersionLimits",
                    "description": "Resource limits enforced at runtime."
                },
                "mainModule": {
                    "type": "string",
                    "description": "The name of the main module in the \u003cspan pulumi-lang-nodejs=\"`modules`\" pulumi-lang-dotnet=\"`Modules`\" pulumi-lang-go=\"`modules`\" pulumi-lang-python=\"`modules`\" pulumi-lang-yaml=\"`modules`\" pulumi-lang-java=\"`modules`\"\u003e`modules`\u003c/span\u003e array (e.g. the name of the module that exports a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler)."
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionMigrations:WorkerVersionMigrations",
                    "description": "Migrations for Durable Objects associated with the version. Migrations are applied when the version is deployed."
                },
                "modules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionModule:WorkerVersionModule"
                    },
                    "description": "Code, sourcemaps, and other content used at runtime.\n\nThis includes [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and\n[`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files used to configure \n[Static Assets](https://developers.cloudflare.com/workers/static-assets/). `_headers` and `_redirects` files should be \nincluded as modules named `_headers` and `_redirects` with content type `text/plain`."
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/WorkerVersionPlacement:WorkerVersionPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host."
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the version.\nAvailable values: \"standard\", \"bundled\", \"unbound\".",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "workerId": {
                    "type": "string",
                    "description": "Identifier for the Worker, which can be ID or name.\n"
                }
            },
            "requiredInputs": [
                "workerId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkerVersion resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "annotations": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionAnnotations:WorkerVersionAnnotations",
                        "description": "Metadata about the version.\n"
                    },
                    "assets": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionAssets:WorkerVersionAssets",
                        "description": "Configuration for assets within a Worker.\n"
                    },
                    "bindings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerVersionBinding:WorkerVersionBinding"
                        },
                        "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings."
                    },
                    "compatibilityDate": {
                        "type": "string",
                        "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker."
                    },
                    "compatibilityFlags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e."
                    },
                    "containers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerVersionContainer:WorkerVersionContainer"
                        },
                        "description": "List of containers attached to a Worker. Containers can only be attached to Durable Object classes of this Worker script."
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the version was created."
                    },
                    "limits": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionLimits:WorkerVersionLimits",
                        "description": "Resource limits enforced at runtime."
                    },
                    "mainModule": {
                        "type": "string",
                        "description": "The name of the main module in the \u003cspan pulumi-lang-nodejs=\"`modules`\" pulumi-lang-dotnet=\"`Modules`\" pulumi-lang-go=\"`modules`\" pulumi-lang-python=\"`modules`\" pulumi-lang-yaml=\"`modules`\" pulumi-lang-java=\"`modules`\"\u003e`modules`\u003c/span\u003e array (e.g. the name of the module that exports a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler)."
                    },
                    "mainScriptBase64": {
                        "type": "string",
                        "description": "The base64-encoded main script content. This is only returned for service worker syntax workers (not ES modules). Used when importing existing workers that use the older service worker syntax."
                    },
                    "migrationTag": {
                        "type": "string",
                        "description": "Durable Object migration tag. Set when the version is deployed. Omitted if the version has not been deployed or the Worker does not use Durable Objects."
                    },
                    "migrations": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionMigrations:WorkerVersionMigrations",
                        "description": "Migrations for Durable Objects associated with the version. Migrations are applied when the version is deployed."
                    },
                    "modules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkerVersionModule:WorkerVersionModule"
                        },
                        "description": "Code, sourcemaps, and other content used at runtime.\n\nThis includes [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and\n[`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files used to configure \n[Static Assets](https://developers.cloudflare.com/workers/static-assets/). `_headers` and `_redirects` files should be \nincluded as modules named `_headers` and `_redirects` with content type `text/plain`."
                    },
                    "number": {
                        "type": "integer",
                        "description": "The integer version number, starting from one."
                    },
                    "placement": {
                        "$ref": "#/types/cloudflare:index/WorkerVersionPlacement:WorkerVersionPlacement",
                        "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host."
                    },
                    "source": {
                        "type": "string",
                        "description": "The client used to create the version."
                    },
                    "startupTimeMs": {
                        "type": "integer",
                        "description": "Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time)."
                    },
                    "urls": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "All routable URLs that always point to this version. Does not include alias URLs, since aliases can be updated to point to a different version."
                    },
                    "usageModel": {
                        "type": "string",
                        "description": "Usage model for the version.\nAvailable values: \"standard\", \"bundled\", \"unbound\".",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "workerId": {
                        "type": "string",
                        "description": "Identifier for the Worker, which can be ID or name.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workersCronTrigger:WorkersCronTrigger": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCronTrigger = new cloudflare.WorkersCronTrigger(\"example_workers_cron_trigger\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n    body: [{\n        cron: \"*/30 * * * *\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_cron_trigger = cloudflare.WorkersCronTrigger(\"example_workers_cron_trigger\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\",\n    body=[{\n        \"cron\": \"*/30 * * * *\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCronTrigger = new Cloudflare.Index.WorkersCronTrigger(\"example_workers_cron_trigger\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n        Body = new[]\n        {\n            \n            {\n                { \"cron\", \"*/30 * * * *\" },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersCronTrigger(ctx, \"example_workers_cron_trigger\", \u0026cloudflare.WorkersCronTriggerArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName: pulumi.String(\"this-is_my_script-01\"),\n\t\t\tBody: []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"cron\": \"*/30 * * * *\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersCronTrigger;\nimport com.pulumi.cloudflare.WorkersCronTriggerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersCronTrigger = new WorkersCronTrigger(\"exampleWorkersCronTrigger\", WorkersCronTriggerArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .body(List.of(Map.of(\"cron\", \"*/30 * * * *\")))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersCronTrigger:\n    type: cloudflare:WorkersCronTrigger\n    name: example_workers_cron_trigger\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      scriptName: this-is_my_script-01\n      body:\n        - cron: '*/30 * * * *'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersCronTrigger:WorkersCronTrigger example '\u003caccount_id\u003e/\u003cscript_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "schedules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersCronTriggerSchedule:WorkersCronTriggerSchedule"
                    }
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                }
            },
            "required": [
                "schedules",
                "scriptName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "schedules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersCronTriggerSchedule:WorkersCronTriggerSchedule"
                    }
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                }
            },
            "requiredInputs": [
                "schedules",
                "scriptName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersCronTrigger resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "schedules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkersCronTriggerSchedule:WorkersCronTriggerSchedule"
                        }
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workerCronTrigger:WorkerCronTrigger"
                }
            ]
        },
        "cloudflare:index/workersCustomDomain:WorkersCustomDomain": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCustomDomain = new cloudflare.WorkersCustomDomain(\"example_workers_custom_domain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"app.example.com\",\n    service: \"my-worker\",\n    environment: \"production\",\n    zoneId: \"593c9c94de529bbbfaac7c53ced0447d\",\n    zoneName: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_custom_domain = cloudflare.WorkersCustomDomain(\"example_workers_custom_domain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"app.example.com\",\n    service=\"my-worker\",\n    environment=\"production\",\n    zone_id=\"593c9c94de529bbbfaac7c53ced0447d\",\n    zone_name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCustomDomain = new Cloudflare.Index.WorkersCustomDomain(\"example_workers_custom_domain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"app.example.com\",\n        Service = \"my-worker\",\n        Environment = \"production\",\n        ZoneId = \"593c9c94de529bbbfaac7c53ced0447d\",\n        ZoneName = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersCustomDomain(ctx, \"example_workers_custom_domain\", \u0026cloudflare.WorkersCustomDomainArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostname:    pulumi.String(\"app.example.com\"),\n\t\t\tService:     pulumi.String(\"my-worker\"),\n\t\t\tEnvironment: pulumi.String(\"production\"),\n\t\t\tZoneId:      pulumi.String(\"593c9c94de529bbbfaac7c53ced0447d\"),\n\t\t\tZoneName:    pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersCustomDomain;\nimport com.pulumi.cloudflare.WorkersCustomDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersCustomDomain = new WorkersCustomDomain(\"exampleWorkersCustomDomain\", WorkersCustomDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"app.example.com\")\n            .service(\"my-worker\")\n            .environment(\"production\")\n            .zoneId(\"593c9c94de529bbbfaac7c53ced0447d\")\n            .zoneName(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersCustomDomain:\n    type: cloudflare:WorkersCustomDomain\n    name: example_workers_custom_domain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      hostname: app.example.com\n      service: my-worker\n      environment: production\n      zoneId: 593c9c94de529bbbfaac7c53ced0447d\n      zoneName: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersCustomDomain:WorkersCustomDomain example '\u003caccount_id\u003e/\u003cdomain_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "certId": {
                    "type": "string",
                    "description": "ID of the TLS certificate issued for the domain.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Worker environment associated with the domain.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone containing the domain hostname.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone containing the domain hostname.\n"
                }
            },
            "required": [
                "certId",
                "environment",
                "hostname",
                "service",
                "zoneId",
                "zoneName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "environment": {
                    "type": "string",
                    "description": "Worker environment associated with the domain.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "hostname": {
                    "type": "string",
                    "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "ID of the zone containing the domain hostname.\n"
                },
                "zoneName": {
                    "type": "string",
                    "description": "Name of the zone containing the domain hostname.\n"
                }
            },
            "requiredInputs": [
                "hostname",
                "service"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersCustomDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "certId": {
                        "type": "string",
                        "description": "ID of the TLS certificate issued for the domain.\n"
                    },
                    "environment": {
                        "type": "string",
                        "description": "Worker environment associated with the domain.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "hostname": {
                        "type": "string",
                        "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n"
                    },
                    "service": {
                        "type": "string",
                        "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "ID of the zone containing the domain hostname.\n"
                    },
                    "zoneName": {
                        "type": "string",
                        "description": "Name of the zone containing the domain hostname.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workerDomain:WorkerDomain"
                }
            ]
        },
        "cloudflare:index/workersDeployment:WorkersDeployment": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersDeployment = new cloudflare.WorkersDeployment(\"example_workers_deployment\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n    strategy: \"percentage\",\n    versions: [{\n        percentage: 100,\n        versionId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    }],\n    annotations: {\n        workersMessage: \"Deploy bug fix.\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_deployment = cloudflare.WorkersDeployment(\"example_workers_deployment\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\",\n    strategy=\"percentage\",\n    versions=[{\n        \"percentage\": 100,\n        \"version_id\": \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    }],\n    annotations={\n        \"workers_message\": \"Deploy bug fix.\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersDeployment = new Cloudflare.Index.WorkersDeployment(\"example_workers_deployment\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n        Strategy = \"percentage\",\n        Versions = new[]\n        {\n            new Cloudflare.Inputs.WorkersDeploymentVersionArgs\n            {\n                Percentage = 100,\n                VersionId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n            },\n        },\n        Annotations = new Cloudflare.Inputs.WorkersDeploymentAnnotationsArgs\n        {\n            WorkersMessage = \"Deploy bug fix.\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersDeployment(ctx, \"example_workers_deployment\", \u0026cloudflare.WorkersDeploymentArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName: pulumi.String(\"this-is_my_script-01\"),\n\t\t\tStrategy:   pulumi.String(\"percentage\"),\n\t\t\tVersions: cloudflare.WorkersDeploymentVersionArray{\n\t\t\t\t\u0026cloudflare.WorkersDeploymentVersionArgs{\n\t\t\t\t\tPercentage: pulumi.Float64(100),\n\t\t\t\t\tVersionId:  pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAnnotations: \u0026cloudflare.WorkersDeploymentAnnotationsArgs{\n\t\t\t\tWorkersMessage: pulumi.String(\"Deploy bug fix.\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersDeployment;\nimport com.pulumi.cloudflare.WorkersDeploymentArgs;\nimport com.pulumi.cloudflare.inputs.WorkersDeploymentVersionArgs;\nimport com.pulumi.cloudflare.inputs.WorkersDeploymentAnnotationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersDeployment = new WorkersDeployment(\"exampleWorkersDeployment\", WorkersDeploymentArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .strategy(\"percentage\")\n            .versions(WorkersDeploymentVersionArgs.builder()\n                .percentage(100.0)\n                .versionId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n                .build())\n            .annotations(WorkersDeploymentAnnotationsArgs.builder()\n                .workersMessage(\"Deploy bug fix.\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersDeployment:\n    type: cloudflare:WorkersDeployment\n    name: example_workers_deployment\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      scriptName: this-is_my_script-01\n      strategy: percentage\n      versions:\n        - percentage: 100\n          versionId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n      annotations:\n        workersMessage: Deploy bug fix.\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersDeployment:WorkersDeployment example '\u003caccount_id\u003e/\u003cscript_name\u003e/\u003cdeployment_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkersDeploymentAnnotations:WorkersDeploymentAnnotations"
                },
                "authorEmail": {
                    "type": "string"
                },
                "createdOn": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                },
                "source": {
                    "type": "string"
                },
                "strategy": {
                    "type": "string",
                    "description": "Available values: \"percentage\".\n"
                },
                "versions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersDeploymentVersion:WorkersDeploymentVersion"
                    }
                }
            },
            "required": [
                "annotations",
                "authorEmail",
                "createdOn",
                "scriptName",
                "source",
                "strategy",
                "versions"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkersDeploymentAnnotations:WorkersDeploymentAnnotations"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "Available values: \"percentage\".\n"
                },
                "versions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersDeploymentVersion:WorkersDeploymentVersion"
                    }
                }
            },
            "requiredInputs": [
                "scriptName",
                "strategy",
                "versions"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersDeployment resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "annotations": {
                        "$ref": "#/types/cloudflare:index/WorkersDeploymentAnnotations:WorkersDeploymentAnnotations"
                    },
                    "authorEmail": {
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    },
                    "source": {
                        "type": "string"
                    },
                    "strategy": {
                        "type": "string",
                        "description": "Available values: \"percentage\".\n"
                    },
                    "versions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkersDeploymentVersion:WorkersDeploymentVersion"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workersForPlatformsDispatchNamespace:WorkersForPlatformsDispatchNamespace": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersForPlatformsDispatchNamespace = new cloudflare.WorkersForPlatformsDispatchNamespace(\"example_workers_for_platforms_dispatch_namespace\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my-dispatch-namespace\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_for_platforms_dispatch_namespace = cloudflare.WorkersForPlatformsDispatchNamespace(\"example_workers_for_platforms_dispatch_namespace\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my-dispatch-namespace\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersForPlatformsDispatchNamespace = new Cloudflare.Index.WorkersForPlatformsDispatchNamespace(\"example_workers_for_platforms_dispatch_namespace\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my-dispatch-namespace\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersForPlatformsDispatchNamespace(ctx, \"example_workers_for_platforms_dispatch_namespace\", \u0026cloudflare.WorkersForPlatformsDispatchNamespaceArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my-dispatch-namespace\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersForPlatformsDispatchNamespace;\nimport com.pulumi.cloudflare.WorkersForPlatformsDispatchNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersForPlatformsDispatchNamespace = new WorkersForPlatformsDispatchNamespace(\"exampleWorkersForPlatformsDispatchNamespace\", WorkersForPlatformsDispatchNamespaceArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my-dispatch-namespace\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersForPlatformsDispatchNamespace:\n    type: cloudflare:WorkersForPlatformsDispatchNamespace\n    name: example_workers_for_platforms_dispatch_namespace\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my-dispatch-namespace\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersForPlatformsDispatchNamespace:WorkersForPlatformsDispatchNamespace example '\u003caccount_id\u003e/\u003cdispatch_namespace\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdBy": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the script was created.\n"
                },
                "modifiedBy": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the script was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the dispatch namespace.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "API Resource UUID tag.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the Workers for Platforms dispatch namespace.\n"
                },
                "scriptCount": {
                    "type": "integer",
                    "description": "The current number of scripts in this Dispatch Namespace.\n"
                },
                "trustedWorkers": {
                    "type": "boolean",
                    "description": "Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".\n"
                }
            },
            "required": [
                "createdBy",
                "createdOn",
                "modifiedBy",
                "modifiedOn",
                "namespaceId",
                "namespaceName",
                "scriptCount",
                "trustedWorkers"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the dispatch namespace.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersForPlatformsDispatchNamespace resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "createdBy": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the script was created.\n"
                    },
                    "modifiedBy": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the script was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the dispatch namespace.\n"
                    },
                    "namespaceId": {
                        "type": "string",
                        "description": "API Resource UUID tag.\n"
                    },
                    "namespaceName": {
                        "type": "string",
                        "description": "Name of the Workers for Platforms dispatch namespace.\n"
                    },
                    "scriptCount": {
                        "type": "integer",
                        "description": "The current number of scripts in this Dispatch Namespace.\n"
                    },
                    "trustedWorkers": {
                        "type": "boolean",
                        "description": "Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workersForPlatformsNamespace:WorkersForPlatformsNamespace"
                }
            ]
        },
        "cloudflare:index/workersForPlatformsNamespace:WorkersForPlatformsNamespace": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersForPlatformsDispatchNamespace = new cloudflare.WorkersForPlatformsDispatchNamespace(\"example_workers_for_platforms_dispatch_namespace\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"my-dispatch-namespace\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_for_platforms_dispatch_namespace = cloudflare.WorkersForPlatformsDispatchNamespace(\"example_workers_for_platforms_dispatch_namespace\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"my-dispatch-namespace\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersForPlatformsDispatchNamespace = new Cloudflare.Index.WorkersForPlatformsDispatchNamespace(\"example_workers_for_platforms_dispatch_namespace\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"my-dispatch-namespace\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersForPlatformsDispatchNamespace(ctx, \"example_workers_for_platforms_dispatch_namespace\", \u0026cloudflare.WorkersForPlatformsDispatchNamespaceArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"my-dispatch-namespace\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersForPlatformsDispatchNamespace;\nimport com.pulumi.cloudflare.WorkersForPlatformsDispatchNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersForPlatformsDispatchNamespace = new WorkersForPlatformsDispatchNamespace(\"exampleWorkersForPlatformsDispatchNamespace\", WorkersForPlatformsDispatchNamespaceArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"my-dispatch-namespace\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersForPlatformsDispatchNamespace:\n    type: cloudflare:WorkersForPlatformsDispatchNamespace\n    name: example_workers_for_platforms_dispatch_namespace\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: my-dispatch-namespace\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersForPlatformsNamespace:WorkersForPlatformsNamespace example '\u003caccount_id\u003e/\u003cdispatch_namespace\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdBy": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the script was created.\n"
                },
                "modifiedBy": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the script was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the dispatch namespace.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "API Resource UUID tag.\n"
                },
                "namespaceName": {
                    "type": "string",
                    "description": "Name of the Workers for Platforms dispatch namespace.\n"
                },
                "scriptCount": {
                    "type": "integer",
                    "description": "The current number of scripts in this Dispatch Namespace.\n"
                },
                "trustedWorkers": {
                    "type": "boolean",
                    "description": "Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".\n"
                }
            },
            "required": [
                "createdBy",
                "createdOn",
                "modifiedBy",
                "modifiedOn",
                "namespaceId",
                "namespaceName",
                "scriptCount",
                "trustedWorkers"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the dispatch namespace.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersForPlatformsNamespace resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "createdBy": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the script was created.\n"
                    },
                    "modifiedBy": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the script was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the dispatch namespace.\n"
                    },
                    "namespaceId": {
                        "type": "string",
                        "description": "API Resource UUID tag.\n"
                    },
                    "namespaceName": {
                        "type": "string",
                        "description": "Name of the Workers for Platforms dispatch namespace.\n"
                    },
                    "scriptCount": {
                        "type": "integer",
                        "description": "The current number of scripts in this Dispatch Namespace.\n"
                    },
                    "trustedWorkers": {
                        "type": "boolean",
                        "description": "Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workersForPlatformsNamespace:WorkersForPlatformsNamespace"
                }
            ],
            "deprecationMessage": "cloudflare.index/workersforplatformsnamespace.WorkersForPlatformsNamespace has been deprecated in favor of cloudflare.index/workersforplatformsdispatchnamespace.WorkersForPlatformsDispatchNamespace"
        },
        "cloudflare:index/workersKv:WorkersKv": {
            "description": "Accepted Permissions\n\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersKv = new cloudflare.WorkersKv(\"example_workers_kv\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    namespaceId: \"0f2ac74b498b48028cb68387c421e279\",\n    keyName: \"My-Key\",\n    value: \"Some Value\",\n    metadata: {},\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_kv = cloudflare.WorkersKv(\"example_workers_kv\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    namespace_id=\"0f2ac74b498b48028cb68387c421e279\",\n    key_name=\"My-Key\",\n    value=\"Some Value\",\n    metadata={})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersKv = new Cloudflare.Index.WorkersKv(\"example_workers_kv\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        NamespaceId = \"0f2ac74b498b48028cb68387c421e279\",\n        KeyName = \"My-Key\",\n        Value = \"Some Value\",\n        Metadata = null,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersKv(ctx, \"example_workers_kv\", \u0026cloudflare.WorkersKvArgs{\n\t\t\tAccountId:   pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNamespaceId: pulumi.String(\"0f2ac74b498b48028cb68387c421e279\"),\n\t\t\tKeyName:     pulumi.String(\"My-Key\"),\n\t\t\tValue:       pulumi.String(\"Some Value\"),\n\t\t\tMetadata:    pulumi.String{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersKv;\nimport com.pulumi.cloudflare.WorkersKvArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersKv = new WorkersKv(\"exampleWorkersKv\", WorkersKvArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .namespaceId(\"0f2ac74b498b48028cb68387c421e279\")\n            .keyName(\"My-Key\")\n            .value(\"Some Value\")\n            .metadata(Map.ofEntries(\n            ))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersKv:\n    type: cloudflare:WorkersKv\n    name: example_workers_kv\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      namespaceId: 0f2ac74b498b48028cb68387c421e279\n      keyName: My-Key\n      value: Some Value\n      metadata: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersKv:WorkersKv example '\u003caccount_id\u003e/\u003cnamespace_id\u003e/\u003ckey_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "keyName": {
                    "type": "string",
                    "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Associates arbitrary JSON data with a key/value pair.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A byte sequence to be stored, up to 25 MiB in length.\n"
                }
            },
            "required": [
                "keyName",
                "namespaceId",
                "value"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "keyName": {
                    "type": "string",
                    "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Associates arbitrary JSON data with a key/value pair.\n"
                },
                "namespaceId": {
                    "type": "string",
                    "description": "Namespace identifier tag.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A byte sequence to be stored, up to 25 MiB in length.\n"
                }
            },
            "requiredInputs": [
                "keyName",
                "namespaceId",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersKv resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "keyName": {
                        "type": "string",
                        "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL.\n"
                    },
                    "metadata": {
                        "type": "string",
                        "description": "Associates arbitrary JSON data with a key/value pair.\n"
                    },
                    "namespaceId": {
                        "type": "string",
                        "description": "Namespace identifier tag.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "A byte sequence to be stored, up to 25 MiB in length.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workersKvNamespace:WorkersKvNamespace": {
            "description": "Accepted Permissions\n\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersKvNamespace = new cloudflare.WorkersKvNamespace(\"example_workers_kv_namespace\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    title: \"My Own Namespace\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_kv_namespace = cloudflare.WorkersKvNamespace(\"example_workers_kv_namespace\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    title=\"My Own Namespace\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersKvNamespace = new Cloudflare.Index.WorkersKvNamespace(\"example_workers_kv_namespace\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Title = \"My Own Namespace\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersKvNamespace(ctx, \"example_workers_kv_namespace\", \u0026cloudflare.WorkersKvNamespaceArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTitle:     pulumi.String(\"My Own Namespace\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersKvNamespace;\nimport com.pulumi.cloudflare.WorkersKvNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersKvNamespace = new WorkersKvNamespace(\"exampleWorkersKvNamespace\", WorkersKvNamespaceArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .title(\"My Own Namespace\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersKvNamespace:\n    type: cloudflare:WorkersKvNamespace\n    name: example_workers_kv_namespace\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      title: My Own Namespace\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersKvNamespace:WorkersKvNamespace example '\u003caccount_id\u003e/\u003cnamespace_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "supportsUrlEncoding": {
                    "type": "boolean",
                    "description": "True if keys written on the URL will be URL-decoded before storing. For example, if set to \"true\", a key written on the URL as \"%3F\" will be stored as \"?\".\n"
                },
                "title": {
                    "type": "string",
                    "description": "A human-readable string name for a Namespace.\n"
                }
            },
            "required": [
                "supportsUrlEncoding",
                "title"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "title": {
                    "type": "string",
                    "description": "A human-readable string name for a Namespace.\n"
                }
            },
            "requiredInputs": [
                "title"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersKvNamespace resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "supportsUrlEncoding": {
                        "type": "boolean",
                        "description": "True if keys written on the URL will be URL-decoded before storing. For example, if set to \"true\", a key written on the URL as \"%3F\" will be stored as \"?\".\n"
                    },
                    "title": {
                        "type": "string",
                        "description": "A human-readable string name for a Namespace.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workersRoute:WorkersRoute": {
            "description": "Accepted Permissions\n\n- `Workers Routes Read`\n- `Workers Routes Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersRoute = new cloudflare.WorkersRoute(\"example_workers_route\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    pattern: \"example.com/*\",\n    script: \"my-workers-script\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_route = cloudflare.WorkersRoute(\"example_workers_route\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    pattern=\"example.com/*\",\n    script=\"my-workers-script\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersRoute = new Cloudflare.Index.WorkersRoute(\"example_workers_route\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Pattern = \"example.com/*\",\n        Script = \"my-workers-script\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersRoute(ctx, \"example_workers_route\", \u0026cloudflare.WorkersRouteArgs{\n\t\t\tZoneId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPattern: pulumi.String(\"example.com/*\"),\n\t\t\tScript:  pulumi.String(\"my-workers-script\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersRoute;\nimport com.pulumi.cloudflare.WorkersRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersRoute = new WorkersRoute(\"exampleWorkersRoute\", WorkersRouteArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .pattern(\"example.com/*\")\n            .script(\"my-workers-script\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersRoute:\n    type: cloudflare:WorkersRoute\n    name: example_workers_route\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      pattern: example.com/*\n      script: my-workers-script\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersRoute:WorkersRoute example '\u003czone_id\u003e/\u003croute_id\u003e'\n```\n\n",
            "properties": {
                "pattern": {
                    "type": "string",
                    "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).\n"
                },
                "script": {
                    "type": "string",
                    "description": "Name of the script to run if the route matches.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "pattern"
            ],
            "inputProperties": {
                "pattern": {
                    "type": "string",
                    "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).\n"
                },
                "script": {
                    "type": "string",
                    "description": "Name of the script to run if the route matches.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "pattern"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersRoute resources.\n",
                "properties": {
                    "pattern": {
                        "type": "string",
                        "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).\n"
                    },
                    "script": {
                        "type": "string",
                        "description": "Name of the script to run if the route matches.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workersScript:WorkersScript": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n\u003e For more direct control over Workers resources, we recommend the beta \u003cspan pulumi-lang-nodejs=\"`cloudflare.Worker`\" pulumi-lang-dotnet=\"`cloudflare.Worker`\" pulumi-lang-go=\"`Worker`\" pulumi-lang-python=\"`Worker`\" pulumi-lang-yaml=\"`cloudflare.Worker`\" pulumi-lang-java=\"`cloudflare.Worker`\"\u003e`cloudflare.Worker`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cloudflare.WorkerVersion`\" pulumi-lang-dotnet=\"`cloudflare.WorkerVersion`\" pulumi-lang-go=\"`WorkerVersion`\" pulumi-lang-python=\"`WorkerVersion`\" pulumi-lang-yaml=\"`cloudflare.WorkerVersion`\" pulumi-lang-java=\"`cloudflare.WorkerVersion`\"\u003e`cloudflare.WorkerVersion`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`cloudflare.WorkersDeployment`\" pulumi-lang-dotnet=\"`cloudflare.WorkersDeployment`\" pulumi-lang-go=\"`WorkersDeployment`\" pulumi-lang-python=\"`WorkersDeployment`\" pulumi-lang-yaml=\"`cloudflare.WorkersDeployment`\" pulumi-lang-java=\"`cloudflare.WorkersDeployment`\"\u003e`cloudflare.WorkersDeployment`\u003c/span\u003e resources. See how to use them in the [developer documentation](https://developers.cloudflare.com/workers/platform/infrastructure-as-code/).\n\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersScript:WorkersScript example '\u003caccount_id\u003e/\u003cscript_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptAnnotations:WorkersScriptAnnotations",
                    "description": "Annotations for the version created by this upload.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptAssets:WorkersScriptAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptBinding:WorkersScriptBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                },
                "bodyPart": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e event). Indicates a `service worker syntax` Worker.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e.\n"
                },
                "contentFile": {
                    "type": "string",
                    "description": "Path to a file containing the Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`content`\" pulumi-lang-dotnet=\"`Content`\" pulumi-lang-go=\"`content`\" pulumi-lang-python=\"`content`\" pulumi-lang-yaml=\"`content`\" pulumi-lang-java=\"`content`\"\u003e`content`\u003c/span\u003e. Must be paired with \u003cspan pulumi-lang-nodejs=\"`contentSha256`\" pulumi-lang-dotnet=\"`ContentSha256`\" pulumi-lang-go=\"`contentSha256`\" pulumi-lang-python=\"`content_sha256`\" pulumi-lang-yaml=\"`contentSha256`\" pulumi-lang-java=\"`contentSha256`\"\u003e`contentSha256`\u003c/span\u003e.\n"
                },
                "contentSha256": {
                    "type": "string",
                    "description": "SHA-256 hash of the Worker contents. Used to trigger updates when source code changes. Must be provided when \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e is specified.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "Content-Type of the Worker. Required if uploading a non-JavaScript Worker (e.g. \"text/x-python\").\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the script was created.\n"
                },
                "etag": {
                    "type": "string",
                    "description": "Hashed script content, can be used in a If-None-Match header when updating.\n"
                },
                "handlers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The names of handlers exported as part of the default export.\n"
                },
                "hasAssets": {
                    "type": "boolean",
                    "description": "Whether a Worker contains assets.\n"
                },
                "hasModules": {
                    "type": "boolean",
                    "description": "Whether a Worker contains modules.\n"
                },
                "keepAssets": {
                    "type": "boolean",
                    "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token.\n"
                },
                "keepBindings": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of binding types to keep from previous_upload.\n"
                },
                "lastDeployedFrom": {
                    "type": "string",
                    "description": "The client most recently used to deploy this Worker.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptLimits:WorkersScriptLimits",
                    "description": "Limits to apply for this Worker.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether Logpush is turned on for the Worker.\n"
                },
                "mainModule": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler). Indicates a `module syntax` Worker.\n"
                },
                "migrationTag": {
                    "type": "string",
                    "description": "The tag of the Durable Object migration that was most recently applied for this Worker.\n"
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptMigrations:WorkersScriptMigrations",
                    "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the script was last modified.\n"
                },
                "namedHandlers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptNamedHandler:WorkersScriptNamedHandler"
                    },
                    "description": "Named exports, such as Durable Object class implementations and named entrypoints.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptObservability:WorkersScriptObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptPlacement:WorkersScriptPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                },
                "placementMode": {
                    "type": "string",
                    "description": "Available values: \"smart\", \"targeted\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "placementStatus": {
                    "type": "string",
                    "description": "Available values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                },
                "startupTimeMs": {
                    "type": "integer"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptTailConsumer:WorkersScriptTailConsumer"
                    },
                    "description": "List of Workers that will consume logs from the attached Worker.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                }
            },
            "required": [
                "annotations",
                "bindings",
                "compatibilityDate",
                "compatibilityFlags",
                "createdOn",
                "etag",
                "handlers",
                "hasAssets",
                "hasModules",
                "lastDeployedFrom",
                "logpush",
                "migrationTag",
                "modifiedOn",
                "namedHandlers",
                "placement",
                "placementMode",
                "placementStatus",
                "scriptName",
                "startupTimeMs",
                "tailConsumers",
                "usageModel"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "annotations": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptAnnotations:WorkersScriptAnnotations",
                    "description": "Annotations for the version created by this upload.\n"
                },
                "assets": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptAssets:WorkersScriptAssets",
                    "description": "Configuration for assets within a Worker.\n"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptBinding:WorkersScriptBinding"
                    },
                    "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                },
                "bodyPart": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e event). Indicates a `service worker syntax` Worker.\n"
                },
                "compatibilityDate": {
                    "type": "string",
                    "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                },
                "compatibilityFlags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e.\n"
                },
                "contentFile": {
                    "type": "string",
                    "description": "Path to a file containing the Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`content`\" pulumi-lang-dotnet=\"`Content`\" pulumi-lang-go=\"`content`\" pulumi-lang-python=\"`content`\" pulumi-lang-yaml=\"`content`\" pulumi-lang-java=\"`content`\"\u003e`content`\u003c/span\u003e. Must be paired with \u003cspan pulumi-lang-nodejs=\"`contentSha256`\" pulumi-lang-dotnet=\"`ContentSha256`\" pulumi-lang-go=\"`contentSha256`\" pulumi-lang-python=\"`content_sha256`\" pulumi-lang-yaml=\"`contentSha256`\" pulumi-lang-java=\"`contentSha256`\"\u003e`contentSha256`\u003c/span\u003e.\n"
                },
                "contentSha256": {
                    "type": "string",
                    "description": "SHA-256 hash of the Worker contents. Used to trigger updates when source code changes. Must be provided when \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e is specified.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "Content-Type of the Worker. Required if uploading a non-JavaScript Worker (e.g. \"text/x-python\").\n"
                },
                "keepAssets": {
                    "type": "boolean",
                    "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token.\n"
                },
                "keepBindings": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of binding types to keep from previous_upload.\n"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptLimits:WorkersScriptLimits",
                    "description": "Limits to apply for this Worker.\n"
                },
                "logpush": {
                    "type": "boolean",
                    "description": "Whether Logpush is turned on for the Worker.\n"
                },
                "mainModule": {
                    "type": "string",
                    "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler). Indicates a `module syntax` Worker.\n"
                },
                "migrations": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptMigrations:WorkersScriptMigrations",
                    "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
                },
                "observability": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptObservability:WorkersScriptObservability",
                    "description": "Observability settings for the Worker.\n"
                },
                "placement": {
                    "$ref": "#/types/cloudflare:index/WorkersScriptPlacement:WorkersScriptPlacement",
                    "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                },
                "tailConsumers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptTailConsumer:WorkersScriptTailConsumer"
                    },
                    "description": "List of Workers that will consume logs from the attached Worker.\n"
                },
                "usageModel": {
                    "type": "string",
                    "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                }
            },
            "requiredInputs": [
                "scriptName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersScript resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "annotations": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptAnnotations:WorkersScriptAnnotations",
                        "description": "Annotations for the version created by this upload.\n"
                    },
                    "assets": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptAssets:WorkersScriptAssets",
                        "description": "Configuration for assets within a Worker.\n"
                    },
                    "bindings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkersScriptBinding:WorkersScriptBinding"
                        },
                        "description": "List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings.\n"
                    },
                    "bodyPart": {
                        "type": "string",
                        "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e event). Indicates a `service worker syntax` Worker.\n"
                    },
                    "compatibilityDate": {
                        "type": "string",
                        "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.\n"
                    },
                    "compatibilityFlags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a \u003cspan pulumi-lang-nodejs=\"`compatibilityDate`\" pulumi-lang-dotnet=\"`CompatibilityDate`\" pulumi-lang-go=\"`compatibilityDate`\" pulumi-lang-python=\"`compatibility_date`\" pulumi-lang-yaml=\"`compatibilityDate`\" pulumi-lang-java=\"`compatibilityDate`\"\u003e`compatibilityDate`\u003c/span\u003e.\n"
                    },
                    "content": {
                        "type": "string",
                        "description": "Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e.\n"
                    },
                    "contentFile": {
                        "type": "string",
                        "description": "Path to a file containing the Module or Service Worker contents of the Worker. Conflicts with \u003cspan pulumi-lang-nodejs=\"`content`\" pulumi-lang-dotnet=\"`Content`\" pulumi-lang-go=\"`content`\" pulumi-lang-python=\"`content`\" pulumi-lang-yaml=\"`content`\" pulumi-lang-java=\"`content`\"\u003e`content`\u003c/span\u003e. Must be paired with \u003cspan pulumi-lang-nodejs=\"`contentSha256`\" pulumi-lang-dotnet=\"`ContentSha256`\" pulumi-lang-go=\"`contentSha256`\" pulumi-lang-python=\"`content_sha256`\" pulumi-lang-yaml=\"`contentSha256`\" pulumi-lang-java=\"`contentSha256`\"\u003e`contentSha256`\u003c/span\u003e.\n"
                    },
                    "contentSha256": {
                        "type": "string",
                        "description": "SHA-256 hash of the Worker contents. Used to trigger updates when source code changes. Must be provided when \u003cspan pulumi-lang-nodejs=\"`contentFile`\" pulumi-lang-dotnet=\"`ContentFile`\" pulumi-lang-go=\"`contentFile`\" pulumi-lang-python=\"`content_file`\" pulumi-lang-yaml=\"`contentFile`\" pulumi-lang-java=\"`contentFile`\"\u003e`contentFile`\u003c/span\u003e is specified.\n"
                    },
                    "contentType": {
                        "type": "string",
                        "description": "Content-Type of the Worker. Required if uploading a non-JavaScript Worker (e.g. \"text/x-python\").\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the script was created.\n"
                    },
                    "etag": {
                        "type": "string",
                        "description": "Hashed script content, can be used in a If-None-Match header when updating.\n"
                    },
                    "handlers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The names of handlers exported as part of the default export.\n"
                    },
                    "hasAssets": {
                        "type": "boolean",
                        "description": "Whether a Worker contains assets.\n"
                    },
                    "hasModules": {
                        "type": "boolean",
                        "description": "Whether a Worker contains modules.\n"
                    },
                    "keepAssets": {
                        "type": "boolean",
                        "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token.\n"
                    },
                    "keepBindings": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of binding types to keep from previous_upload.\n"
                    },
                    "lastDeployedFrom": {
                        "type": "string",
                        "description": "The client most recently used to deploy this Worker.\n"
                    },
                    "limits": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptLimits:WorkersScriptLimits",
                        "description": "Limits to apply for this Worker.\n"
                    },
                    "logpush": {
                        "type": "boolean",
                        "description": "Whether Logpush is turned on for the Worker.\n"
                    },
                    "mainModule": {
                        "type": "string",
                        "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a \u003cspan pulumi-lang-nodejs=\"`fetch`\" pulumi-lang-dotnet=\"`Fetch`\" pulumi-lang-go=\"`fetch`\" pulumi-lang-python=\"`fetch`\" pulumi-lang-yaml=\"`fetch`\" pulumi-lang-java=\"`fetch`\"\u003e`fetch`\u003c/span\u003e handler). Indicates a `module syntax` Worker.\n"
                    },
                    "migrationTag": {
                        "type": "string",
                        "description": "The tag of the Durable Object migration that was most recently applied for this Worker.\n"
                    },
                    "migrations": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptMigrations:WorkersScriptMigrations",
                        "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the script was last modified.\n"
                    },
                    "namedHandlers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkersScriptNamedHandler:WorkersScriptNamedHandler"
                        },
                        "description": "Named exports, such as Durable Object class implementations and named entrypoints.\n"
                    },
                    "observability": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptObservability:WorkersScriptObservability",
                        "description": "Observability settings for the Worker.\n"
                    },
                    "placement": {
                        "$ref": "#/types/cloudflare:index/WorkersScriptPlacement:WorkersScriptPlacement",
                        "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.\n"
                    },
                    "placementMode": {
                        "type": "string",
                        "description": "Available values: \"smart\", \"targeted\".\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "placementStatus": {
                        "type": "string",
                        "description": "Available values: \"SUCCESS\", \"UNSUPPORTED*APPLICATION\", \"INSUFFICIENT*INVOCATIONS\".\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    },
                    "startupTimeMs": {
                        "type": "integer"
                    },
                    "tailConsumers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/WorkersScriptTailConsumer:WorkersScriptTailConsumer"
                        },
                        "description": "List of Workers that will consume logs from the attached Worker.\n"
                    },
                    "usageModel": {
                        "type": "string",
                        "description": "Usage model for the Worker invocations.\nAvailable values: \"standard\", \"bundled\", \"unbound\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/workerScript:WorkerScript"
                }
            ]
        },
        "cloudflare:index/workersScriptSubdomain:WorkersScriptSubdomain": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n\u003e This resource is redundant with \u003cspan pulumi-lang-nodejs=\"`cloudflare.Worker`\" pulumi-lang-dotnet=\"`cloudflare.Worker`\" pulumi-lang-go=\"`Worker`\" pulumi-lang-python=\"`Worker`\" pulumi-lang-yaml=\"`cloudflare.Worker`\" pulumi-lang-java=\"`cloudflare.Worker`\"\u003e`cloudflare.Worker`\u003c/span\u003e and should not be used together. When using the \u003cspan pulumi-lang-nodejs=\"`cloudflare.Worker`\" pulumi-lang-dotnet=\"`cloudflare.Worker`\" pulumi-lang-go=\"`Worker`\" pulumi-lang-python=\"`Worker`\" pulumi-lang-yaml=\"`cloudflare.Worker`\" pulumi-lang-java=\"`cloudflare.Worker`\"\u003e`cloudflare.Worker`\u003c/span\u003e resource, use the nested \u003cspan pulumi-lang-nodejs=\"`subdomain`\" pulumi-lang-dotnet=\"`Subdomain`\" pulumi-lang-go=\"`subdomain`\" pulumi-lang-python=\"`subdomain`\" pulumi-lang-yaml=\"`subdomain`\" pulumi-lang-java=\"`subdomain`\"\u003e`subdomain`\u003c/span\u003e attribute to control subdomain settings instead.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersScriptSubdomain = new cloudflare.WorkersScriptSubdomain(\"example_workers_script_subdomain\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n    enabled: true,\n    previewsEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_script_subdomain = cloudflare.WorkersScriptSubdomain(\"example_workers_script_subdomain\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\",\n    enabled=True,\n    previews_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersScriptSubdomain = new Cloudflare.Index.WorkersScriptSubdomain(\"example_workers_script_subdomain\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n        Enabled = true,\n        PreviewsEnabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkersScriptSubdomain(ctx, \"example_workers_script_subdomain\", \u0026cloudflare.WorkersScriptSubdomainArgs{\n\t\t\tAccountId:       pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName:      pulumi.String(\"this-is_my_script-01\"),\n\t\t\tEnabled:         pulumi.Bool(true),\n\t\t\tPreviewsEnabled: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.WorkersScriptSubdomain;\nimport com.pulumi.cloudflare.WorkersScriptSubdomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkersScriptSubdomain = new WorkersScriptSubdomain(\"exampleWorkersScriptSubdomain\", WorkersScriptSubdomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .enabled(true)\n            .previewsEnabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkersScriptSubdomain:\n    type: cloudflare:WorkersScriptSubdomain\n    name: example_workers_script_subdomain\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      scriptName: this-is_my_script-01\n      enabled: true\n      previewsEnabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workersScriptSubdomain:WorkersScriptSubdomain example '\u003caccount_id\u003e/\u003cscript_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Worker should be available on the workers.dev subdomain.\n"
                },
                "previewsEnabled": {
                    "type": "boolean",
                    "description": "Whether the Worker's Preview URLs should be available on the workers.dev subdomain.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                }
            },
            "required": [
                "enabled",
                "previewsEnabled",
                "scriptName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Worker should be available on the workers.dev subdomain.\n"
                },
                "previewsEnabled": {
                    "type": "boolean",
                    "description": "Whether the Worker's Preview URLs should be available on the workers.dev subdomain.\n"
                },
                "scriptName": {
                    "type": "string",
                    "description": "Name of the script, used in URLs and route configuration.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "scriptName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering WorkersScriptSubdomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the Worker should be available on the workers.dev subdomain.\n"
                    },
                    "previewsEnabled": {
                        "type": "boolean",
                        "description": "Whether the Worker's Preview URLs should be available on the workers.dev subdomain.\n"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/workflow:Workflow": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkflow = new cloudflare.Workflow(\"example_workflow\", {\n    accountId: \"account_id\",\n    workflowName: \"x\",\n    className: \"x\",\n    scriptName: \"x\",\n    limits: {\n        steps: 1,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workflow = cloudflare.Workflow(\"example_workflow\",\n    account_id=\"account_id\",\n    workflow_name=\"x\",\n    class_name=\"x\",\n    script_name=\"x\",\n    limits={\n        \"steps\": 1,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkflow = new Cloudflare.Index.Workflow(\"example_workflow\", new()\n    {\n        AccountId = \"account_id\",\n        WorkflowName = \"x\",\n        ClassName = \"x\",\n        ScriptName = \"x\",\n        Limits = new Cloudflare.Inputs.WorkflowLimitsArgs\n        {\n            Steps = 1,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewWorkflow(ctx, \"example_workflow\", \u0026cloudflare.WorkflowArgs{\n\t\t\tAccountId:    pulumi.String(\"account_id\"),\n\t\t\tWorkflowName: pulumi.String(\"x\"),\n\t\t\tClassName:    pulumi.String(\"x\"),\n\t\t\tScriptName:   pulumi.String(\"x\"),\n\t\t\tLimits: \u0026cloudflare.WorkflowLimitsArgs{\n\t\t\t\tSteps: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Workflow;\nimport com.pulumi.cloudflare.WorkflowArgs;\nimport com.pulumi.cloudflare.inputs.WorkflowLimitsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleWorkflow = new Workflow(\"exampleWorkflow\", WorkflowArgs.builder()\n            .accountId(\"account_id\")\n            .workflowName(\"x\")\n            .className(\"x\")\n            .scriptName(\"x\")\n            .limits(WorkflowLimitsArgs.builder()\n                .steps(1)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleWorkflow:\n    type: cloudflare:Workflow\n    name: example_workflow\n    properties:\n      accountId: account_id\n      workflowName: x\n      className: x\n      scriptName: x\n      limits:\n        steps: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/workflow:Workflow example '\u003caccount_id\u003e/\u003cworkflow_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "className": {
                    "type": "string"
                },
                "createdOn": {
                    "type": "string"
                },
                "instances": {
                    "$ref": "#/types/cloudflare:index/WorkflowInstances:WorkflowInstances"
                },
                "isDeleted": {
                    "type": "number"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkflowLimits:WorkflowLimits"
                },
                "modifiedOn": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "scriptName": {
                    "type": "string"
                },
                "terminatorRunning": {
                    "type": "number"
                },
                "triggeredOn": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                },
                "workflowName": {
                    "type": "string"
                }
            },
            "required": [
                "className",
                "createdOn",
                "instances",
                "isDeleted",
                "modifiedOn",
                "name",
                "scriptName",
                "terminatorRunning",
                "triggeredOn",
                "versionId",
                "workflowName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "className": {
                    "type": "string"
                },
                "limits": {
                    "$ref": "#/types/cloudflare:index/WorkflowLimits:WorkflowLimits"
                },
                "scriptName": {
                    "type": "string"
                },
                "workflowName": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "className",
                "scriptName",
                "workflowName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Workflow resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "className": {
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "instances": {
                        "$ref": "#/types/cloudflare:index/WorkflowInstances:WorkflowInstances"
                    },
                    "isDeleted": {
                        "type": "number"
                    },
                    "limits": {
                        "$ref": "#/types/cloudflare:index/WorkflowLimits:WorkflowLimits"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "scriptName": {
                        "type": "string"
                    },
                    "terminatorRunning": {
                        "type": "number"
                    },
                    "triggeredOn": {
                        "type": "string"
                    },
                    "versionId": {
                        "type": "string"
                    },
                    "workflowName": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustAccessAiControlsMcpPortal:ZeroTrustAccessAiControlsMcpPortal": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessAiControlsMcpPortal = new cloudflare.ZeroTrustAccessAiControlsMcpPortal(\"example_zero_trust_access_ai_controls_mcp_portal\", {\n    accountId: \"a86a8f5c339544d7bdc89926de14fb8c\",\n    zeroTrustAccessAiControlsMcpPortalId: \"my-mcp-portal\",\n    hostname: \"exmaple.com\",\n    name: \"My MCP Portal\",\n    allowCodeMode: true,\n    description: \"This is my custom MCP Portal\",\n    secureWebGateway: false,\n    servers: [{\n        serverId: \"my-mcp-server\",\n        defaultDisabled: true,\n        onBehalf: true,\n        updatedPrompts: [{\n            name: \"name\",\n            alias: \"my-custom-alias\",\n            description: \"description\",\n            enabled: true,\n        }],\n        updatedTools: [{\n            name: \"name\",\n            alias: \"my-custom-alias\",\n            description: \"description\",\n            enabled: true,\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_ai_controls_mcp_portal = cloudflare.ZeroTrustAccessAiControlsMcpPortal(\"example_zero_trust_access_ai_controls_mcp_portal\",\n    account_id=\"a86a8f5c339544d7bdc89926de14fb8c\",\n    zero_trust_access_ai_controls_mcp_portal_id=\"my-mcp-portal\",\n    hostname=\"exmaple.com\",\n    name=\"My MCP Portal\",\n    allow_code_mode=True,\n    description=\"This is my custom MCP Portal\",\n    secure_web_gateway=False,\n    servers=[{\n        \"server_id\": \"my-mcp-server\",\n        \"default_disabled\": True,\n        \"on_behalf\": True,\n        \"updated_prompts\": [{\n            \"name\": \"name\",\n            \"alias\": \"my-custom-alias\",\n            \"description\": \"description\",\n            \"enabled\": True,\n        }],\n        \"updated_tools\": [{\n            \"name\": \"name\",\n            \"alias\": \"my-custom-alias\",\n            \"description\": \"description\",\n            \"enabled\": True,\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessAiControlsMcpPortal = new Cloudflare.Index.ZeroTrustAccessAiControlsMcpPortal(\"example_zero_trust_access_ai_controls_mcp_portal\", new()\n    {\n        AccountId = \"a86a8f5c339544d7bdc89926de14fb8c\",\n        ZeroTrustAccessAiControlsMcpPortalId = \"my-mcp-portal\",\n        Hostname = \"exmaple.com\",\n        Name = \"My MCP Portal\",\n        AllowCodeMode = true,\n        Description = \"This is my custom MCP Portal\",\n        SecureWebGateway = false,\n        Servers = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessAiControlsMcpPortalServerArgs\n            {\n                ServerId = \"my-mcp-server\",\n                DefaultDisabled = true,\n                OnBehalf = true,\n                UpdatedPrompts = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustAccessAiControlsMcpPortalServerUpdatedPromptArgs\n                    {\n                        Name = \"name\",\n                        Alias = \"my-custom-alias\",\n                        Description = \"description\",\n                        Enabled = true,\n                    },\n                },\n                UpdatedTools = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustAccessAiControlsMcpPortalServerUpdatedToolArgs\n                    {\n                        Name = \"name\",\n                        Alias = \"my-custom-alias\",\n                        Description = \"description\",\n                        Enabled = true,\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessAiControlsMcpPortal(ctx, \"example_zero_trust_access_ai_controls_mcp_portal\", \u0026cloudflare.ZeroTrustAccessAiControlsMcpPortalArgs{\n\t\t\tAccountId:                            pulumi.String(\"a86a8f5c339544d7bdc89926de14fb8c\"),\n\t\t\tZeroTrustAccessAiControlsMcpPortalId: pulumi.String(\"my-mcp-portal\"),\n\t\t\tHostname:                             pulumi.String(\"exmaple.com\"),\n\t\t\tName:                                 pulumi.String(\"My MCP Portal\"),\n\t\t\tAllowCodeMode:                        pulumi.Bool(true),\n\t\t\tDescription:                          pulumi.String(\"This is my custom MCP Portal\"),\n\t\t\tSecureWebGateway:                     pulumi.Bool(false),\n\t\t\tServers: cloudflare.ZeroTrustAccessAiControlsMcpPortalServerArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessAiControlsMcpPortalServerArgs{\n\t\t\t\t\tServerId:        pulumi.String(\"my-mcp-server\"),\n\t\t\t\t\tDefaultDisabled: pulumi.Bool(true),\n\t\t\t\t\tOnBehalf:        pulumi.Bool(true),\n\t\t\t\t\tUpdatedPrompts: cloudflare.ZeroTrustAccessAiControlsMcpPortalServerUpdatedPromptArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustAccessAiControlsMcpPortalServerUpdatedPromptArgs{\n\t\t\t\t\t\t\tName:        pulumi.String(\"name\"),\n\t\t\t\t\t\t\tAlias:       pulumi.String(\"my-custom-alias\"),\n\t\t\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUpdatedTools: cloudflare.ZeroTrustAccessAiControlsMcpPortalServerUpdatedToolArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustAccessAiControlsMcpPortalServerUpdatedToolArgs{\n\t\t\t\t\t\t\tName:        pulumi.String(\"name\"),\n\t\t\t\t\t\t\tAlias:       pulumi.String(\"my-custom-alias\"),\n\t\t\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessAiControlsMcpPortal;\nimport com.pulumi.cloudflare.ZeroTrustAccessAiControlsMcpPortalArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessAiControlsMcpPortalServerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessAiControlsMcpPortal = new ZeroTrustAccessAiControlsMcpPortal(\"exampleZeroTrustAccessAiControlsMcpPortal\", ZeroTrustAccessAiControlsMcpPortalArgs.builder()\n            .accountId(\"a86a8f5c339544d7bdc89926de14fb8c\")\n            .zeroTrustAccessAiControlsMcpPortalId(\"my-mcp-portal\")\n            .hostname(\"exmaple.com\")\n            .name(\"My MCP Portal\")\n            .allowCodeMode(true)\n            .description(\"This is my custom MCP Portal\")\n            .secureWebGateway(false)\n            .servers(ZeroTrustAccessAiControlsMcpPortalServerArgs.builder()\n                .serverId(\"my-mcp-server\")\n                .defaultDisabled(true)\n                .onBehalf(true)\n                .updatedPrompts(ZeroTrustAccessAiControlsMcpPortalServerUpdatedPromptArgs.builder()\n                    .name(\"name\")\n                    .alias(\"my-custom-alias\")\n                    .description(\"description\")\n                    .enabled(true)\n                    .build())\n                .updatedTools(ZeroTrustAccessAiControlsMcpPortalServerUpdatedToolArgs.builder()\n                    .name(\"name\")\n                    .alias(\"my-custom-alias\")\n                    .description(\"description\")\n                    .enabled(true)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessAiControlsMcpPortal:\n    type: cloudflare:ZeroTrustAccessAiControlsMcpPortal\n    name: example_zero_trust_access_ai_controls_mcp_portal\n    properties:\n      accountId: a86a8f5c339544d7bdc89926de14fb8c\n      zeroTrustAccessAiControlsMcpPortalId: my-mcp-portal\n      hostname: exmaple.com\n      name: My MCP Portal\n      allowCodeMode: true\n      description: This is my custom MCP Portal\n      secureWebGateway: false\n      servers:\n        - serverId: my-mcp-server\n          defaultDisabled: true\n          onBehalf: true\n          updatedPrompts:\n            - name: name\n              alias: my-custom-alias\n              description: description\n              enabled: true\n          updatedTools:\n            - name: name\n              alias: my-custom-alias\n              description: description\n              enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessAiControlsMcpPortal:ZeroTrustAccessAiControlsMcpPortal example '\u003caccount_id\u003e/\u003cid\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "allowCodeMode": {
                    "type": "boolean",
                    "description": "Allow remote code execution in Dynamic Workers (beta)\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "secureWebGateway": {
                    "type": "boolean",
                    "description": "Route outbound MCP traffic through Zero Trust Secure Web Gateway\n"
                },
                "servers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServer:ZeroTrustAccessAiControlsMcpPortalServer"
                    }
                },
                "zeroTrustAccessAiControlsMcpPortalId": {
                    "type": "string",
                    "description": "portal id\n"
                }
            },
            "required": [
                "allowCodeMode",
                "createdAt",
                "createdBy",
                "hostname",
                "zeroTrustAccessAiControlsMcpPortalId",
                "modifiedAt",
                "modifiedBy",
                "name",
                "secureWebGateway",
                "servers"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "allowCodeMode": {
                    "type": "boolean",
                    "description": "Allow remote code execution in Dynamic Workers (beta)\n"
                },
                "description": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "secureWebGateway": {
                    "type": "boolean",
                    "description": "Route outbound MCP traffic through Zero Trust Secure Web Gateway\n"
                },
                "servers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServer:ZeroTrustAccessAiControlsMcpPortalServer"
                    }
                },
                "zeroTrustAccessAiControlsMcpPortalId": {
                    "type": "string",
                    "description": "portal id\n"
                }
            },
            "requiredInputs": [
                "hostname",
                "zeroTrustAccessAiControlsMcpPortalId",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessAiControlsMcpPortal resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "allowCodeMode": {
                        "type": "boolean",
                        "description": "Allow remote code execution in Dynamic Workers (beta)\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "hostname": {
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "secureWebGateway": {
                        "type": "boolean",
                        "description": "Route outbound MCP traffic through Zero Trust Secure Web Gateway\n"
                    },
                    "servers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpPortalServer:ZeroTrustAccessAiControlsMcpPortalServer"
                        }
                    },
                    "zeroTrustAccessAiControlsMcpPortalId": {
                        "type": "string",
                        "description": "portal id\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustAccessAiControlsMcpServer:ZeroTrustAccessAiControlsMcpServer": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessAiControlsMcpServer = new cloudflare.ZeroTrustAccessAiControlsMcpServer(\"example_zero_trust_access_ai_controls_mcp_server\", {\n    accountId: \"a86a8f5c339544d7bdc89926de14fb8c\",\n    zeroTrustAccessAiControlsMcpServerId: \"my-mcp-server\",\n    authType: \"unauthenticated\",\n    hostname: \"https://example.com/mcp\",\n    name: \"My MCP Server\",\n    authCredentials: \"auth_credentials\",\n    description: \"This is one remote mcp server\",\n    updatedPrompts: [{\n        name: \"name\",\n        alias: \"my-custom-alias\",\n        description: \"description\",\n        enabled: true,\n    }],\n    updatedTools: [{\n        name: \"name\",\n        alias: \"my-custom-alias\",\n        description: \"description\",\n        enabled: true,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_ai_controls_mcp_server = cloudflare.ZeroTrustAccessAiControlsMcpServer(\"example_zero_trust_access_ai_controls_mcp_server\",\n    account_id=\"a86a8f5c339544d7bdc89926de14fb8c\",\n    zero_trust_access_ai_controls_mcp_server_id=\"my-mcp-server\",\n    auth_type=\"unauthenticated\",\n    hostname=\"https://example.com/mcp\",\n    name=\"My MCP Server\",\n    auth_credentials=\"auth_credentials\",\n    description=\"This is one remote mcp server\",\n    updated_prompts=[{\n        \"name\": \"name\",\n        \"alias\": \"my-custom-alias\",\n        \"description\": \"description\",\n        \"enabled\": True,\n    }],\n    updated_tools=[{\n        \"name\": \"name\",\n        \"alias\": \"my-custom-alias\",\n        \"description\": \"description\",\n        \"enabled\": True,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessAiControlsMcpServer = new Cloudflare.Index.ZeroTrustAccessAiControlsMcpServer(\"example_zero_trust_access_ai_controls_mcp_server\", new()\n    {\n        AccountId = \"a86a8f5c339544d7bdc89926de14fb8c\",\n        ZeroTrustAccessAiControlsMcpServerId = \"my-mcp-server\",\n        AuthType = \"unauthenticated\",\n        Hostname = \"https://example.com/mcp\",\n        Name = \"My MCP Server\",\n        AuthCredentials = \"auth_credentials\",\n        Description = \"This is one remote mcp server\",\n        UpdatedPrompts = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessAiControlsMcpServerUpdatedPromptArgs\n            {\n                Name = \"name\",\n                Alias = \"my-custom-alias\",\n                Description = \"description\",\n                Enabled = true,\n            },\n        },\n        UpdatedTools = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessAiControlsMcpServerUpdatedToolArgs\n            {\n                Name = \"name\",\n                Alias = \"my-custom-alias\",\n                Description = \"description\",\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessAiControlsMcpServer(ctx, \"example_zero_trust_access_ai_controls_mcp_server\", \u0026cloudflare.ZeroTrustAccessAiControlsMcpServerArgs{\n\t\t\tAccountId:                            pulumi.String(\"a86a8f5c339544d7bdc89926de14fb8c\"),\n\t\t\tZeroTrustAccessAiControlsMcpServerId: pulumi.String(\"my-mcp-server\"),\n\t\t\tAuthType:                             pulumi.String(\"unauthenticated\"),\n\t\t\tHostname:                             pulumi.String(\"https://example.com/mcp\"),\n\t\t\tName:                                 pulumi.String(\"My MCP Server\"),\n\t\t\tAuthCredentials:                      pulumi.String(\"auth_credentials\"),\n\t\t\tDescription:                          pulumi.String(\"This is one remote mcp server\"),\n\t\t\tUpdatedPrompts: cloudflare.ZeroTrustAccessAiControlsMcpServerUpdatedPromptArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessAiControlsMcpServerUpdatedPromptArgs{\n\t\t\t\t\tName:        pulumi.String(\"name\"),\n\t\t\t\t\tAlias:       pulumi.String(\"my-custom-alias\"),\n\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tUpdatedTools: cloudflare.ZeroTrustAccessAiControlsMcpServerUpdatedToolArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessAiControlsMcpServerUpdatedToolArgs{\n\t\t\t\t\tName:        pulumi.String(\"name\"),\n\t\t\t\t\tAlias:       pulumi.String(\"my-custom-alias\"),\n\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessAiControlsMcpServer;\nimport com.pulumi.cloudflare.ZeroTrustAccessAiControlsMcpServerArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessAiControlsMcpServerUpdatedPromptArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessAiControlsMcpServerUpdatedToolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessAiControlsMcpServer = new ZeroTrustAccessAiControlsMcpServer(\"exampleZeroTrustAccessAiControlsMcpServer\", ZeroTrustAccessAiControlsMcpServerArgs.builder()\n            .accountId(\"a86a8f5c339544d7bdc89926de14fb8c\")\n            .zeroTrustAccessAiControlsMcpServerId(\"my-mcp-server\")\n            .authType(\"unauthenticated\")\n            .hostname(\"https://example.com/mcp\")\n            .name(\"My MCP Server\")\n            .authCredentials(\"auth_credentials\")\n            .description(\"This is one remote mcp server\")\n            .updatedPrompts(ZeroTrustAccessAiControlsMcpServerUpdatedPromptArgs.builder()\n                .name(\"name\")\n                .alias(\"my-custom-alias\")\n                .description(\"description\")\n                .enabled(true)\n                .build())\n            .updatedTools(ZeroTrustAccessAiControlsMcpServerUpdatedToolArgs.builder()\n                .name(\"name\")\n                .alias(\"my-custom-alias\")\n                .description(\"description\")\n                .enabled(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessAiControlsMcpServer:\n    type: cloudflare:ZeroTrustAccessAiControlsMcpServer\n    name: example_zero_trust_access_ai_controls_mcp_server\n    properties:\n      accountId: a86a8f5c339544d7bdc89926de14fb8c\n      zeroTrustAccessAiControlsMcpServerId: my-mcp-server\n      authType: unauthenticated\n      hostname: https://example.com/mcp\n      name: My MCP Server\n      authCredentials: auth_credentials\n      description: This is one remote mcp server\n      updatedPrompts:\n        - name: name\n          alias: my-custom-alias\n          description: description\n          enabled: true\n      updatedTools:\n        - name: name\n          alias: my-custom-alias\n          description: description\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessAiControlsMcpServer:ZeroTrustAccessAiControlsMcpServer example '\u003caccount_id\u003e/\u003cid\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "authCredentials": {
                    "type": "string",
                    "secret": true
                },
                "authType": {
                    "type": "string",
                    "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "createdBy": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "error": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "lastSuccessfulSync": {
                    "type": "string"
                },
                "lastSynced": {
                    "type": "string"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "modifiedBy": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "prompts": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "status": {
                    "type": "string"
                },
                "tools": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "updatedPrompts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedPrompt:ZeroTrustAccessAiControlsMcpServerUpdatedPrompt"
                    }
                },
                "updatedTools": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedTool:ZeroTrustAccessAiControlsMcpServerUpdatedTool"
                    }
                },
                "zeroTrustAccessAiControlsMcpServerId": {
                    "type": "string",
                    "description": "server id\n"
                }
            },
            "required": [
                "authType",
                "createdAt",
                "createdBy",
                "error",
                "hostname",
                "zeroTrustAccessAiControlsMcpServerId",
                "lastSuccessfulSync",
                "lastSynced",
                "modifiedAt",
                "modifiedBy",
                "name",
                "prompts",
                "status",
                "tools"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "authCredentials": {
                    "type": "string",
                    "secret": true
                },
                "authType": {
                    "type": "string",
                    "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n"
                },
                "description": {
                    "type": "string"
                },
                "hostname": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "updatedPrompts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedPrompt:ZeroTrustAccessAiControlsMcpServerUpdatedPrompt"
                    }
                },
                "updatedTools": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedTool:ZeroTrustAccessAiControlsMcpServerUpdatedTool"
                    }
                },
                "zeroTrustAccessAiControlsMcpServerId": {
                    "type": "string",
                    "description": "server id\n"
                }
            },
            "requiredInputs": [
                "authType",
                "hostname",
                "zeroTrustAccessAiControlsMcpServerId",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessAiControlsMcpServer resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "authCredentials": {
                        "type": "string",
                        "secret": true
                    },
                    "authType": {
                        "type": "string",
                        "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "error": {
                        "type": "string"
                    },
                    "hostname": {
                        "type": "string"
                    },
                    "lastSuccessfulSync": {
                        "type": "string"
                    },
                    "lastSynced": {
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "prompts": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "tools": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    },
                    "updatedPrompts": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedPrompt:ZeroTrustAccessAiControlsMcpServerUpdatedPrompt"
                        }
                    },
                    "updatedTools": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessAiControlsMcpServerUpdatedTool:ZeroTrustAccessAiControlsMcpServerUpdatedTool"
                        }
                    },
                    "zeroTrustAccessAiControlsMcpServerId": {
                        "type": "string",
                        "description": "server id\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustAccessApplication:ZeroTrustAccessApplication": {
            "description": "## Example Usage\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessApplication:ZeroTrustAccessApplication example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003capp_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                },
                "allowIframe": {
                    "type": "boolean",
                    "description": "Enables loading application content in an iFrame.\n"
                },
                "allowedIdps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                },
                "appLauncherLogoUrl": {
                    "type": "string",
                    "description": "The image URL of the logo shown in the App Launcher header.\n"
                },
                "appLauncherVisible": {
                    "type": "boolean",
                    "description": "Displays the application in the App Launcher.\n"
                },
                "aud": {
                    "type": "string",
                    "description": "Audience tag.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                },
                "bgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher page.\n"
                },
                "corsHeaders": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationCorsHeaders:ZeroTrustAccessApplicationCorsHeaders"
                },
                "customDenyMessage": {
                    "type": "string",
                    "description": "The custom error message shown to a user when they are denied access to the application.\n"
                },
                "customDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                },
                "customNonIdentityDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                },
                "customPages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The custom pages that will be displayed when applicable for this application\n"
                },
                "destinations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationDestination:ZeroTrustAccessApplicationDestination"
                    },
                    "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                },
                "enableBindingCookie": {
                    "type": "boolean",
                    "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                },
                "footerLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationFooterLink:ZeroTrustAccessApplicationFooterLink"
                    },
                    "description": "The links in the App Launcher footer.\n"
                },
                "headerBgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher header.\n"
                },
                "httpOnlyCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                },
                "landingPageDesign": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationLandingPageDesign:ZeroTrustAccessApplicationLandingPageDesign",
                    "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                },
                "logoUrl": {
                    "type": "string",
                    "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationMfaConfig:ZeroTrustAccessApplicationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the application.\n"
                },
                "oauthConfiguration": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationOauthConfiguration:ZeroTrustAccessApplicationOauthConfiguration",
                    "description": "Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. This feature is currently in beta.\n"
                },
                "optionsPreflightBypass": {
                    "type": "boolean",
                    "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                },
                "pathCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicy:ZeroTrustAccessApplicationPolicy"
                    },
                    "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application.\n"
                },
                "readServiceTokensFromHeader": {
                    "type": "string",
                    "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                },
                "saasApp": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasApp:ZeroTrustAccessApplicationSaasApp"
                },
                "sameSiteCookieAttribute": {
                    "type": "string",
                    "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationScimConfig:ZeroTrustAccessApplicationScimConfig",
                    "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                },
                "selfHostedDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "serviceAuth401Redirect": {
                    "type": "boolean",
                    "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                },
                "skipAppLauncherLoginPage": {
                    "type": "boolean",
                    "description": "Determines when to skip the App Launcher landing page.\n"
                },
                "skipInterstitial": {
                    "type": "boolean",
                    "description": "Enables automatic authentication through cloudflared.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                },
                "targetCriterias": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationTargetCriteria:ZeroTrustAccessApplicationTargetCriteria"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\", \u003cspan pulumi-lang-nodejs=\"\"proxyEndpoint\"\" pulumi-lang-dotnet=\"\"ProxyEndpoint\"\" pulumi-lang-go=\"\"proxyEndpoint\"\" pulumi-lang-python=\"\"proxy_endpoint\"\" pulumi-lang-yaml=\"\"proxyEndpoint\"\" pulumi-lang-java=\"\"proxyEndpoint\"\"\u003e\"proxyEndpoint\"\u003c/span\u003e.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "appLauncherVisible",
                "aud",
                "destinations",
                "domain",
                "httpOnlyCookieAttribute",
                "name",
                "selfHostedDomains",
                "sessionDuration",
                "skipAppLauncherLoginPage",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                },
                "allowIframe": {
                    "type": "boolean",
                    "description": "Enables loading application content in an iFrame.\n"
                },
                "allowedIdps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                },
                "appLauncherLogoUrl": {
                    "type": "string",
                    "description": "The image URL of the logo shown in the App Launcher header.\n"
                },
                "appLauncherVisible": {
                    "type": "boolean",
                    "description": "Displays the application in the App Launcher.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                },
                "bgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher page.\n"
                },
                "corsHeaders": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationCorsHeaders:ZeroTrustAccessApplicationCorsHeaders"
                },
                "customDenyMessage": {
                    "type": "string",
                    "description": "The custom error message shown to a user when they are denied access to the application.\n"
                },
                "customDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                },
                "customNonIdentityDenyUrl": {
                    "type": "string",
                    "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                },
                "customPages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The custom pages that will be displayed when applicable for this application\n"
                },
                "destinations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationDestination:ZeroTrustAccessApplicationDestination"
                    },
                    "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                },
                "domain": {
                    "type": "string",
                    "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                },
                "enableBindingCookie": {
                    "type": "boolean",
                    "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                },
                "footerLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationFooterLink:ZeroTrustAccessApplicationFooterLink"
                    },
                    "description": "The links in the App Launcher footer.\n"
                },
                "headerBgColor": {
                    "type": "string",
                    "description": "The background color of the App Launcher header.\n"
                },
                "httpOnlyCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                },
                "landingPageDesign": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationLandingPageDesign:ZeroTrustAccessApplicationLandingPageDesign",
                    "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                },
                "logoUrl": {
                    "type": "string",
                    "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationMfaConfig:ZeroTrustAccessApplicationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the application.\n"
                },
                "oauthConfiguration": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationOauthConfiguration:ZeroTrustAccessApplicationOauthConfiguration",
                    "description": "Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. This feature is currently in beta.\n"
                },
                "optionsPreflightBypass": {
                    "type": "boolean",
                    "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                },
                "pathCookieAttribute": {
                    "type": "boolean",
                    "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                },
                "policies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicy:ZeroTrustAccessApplicationPolicy"
                    },
                    "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application.\n"
                },
                "readServiceTokensFromHeader": {
                    "type": "string",
                    "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                },
                "saasApp": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasApp:ZeroTrustAccessApplicationSaasApp"
                },
                "sameSiteCookieAttribute": {
                    "type": "string",
                    "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationScimConfig:ZeroTrustAccessApplicationScimConfig",
                    "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                },
                "selfHostedDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "serviceAuth401Redirect": {
                    "type": "boolean",
                    "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                },
                "skipAppLauncherLoginPage": {
                    "type": "boolean",
                    "description": "Determines when to skip the App Launcher landing page.\n"
                },
                "skipInterstitial": {
                    "type": "boolean",
                    "description": "Enables automatic authentication through cloudflared.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                },
                "targetCriterias": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationTargetCriteria:ZeroTrustAccessApplicationTargetCriteria"
                    }
                },
                "type": {
                    "type": "string",
                    "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\", \u003cspan pulumi-lang-nodejs=\"\"proxyEndpoint\"\" pulumi-lang-dotnet=\"\"ProxyEndpoint\"\" pulumi-lang-go=\"\"proxyEndpoint\"\" pulumi-lang-python=\"\"proxy_endpoint\"\" pulumi-lang-yaml=\"\"proxyEndpoint\"\" pulumi-lang-java=\"\"proxyEndpoint\"\"\u003e\"proxyEndpoint\"\u003c/span\u003e.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessApplication resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "allowAuthenticateViaWarp": {
                        "type": "boolean",
                        "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n"
                    },
                    "allowIframe": {
                        "type": "boolean",
                        "description": "Enables loading application content in an iFrame.\n"
                    },
                    "allowedIdps": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n"
                    },
                    "appLauncherLogoUrl": {
                        "type": "string",
                        "description": "The image URL of the logo shown in the App Launcher header.\n"
                    },
                    "appLauncherVisible": {
                        "type": "boolean",
                        "description": "Displays the application in the App Launcher.\n"
                    },
                    "aud": {
                        "type": "string",
                        "description": "Audience tag.\n"
                    },
                    "autoRedirectToIdentity": {
                        "type": "boolean",
                        "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n"
                    },
                    "bgColor": {
                        "type": "string",
                        "description": "The background color of the App Launcher page.\n"
                    },
                    "corsHeaders": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationCorsHeaders:ZeroTrustAccessApplicationCorsHeaders"
                    },
                    "customDenyMessage": {
                        "type": "string",
                        "description": "The custom error message shown to a user when they are denied access to the application.\n"
                    },
                    "customDenyUrl": {
                        "type": "string",
                        "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n"
                    },
                    "customNonIdentityDenyUrl": {
                        "type": "string",
                        "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n"
                    },
                    "customPages": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The custom pages that will be displayed when applicable for this application\n"
                    },
                    "destinations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationDestination:ZeroTrustAccessApplicationDestination"
                        },
                        "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n"
                    },
                    "enableBindingCookie": {
                        "type": "boolean",
                        "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n"
                    },
                    "footerLinks": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationFooterLink:ZeroTrustAccessApplicationFooterLink"
                        },
                        "description": "The links in the App Launcher footer.\n"
                    },
                    "headerBgColor": {
                        "type": "string",
                        "description": "The background color of the App Launcher header.\n"
                    },
                    "httpOnlyCookieAttribute": {
                        "type": "boolean",
                        "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n"
                    },
                    "landingPageDesign": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationLandingPageDesign:ZeroTrustAccessApplicationLandingPageDesign",
                        "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                    },
                    "logoUrl": {
                        "type": "string",
                        "description": "The image URL for the logo shown in the App Launcher dashboard.\n"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationMfaConfig:ZeroTrustAccessApplicationMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the application.\n"
                    },
                    "oauthConfiguration": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationOauthConfiguration:ZeroTrustAccessApplicationOauthConfiguration",
                        "description": "Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. This feature is currently in beta.\n"
                    },
                    "optionsPreflightBypass": {
                        "type": "boolean",
                        "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n"
                    },
                    "pathCookieAttribute": {
                        "type": "boolean",
                        "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n"
                    },
                    "policies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationPolicy:ZeroTrustAccessApplicationPolicy"
                        },
                        "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application.\n"
                    },
                    "readServiceTokensFromHeader": {
                        "type": "string",
                        "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n"
                    },
                    "saasApp": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationSaasApp:ZeroTrustAccessApplicationSaasApp"
                    },
                    "sameSiteCookieAttribute": {
                        "type": "string",
                        "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n"
                    },
                    "scimConfig": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationScimConfig:ZeroTrustAccessApplicationScimConfig",
                        "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                    },
                    "selfHostedDomains": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "serviceAuth401Redirect": {
                        "type": "boolean",
                        "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n"
                    },
                    "sessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n"
                    },
                    "skipAppLauncherLoginPage": {
                        "type": "boolean",
                        "description": "Determines when to skip the App Launcher landing page.\n"
                    },
                    "skipInterstitial": {
                        "type": "boolean",
                        "description": "Enables automatic authentication through cloudflared.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n"
                    },
                    "targetCriterias": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessApplicationTargetCriteria:ZeroTrustAccessApplicationTargetCriteria"
                        }
                    },
                    "type": {
                        "type": "string",
                        "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\", \u003cspan pulumi-lang-nodejs=\"\"proxyEndpoint\"\" pulumi-lang-dotnet=\"\"ProxyEndpoint\"\" pulumi-lang-go=\"\"proxyEndpoint\"\" pulumi-lang-python=\"\"proxy_endpoint\"\" pulumi-lang-yaml=\"\"proxyEndpoint\"\" pulumi-lang-java=\"\"proxyEndpoint\"\"\u003e\"proxyEndpoint\"\u003c/span\u003e.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessApplication:AccessApplication"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessCustomPage:ZeroTrustAccessCustomPage": {
            "description": "Accepted Permissions\n\n- `Access: Custom Pages Read`\n- `Access: Custom Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessCustomPage = new cloudflare.ZeroTrustAccessCustomPage(\"example_zero_trust_access_custom_page\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    customHtml: \"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\",\n    name: \"name\",\n    type: \"identity_denied\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_custom_page = cloudflare.ZeroTrustAccessCustomPage(\"example_zero_trust_access_custom_page\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    custom_html=\"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\",\n    name=\"name\",\n    type=\"identity_denied\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessCustomPage = new Cloudflare.Index.ZeroTrustAccessCustomPage(\"example_zero_trust_access_custom_page\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CustomHtml = \"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\",\n        Name = \"name\",\n        Type = \"identity_denied\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessCustomPage(ctx, \"example_zero_trust_access_custom_page\", \u0026cloudflare.ZeroTrustAccessCustomPageArgs{\n\t\t\tAccountId:  pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCustomHtml: pulumi.String(\"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\"),\n\t\t\tName:       pulumi.String(\"name\"),\n\t\t\tType:       pulumi.String(\"identity_denied\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessCustomPage;\nimport com.pulumi.cloudflare.ZeroTrustAccessCustomPageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessCustomPage = new ZeroTrustAccessCustomPage(\"exampleZeroTrustAccessCustomPage\", ZeroTrustAccessCustomPageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .customHtml(\"\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\")\n            .name(\"name\")\n            .type(\"identity_denied\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessCustomPage:\n    type: cloudflare:ZeroTrustAccessCustomPage\n    name: example_zero_trust_access_custom_page\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      customHtml: \u003chtml\u003e\u003cbody\u003e\u003ch1\u003eAccess Denied\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e\n      name: name\n      type: identity_denied\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessCustomPage:ZeroTrustAccessCustomPage example '\u003caccount_id\u003e/\u003ccustom_page_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "customHtml": {
                    "type": "string",
                    "description": "Custom page HTML.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Custom page name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                },
                "uid": {
                    "type": "string",
                    "description": "UUID.\n"
                }
            },
            "required": [
                "customHtml",
                "name",
                "type",
                "uid"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "customHtml": {
                    "type": "string",
                    "description": "Custom page HTML.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Custom page name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                }
            },
            "requiredInputs": [
                "customHtml",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessCustomPage resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "customHtml": {
                        "type": "string",
                        "description": "Custom page HTML.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Custom page name.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n"
                    },
                    "uid": {
                        "type": "string",
                        "description": "UUID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessCustomPage:AccessCustomPage"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessGroup:ZeroTrustAccessGroup": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessGroup = new cloudflare.ZeroTrustAccessGroup(\"example_zero_trust_access_group\", {\n    includes: [{\n        certificate: {},\n    }],\n    name: \"Allow devs\",\n    zoneId: \"zone_id\",\n    excludes: [{\n        certificate: {},\n    }],\n    isDefault: true,\n    requires: [{\n        certificate: {},\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_group = cloudflare.ZeroTrustAccessGroup(\"example_zero_trust_access_group\",\n    includes=[{\n        \"certificate\": {},\n    }],\n    name=\"Allow devs\",\n    zone_id=\"zone_id\",\n    excludes=[{\n        \"certificate\": {},\n    }],\n    is_default=True,\n    requires=[{\n        \"certificate\": {},\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessGroup = new Cloudflare.Index.ZeroTrustAccessGroup(\"example_zero_trust_access_group\", new()\n    {\n        Includes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessGroupIncludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        Name = \"Allow devs\",\n        ZoneId = \"zone_id\",\n        Excludes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessGroupExcludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        IsDefault = true,\n        Requires = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessGroupRequireArgs\n            {\n                Certificate = null,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessGroup(ctx, \"example_zero_trust_access_group\", \u0026cloudflare.ZeroTrustAccessGroupArgs{\n\t\t\tIncludes: cloudflare.ZeroTrustAccessGroupIncludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessGroupIncludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessGroupIncludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:   pulumi.String(\"Allow devs\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t\tExcludes: cloudflare.ZeroTrustAccessGroupExcludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessGroupExcludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessGroupExcludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t\tRequires: cloudflare.ZeroTrustAccessGroupRequireArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessGroupRequireArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessGroupRequireCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessGroup;\nimport com.pulumi.cloudflare.ZeroTrustAccessGroupArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupIncludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupIncludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupExcludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupExcludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupRequireArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessGroupRequireCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessGroup = new ZeroTrustAccessGroup(\"exampleZeroTrustAccessGroup\", ZeroTrustAccessGroupArgs.builder()\n            .includes(ZeroTrustAccessGroupIncludeArgs.builder()\n                .certificate(ZeroTrustAccessGroupIncludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .name(\"Allow devs\")\n            .zoneId(\"zone_id\")\n            .excludes(ZeroTrustAccessGroupExcludeArgs.builder()\n                .certificate(ZeroTrustAccessGroupExcludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .isDefault(true)\n            .requires(ZeroTrustAccessGroupRequireArgs.builder()\n                .certificate(ZeroTrustAccessGroupRequireCertificateArgs.builder()\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessGroup:\n    type: cloudflare:ZeroTrustAccessGroup\n    name: example_zero_trust_access_group\n    properties:\n      includes:\n        - certificate: {}\n      name: Allow devs\n      zoneId: zone_id\n      excludes:\n        - certificate: {}\n      isDefault: true\n      requires:\n        - certificate: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessGroup:ZeroTrustAccessGroup example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cgroup_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExclude:ZeroTrustAccessGroupExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupInclude:ZeroTrustAccessGroupInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "Whether this is the default group\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access group.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequire:ZeroTrustAccessGroupRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "includes",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExclude:ZeroTrustAccessGroupExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupInclude:ZeroTrustAccessGroupInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "Whether this is the default group\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access group.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequire:ZeroTrustAccessGroupRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "includes",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessGroup resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "excludes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupExclude:ZeroTrustAccessGroupExclude"
                        },
                        "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n"
                    },
                    "includes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupInclude:ZeroTrustAccessGroupInclude"
                        },
                        "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                    },
                    "isDefault": {
                        "type": "boolean",
                        "description": "Whether this is the default group\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Access group.\n"
                    },
                    "requires": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessGroupRequire:ZeroTrustAccessGroupRequire"
                        },
                        "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessGroup:AccessGroup"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessIdentityProvider:ZeroTrustAccessIdentityProvider": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessIdentityProvider = new cloudflare.ZeroTrustAccessIdentityProvider(\"example_zero_trust_access_identity_provider\", {\n    config: {\n        claims: [\n            \"email_verified\",\n            \"preferred_username\",\n            \"custom_claim_name\",\n        ],\n        clientId: \"\u003cyour client id\u003e\",\n        clientSecret: \"\u003cyour client secret\u003e\",\n        conditionalAccessEnabled: true,\n        directoryId: \"\u003cyour azure directory uuid\u003e\",\n        emailClaimName: \"custom_claim_name\",\n        prompt: \"login\",\n        supportGroups: true,\n    },\n    name: \"Widget Corps IDP\",\n    type: \"onetimepin\",\n    zoneId: \"zone_id\",\n    scimConfig: {\n        enabled: true,\n        identityUpdateBehavior: \"automatic\",\n        seatDeprovision: true,\n        userDeprovision: true,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_identity_provider = cloudflare.ZeroTrustAccessIdentityProvider(\"example_zero_trust_access_identity_provider\",\n    config={\n        \"claims\": [\n            \"email_verified\",\n            \"preferred_username\",\n            \"custom_claim_name\",\n        ],\n        \"client_id\": \"\u003cyour client id\u003e\",\n        \"client_secret\": \"\u003cyour client secret\u003e\",\n        \"conditional_access_enabled\": True,\n        \"directory_id\": \"\u003cyour azure directory uuid\u003e\",\n        \"email_claim_name\": \"custom_claim_name\",\n        \"prompt\": \"login\",\n        \"support_groups\": True,\n    },\n    name=\"Widget Corps IDP\",\n    type=\"onetimepin\",\n    zone_id=\"zone_id\",\n    scim_config={\n        \"enabled\": True,\n        \"identity_update_behavior\": \"automatic\",\n        \"seat_deprovision\": True,\n        \"user_deprovision\": True,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessIdentityProvider = new Cloudflare.Index.ZeroTrustAccessIdentityProvider(\"example_zero_trust_access_identity_provider\", new()\n    {\n        Config = new Cloudflare.Inputs.ZeroTrustAccessIdentityProviderConfigArgs\n        {\n            Claims = new[]\n            {\n                \"email_verified\",\n                \"preferred_username\",\n                \"custom_claim_name\",\n            },\n            ClientId = \"\u003cyour client id\u003e\",\n            ClientSecret = \"\u003cyour client secret\u003e\",\n            ConditionalAccessEnabled = true,\n            DirectoryId = \"\u003cyour azure directory uuid\u003e\",\n            EmailClaimName = \"custom_claim_name\",\n            Prompt = \"login\",\n            SupportGroups = true,\n        },\n        Name = \"Widget Corps IDP\",\n        Type = \"onetimepin\",\n        ZoneId = \"zone_id\",\n        ScimConfig = new Cloudflare.Inputs.ZeroTrustAccessIdentityProviderScimConfigArgs\n        {\n            Enabled = true,\n            IdentityUpdateBehavior = \"automatic\",\n            SeatDeprovision = true,\n            UserDeprovision = true,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessIdentityProvider(ctx, \"example_zero_trust_access_identity_provider\", \u0026cloudflare.ZeroTrustAccessIdentityProviderArgs{\n\t\t\tConfig: \u0026cloudflare.ZeroTrustAccessIdentityProviderConfigArgs{\n\t\t\t\tClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"email_verified\"),\n\t\t\t\t\tpulumi.String(\"preferred_username\"),\n\t\t\t\t\tpulumi.String(\"custom_claim_name\"),\n\t\t\t\t},\n\t\t\t\tClientId:                 pulumi.String(\"\u003cyour client id\u003e\"),\n\t\t\t\tClientSecret:             pulumi.String(\"\u003cyour client secret\u003e\"),\n\t\t\t\tConditionalAccessEnabled: pulumi.Bool(true),\n\t\t\t\tDirectoryId:              pulumi.String(\"\u003cyour azure directory uuid\u003e\"),\n\t\t\t\tEmailClaimName:           pulumi.String(\"custom_claim_name\"),\n\t\t\t\tPrompt:                   pulumi.String(\"login\"),\n\t\t\t\tSupportGroups:            pulumi.Bool(true),\n\t\t\t},\n\t\t\tName:   pulumi.String(\"Widget Corps IDP\"),\n\t\t\tType:   pulumi.String(\"onetimepin\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t\tScimConfig: \u0026cloudflare.ZeroTrustAccessIdentityProviderScimConfigArgs{\n\t\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\t\tIdentityUpdateBehavior: pulumi.String(\"automatic\"),\n\t\t\t\tSeatDeprovision:        pulumi.Bool(true),\n\t\t\t\tUserDeprovision:        pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessIdentityProvider;\nimport com.pulumi.cloudflare.ZeroTrustAccessIdentityProviderArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessIdentityProviderConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessIdentityProviderScimConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessIdentityProvider = new ZeroTrustAccessIdentityProvider(\"exampleZeroTrustAccessIdentityProvider\", ZeroTrustAccessIdentityProviderArgs.builder()\n            .config(ZeroTrustAccessIdentityProviderConfigArgs.builder()\n                .claims(                \n                    \"email_verified\",\n                    \"preferred_username\",\n                    \"custom_claim_name\")\n                .clientId(\"\u003cyour client id\u003e\")\n                .clientSecret(\"\u003cyour client secret\u003e\")\n                .conditionalAccessEnabled(true)\n                .directoryId(\"\u003cyour azure directory uuid\u003e\")\n                .emailClaimName(\"custom_claim_name\")\n                .prompt(\"login\")\n                .supportGroups(true)\n                .build())\n            .name(\"Widget Corps IDP\")\n            .type(\"onetimepin\")\n            .zoneId(\"zone_id\")\n            .scimConfig(ZeroTrustAccessIdentityProviderScimConfigArgs.builder()\n                .enabled(true)\n                .identityUpdateBehavior(\"automatic\")\n                .seatDeprovision(true)\n                .userDeprovision(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessIdentityProvider:\n    type: cloudflare:ZeroTrustAccessIdentityProvider\n    name: example_zero_trust_access_identity_provider\n    properties:\n      config:\n        claims:\n          - email_verified\n          - preferred_username\n          - custom_claim_name\n        clientId: \u003cyour client id\u003e\n        clientSecret: \u003cyour client secret\u003e\n        conditionalAccessEnabled: true\n        directoryId: \u003cyour azure directory uuid\u003e\n        emailClaimName: custom_claim_name\n        prompt: login\n        supportGroups: true\n      name: Widget Corps IDP\n      type: onetimepin\n      zoneId: zone_id\n      scimConfig:\n        enabled: true\n        identityUpdateBehavior: automatic\n        seatDeprovision: true\n        userDeprovision: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessIdentityProvider:ZeroTrustAccessIdentityProvider example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cidentity_provider_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderConfig:ZeroTrustAccessIdentityProviderConfig",
                    "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the identity provider, shown to users on the login page.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderScimConfig:ZeroTrustAccessIdentityProviderScimConfig",
                    "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "config",
                "name",
                "scimConfig",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderConfig:ZeroTrustAccessIdentityProviderConfig",
                    "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the identity provider, shown to users on the login page.\n"
                },
                "scimConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderScimConfig:ZeroTrustAccessIdentityProviderScimConfig",
                    "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "config",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessIdentityProvider resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderConfig:ZeroTrustAccessIdentityProviderConfig",
                        "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the identity provider, shown to users on the login page.\n"
                    },
                    "scimConfig": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessIdentityProviderScimConfig:ZeroTrustAccessIdentityProviderScimConfig",
                        "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessIdentityProvider:AccessIdentityProvider"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessInfrastructureTarget:ZeroTrustAccessInfrastructureTarget": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessInfrastructureTarget = new cloudflare.ZeroTrustAccessInfrastructureTarget(\"example_zero_trust_access_infrastructure_target\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"infra-access-target\",\n    ip: {\n        ipv4: {\n            ipAddr: \"187.26.29.249\",\n            virtualNetworkId: \"c77b744e-acc8-428f-9257-6878c046ed55\",\n        },\n        ipv6: {\n            ipAddr: \"64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0\",\n            virtualNetworkId: \"c77b744e-acc8-428f-9257-6878c046ed55\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_infrastructure_target = cloudflare.ZeroTrustAccessInfrastructureTarget(\"example_zero_trust_access_infrastructure_target\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"infra-access-target\",\n    ip={\n        \"ipv4\": {\n            \"ip_addr\": \"187.26.29.249\",\n            \"virtual_network_id\": \"c77b744e-acc8-428f-9257-6878c046ed55\",\n        },\n        \"ipv6\": {\n            \"ip_addr\": \"64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0\",\n            \"virtual_network_id\": \"c77b744e-acc8-428f-9257-6878c046ed55\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessInfrastructureTarget = new Cloudflare.Index.ZeroTrustAccessInfrastructureTarget(\"example_zero_trust_access_infrastructure_target\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"infra-access-target\",\n        Ip = new Cloudflare.Inputs.ZeroTrustAccessInfrastructureTargetIpArgs\n        {\n            Ipv4 = new Cloudflare.Inputs.ZeroTrustAccessInfrastructureTargetIpIpv4Args\n            {\n                IpAddr = \"187.26.29.249\",\n                VirtualNetworkId = \"c77b744e-acc8-428f-9257-6878c046ed55\",\n            },\n            Ipv6 = new Cloudflare.Inputs.ZeroTrustAccessInfrastructureTargetIpIpv6Args\n            {\n                IpAddr = \"64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0\",\n                VirtualNetworkId = \"c77b744e-acc8-428f-9257-6878c046ed55\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessInfrastructureTarget(ctx, \"example_zero_trust_access_infrastructure_target\", \u0026cloudflare.ZeroTrustAccessInfrastructureTargetArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostname:  pulumi.String(\"infra-access-target\"),\n\t\t\tIp: \u0026cloudflare.ZeroTrustAccessInfrastructureTargetIpArgs{\n\t\t\t\tIpv4: \u0026cloudflare.ZeroTrustAccessInfrastructureTargetIpIpv4Args{\n\t\t\t\t\tIpAddr:           pulumi.String(\"187.26.29.249\"),\n\t\t\t\t\tVirtualNetworkId: pulumi.String(\"c77b744e-acc8-428f-9257-6878c046ed55\"),\n\t\t\t\t},\n\t\t\t\tIpv6: \u0026cloudflare.ZeroTrustAccessInfrastructureTargetIpIpv6Args{\n\t\t\t\t\tIpAddr:           pulumi.String(\"64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0\"),\n\t\t\t\t\tVirtualNetworkId: pulumi.String(\"c77b744e-acc8-428f-9257-6878c046ed55\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessInfrastructureTarget;\nimport com.pulumi.cloudflare.ZeroTrustAccessInfrastructureTargetArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessInfrastructureTargetIpArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessInfrastructureTargetIpIpv4Args;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessInfrastructureTargetIpIpv6Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessInfrastructureTarget = new ZeroTrustAccessInfrastructureTarget(\"exampleZeroTrustAccessInfrastructureTarget\", ZeroTrustAccessInfrastructureTargetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"infra-access-target\")\n            .ip(ZeroTrustAccessInfrastructureTargetIpArgs.builder()\n                .ipv4(ZeroTrustAccessInfrastructureTargetIpIpv4Args.builder()\n                    .ipAddr(\"187.26.29.249\")\n                    .virtualNetworkId(\"c77b744e-acc8-428f-9257-6878c046ed55\")\n                    .build())\n                .ipv6(ZeroTrustAccessInfrastructureTargetIpIpv6Args.builder()\n                    .ipAddr(\"64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0\")\n                    .virtualNetworkId(\"c77b744e-acc8-428f-9257-6878c046ed55\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessInfrastructureTarget:\n    type: cloudflare:ZeroTrustAccessInfrastructureTarget\n    name: example_zero_trust_access_infrastructure_target\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      hostname: infra-access-target\n      ip:\n        ipv4:\n          ipAddr: 187.26.29.249\n          virtualNetworkId: c77b744e-acc8-428f-9257-6878c046ed55\n        ipv6:\n          ipAddr: 64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0\n          virtualNetworkId: c77b744e-acc8-428f-9257-6878c046ed55\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessInfrastructureTarget:ZeroTrustAccessInfrastructureTarget example '\u003caccount_id\u003e/\u003ctarget_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Date and time at which the target was created\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "A non-unique field that refers to a target. Case insensitive, maximum\nlength of 255 characters, supports the use of special characters dash\nand period, does not support spaces, and must start and end with an\nalphanumeric character.\n"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessInfrastructureTargetIp:ZeroTrustAccessInfrastructureTargetIp",
                    "description": "The IPv4/IPv6 address that identifies where to reach a target\n"
                },
                "modifiedAt": {
                    "type": "string",
                    "description": "Date and time at which the target was modified\n"
                }
            },
            "required": [
                "createdAt",
                "hostname",
                "ip",
                "modifiedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Account identifier\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "A non-unique field that refers to a target. Case insensitive, maximum\nlength of 255 characters, supports the use of special characters dash\nand period, does not support spaces, and must start and end with an\nalphanumeric character.\n"
                },
                "ip": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessInfrastructureTargetIp:ZeroTrustAccessInfrastructureTargetIp",
                    "description": "The IPv4/IPv6 address that identifies where to reach a target\n"
                }
            },
            "requiredInputs": [
                "hostname",
                "ip"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessInfrastructureTarget resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Date and time at which the target was created\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "A non-unique field that refers to a target. Case insensitive, maximum\nlength of 255 characters, supports the use of special characters dash\nand period, does not support spaces, and must start and end with an\nalphanumeric character.\n"
                    },
                    "ip": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessInfrastructureTargetIp:ZeroTrustAccessInfrastructureTargetIp",
                        "description": "The IPv4/IPv6 address that identifies where to reach a target\n"
                    },
                    "modifiedAt": {
                        "type": "string",
                        "description": "Date and time at which the target was modified\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustAccessKeyConfiguration:ZeroTrustAccessKeyConfiguration": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessKeyConfiguration = new cloudflare.ZeroTrustAccessKeyConfiguration(\"example_zero_trust_access_key_configuration\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    keyRotationIntervalDays: 30,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_key_configuration = cloudflare.ZeroTrustAccessKeyConfiguration(\"example_zero_trust_access_key_configuration\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    key_rotation_interval_days=30)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessKeyConfiguration = new Cloudflare.Index.ZeroTrustAccessKeyConfiguration(\"example_zero_trust_access_key_configuration\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        KeyRotationIntervalDays = 30,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessKeyConfiguration(ctx, \"example_zero_trust_access_key_configuration\", \u0026cloudflare.ZeroTrustAccessKeyConfigurationArgs{\n\t\t\tAccountId:               pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tKeyRotationIntervalDays: pulumi.Float64(30),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessKeyConfiguration;\nimport com.pulumi.cloudflare.ZeroTrustAccessKeyConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessKeyConfiguration = new ZeroTrustAccessKeyConfiguration(\"exampleZeroTrustAccessKeyConfiguration\", ZeroTrustAccessKeyConfigurationArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .keyRotationIntervalDays(30.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessKeyConfiguration:\n    type: cloudflare:ZeroTrustAccessKeyConfiguration\n    name: example_zero_trust_access_key_configuration\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      keyRotationIntervalDays: 30\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessKeyConfiguration:ZeroTrustAccessKeyConfiguration example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "daysUntilNextRotation": {
                    "type": "number",
                    "description": "The number of days until the next key rotation.\n"
                },
                "keyRotationIntervalDays": {
                    "type": "number",
                    "description": "The number of days between key rotations.\n"
                },
                "lastKeyRotationAt": {
                    "type": "string",
                    "description": "The timestamp of the previous key rotation.\n"
                }
            },
            "required": [
                "accountId",
                "daysUntilNextRotation",
                "keyRotationIntervalDays",
                "lastKeyRotationAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "keyRotationIntervalDays": {
                    "type": "number",
                    "description": "The number of days between key rotations.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "keyRotationIntervalDays"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessKeyConfiguration resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "daysUntilNextRotation": {
                        "type": "number",
                        "description": "The number of days until the next key rotation.\n"
                    },
                    "keyRotationIntervalDays": {
                        "type": "number",
                        "description": "The number of days between key rotations.\n"
                    },
                    "lastKeyRotationAt": {
                        "type": "string",
                        "description": "The timestamp of the previous key rotation.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessKeysConfiguration:AccessKeysConfiguration"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessMtlsCertificate:ZeroTrustAccessMtlsCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsCertificate = new cloudflare.ZeroTrustAccessMtlsCertificate(\"example_zero_trust_access_mtls_certificate\", {\n    certificate: `  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n`,\n    name: \"Allow devs\",\n    zoneId: \"zone_id\",\n    associatedHostnames: [\"admin.example.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_certificate = cloudflare.ZeroTrustAccessMtlsCertificate(\"example_zero_trust_access_mtls_certificate\",\n    certificate=\"\"\"  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n\"\"\",\n    name=\"Allow devs\",\n    zone_id=\"zone_id\",\n    associated_hostnames=[\"admin.example.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsCertificate = new Cloudflare.Index.ZeroTrustAccessMtlsCertificate(\"example_zero_trust_access_mtls_certificate\", new()\n    {\n        Certificate = @\"  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n\",\n        Name = \"Allow devs\",\n        ZoneId = \"zone_id\",\n        AssociatedHostnames = new[]\n        {\n            \"admin.example.com\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessMtlsCertificate(ctx, \"example_zero_trust_access_mtls_certificate\", \u0026cloudflare.ZeroTrustAccessMtlsCertificateArgs{\n\t\t\tCertificate: pulumi.String(\"  -----BEGIN CERTIFICATE-----\\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\\n  DrUtmu/B\\n  -----END CERTIFICATE-----\\n\"),\n\t\t\tName:        pulumi.String(\"Allow devs\"),\n\t\t\tZoneId:      pulumi.String(\"zone_id\"),\n\t\t\tAssociatedHostnames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"admin.example.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsCertificate;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessMtlsCertificate = new ZeroTrustAccessMtlsCertificate(\"exampleZeroTrustAccessMtlsCertificate\", ZeroTrustAccessMtlsCertificateArgs.builder()\n            .certificate(\"\"\"\n  -----BEGIN CERTIFICATE-----\n  MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n  DrUtmu/B\n  -----END CERTIFICATE-----\n            \"\"\")\n            .name(\"Allow devs\")\n            .zoneId(\"zone_id\")\n            .associatedHostnames(\"admin.example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessMtlsCertificate:\n    type: cloudflare:ZeroTrustAccessMtlsCertificate\n    name: example_zero_trust_access_mtls_certificate\n    properties:\n      certificate: |2\n          -----BEGIN CERTIFICATE-----\n          MIIGAjCCA+qgAwIBAgIJAI7kymlF7CWT...N4RI7KKB7nikiuUf8vhULKy5IX10\n          DrUtmu/B\n          -----END CERTIFICATE-----\n      name: Allow devs\n      zoneId: zone_id\n      associatedHostnames:\n        - admin.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nNote: The \"certificate\" field cannot be imported by this module and must be manually added to state.\n\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessMtlsCertificate:ZeroTrustAccessMtlsCertificate example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003ccertificate_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "associatedHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The hostnames of the applications that will use this certificate.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The certificate content.\n"
                },
                "expiresOn": {
                    "type": "string"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "The MD5 fingerprint of the certificate.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the certificate.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "associatedHostnames",
                "certificate",
                "expiresOn",
                "fingerprint",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "associatedHostnames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The hostnames of the applications that will use this certificate.\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "The certificate content.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the certificate.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "certificate",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessMtlsCertificate resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "associatedHostnames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The hostnames of the applications that will use this certificate.\n"
                    },
                    "certificate": {
                        "type": "string",
                        "description": "The certificate content.\n"
                    },
                    "expiresOn": {
                        "type": "string"
                    },
                    "fingerprint": {
                        "type": "string",
                        "description": "The MD5 fingerprint of the certificate.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the certificate.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessMutualTlsCertificate:AccessMutualTlsCertificate"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessMtlsHostnameSettings:ZeroTrustAccessMtlsHostnameSettings": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsHostnameSettings = new cloudflare.ZeroTrustAccessMtlsHostnameSettings(\"example_zero_trust_access_mtls_hostname_settings\", {\n    settings: [{\n        chinaNetwork: false,\n        clientCertificateForwarding: true,\n        hostname: \"admin.example.com\",\n    }],\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_hostname_settings = cloudflare.ZeroTrustAccessMtlsHostnameSettings(\"example_zero_trust_access_mtls_hostname_settings\",\n    settings=[{\n        \"china_network\": False,\n        \"client_certificate_forwarding\": True,\n        \"hostname\": \"admin.example.com\",\n    }],\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsHostnameSettings = new Cloudflare.Index.ZeroTrustAccessMtlsHostnameSettings(\"example_zero_trust_access_mtls_hostname_settings\", new()\n    {\n        Settings = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessMtlsHostnameSettingsSettingArgs\n            {\n                ChinaNetwork = false,\n                ClientCertificateForwarding = true,\n                Hostname = \"admin.example.com\",\n            },\n        },\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessMtlsHostnameSettings(ctx, \"example_zero_trust_access_mtls_hostname_settings\", \u0026cloudflare.ZeroTrustAccessMtlsHostnameSettingsArgs{\n\t\t\tSettings: cloudflare.ZeroTrustAccessMtlsHostnameSettingsSettingArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessMtlsHostnameSettingsSettingArgs{\n\t\t\t\t\tChinaNetwork:                pulumi.Bool(false),\n\t\t\t\t\tClientCertificateForwarding: pulumi.Bool(true),\n\t\t\t\t\tHostname:                    pulumi.String(\"admin.example.com\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsHostnameSettings;\nimport com.pulumi.cloudflare.ZeroTrustAccessMtlsHostnameSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessMtlsHostnameSettingsSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessMtlsHostnameSettings = new ZeroTrustAccessMtlsHostnameSettings(\"exampleZeroTrustAccessMtlsHostnameSettings\", ZeroTrustAccessMtlsHostnameSettingsArgs.builder()\n            .settings(ZeroTrustAccessMtlsHostnameSettingsSettingArgs.builder()\n                .chinaNetwork(false)\n                .clientCertificateForwarding(true)\n                .hostname(\"admin.example.com\")\n                .build())\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessMtlsHostnameSettings:\n    type: cloudflare:ZeroTrustAccessMtlsHostnameSettings\n    name: example_zero_trust_access_mtls_hostname_settings\n    properties:\n      settings:\n        - chinaNetwork: false\n          clientCertificateForwarding: true\n          hostname: admin.example.com\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "chinaNetwork": {
                    "type": "boolean",
                    "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n"
                },
                "clientCertificateForwarding": {
                    "type": "boolean",
                    "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname that these settings apply to.\n"
                },
                "settings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessMtlsHostnameSettingsSetting:ZeroTrustAccessMtlsHostnameSettingsSetting"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "chinaNetwork",
                "clientCertificateForwarding",
                "hostname",
                "settings"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "settings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessMtlsHostnameSettingsSetting:ZeroTrustAccessMtlsHostnameSettingsSetting"
                    }
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "settings"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessMtlsHostnameSettings resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "chinaNetwork": {
                        "type": "boolean",
                        "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n"
                    },
                    "clientCertificateForwarding": {
                        "type": "boolean",
                        "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "The hostname that these settings apply to.\n"
                    },
                    "settings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessMtlsHostnameSettingsSetting:ZeroTrustAccessMtlsHostnameSettingsSetting"
                        }
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessMutualTlsHostnameSettings:AccessMutualTlsHostnameSettings"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessPolicy:ZeroTrustAccessPolicy": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessPolicy = new cloudflare.ZeroTrustAccessPolicy(\"example_zero_trust_access_policy\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    decision: \"allow\",\n    includes: [{\n        certificate: {},\n    }],\n    name: \"Allow devs\",\n    approvalGroups: [\n        {\n            approvalsNeeded: 1,\n            emailAddresses: [\n                \"test1@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            emailListUuid: \"email_list_uuid\",\n        },\n        {\n            approvalsNeeded: 3,\n            emailAddresses: [\n                \"test@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            emailListUuid: \"597147a1-976b-4ef2-9af0-81d5d007fc34\",\n        },\n    ],\n    approvalRequired: true,\n    connectionRules: {\n        rdp: {\n            allowedClipboardLocalToRemoteFormats: [\"text\"],\n            allowedClipboardRemoteToLocalFormats: [\"text\"],\n        },\n    },\n    excludes: [{\n        certificate: {},\n    }],\n    isolationRequired: false,\n    mfaConfig: {\n        allowedAuthenticators: [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        mfaDisabled: false,\n        sessionDuration: \"24h\",\n    },\n    purposeJustificationPrompt: \"Please enter a justification for entering this protected domain.\",\n    purposeJustificationRequired: true,\n    requires: [{\n        certificate: {},\n    }],\n    sessionDuration: \"24h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_policy = cloudflare.ZeroTrustAccessPolicy(\"example_zero_trust_access_policy\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    decision=\"allow\",\n    includes=[{\n        \"certificate\": {},\n    }],\n    name=\"Allow devs\",\n    approval_groups=[\n        {\n            \"approvals_needed\": 1,\n            \"email_addresses\": [\n                \"test1@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            \"email_list_uuid\": \"email_list_uuid\",\n        },\n        {\n            \"approvals_needed\": 3,\n            \"email_addresses\": [\n                \"test@cloudflare.com\",\n                \"test2@cloudflare.com\",\n            ],\n            \"email_list_uuid\": \"597147a1-976b-4ef2-9af0-81d5d007fc34\",\n        },\n    ],\n    approval_required=True,\n    connection_rules={\n        \"rdp\": {\n            \"allowed_clipboard_local_to_remote_formats\": [\"text\"],\n            \"allowed_clipboard_remote_to_local_formats\": [\"text\"],\n        },\n    },\n    excludes=[{\n        \"certificate\": {},\n    }],\n    isolation_required=False,\n    mfa_config={\n        \"allowed_authenticators\": [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        \"mfa_disabled\": False,\n        \"session_duration\": \"24h\",\n    },\n    purpose_justification_prompt=\"Please enter a justification for entering this protected domain.\",\n    purpose_justification_required=True,\n    requires=[{\n        \"certificate\": {},\n    }],\n    session_duration=\"24h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessPolicy = new Cloudflare.Index.ZeroTrustAccessPolicy(\"example_zero_trust_access_policy\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Decision = \"allow\",\n        Includes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyIncludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        Name = \"Allow devs\",\n        ApprovalGroups = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyApprovalGroupArgs\n            {\n                ApprovalsNeeded = 1,\n                EmailAddresses = new[]\n                {\n                    \"test1@cloudflare.com\",\n                    \"test2@cloudflare.com\",\n                },\n                EmailListUuid = \"email_list_uuid\",\n            },\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyApprovalGroupArgs\n            {\n                ApprovalsNeeded = 3,\n                EmailAddresses = new[]\n                {\n                    \"test@cloudflare.com\",\n                    \"test2@cloudflare.com\",\n                },\n                EmailListUuid = \"597147a1-976b-4ef2-9af0-81d5d007fc34\",\n            },\n        },\n        ApprovalRequired = true,\n        ConnectionRules = new Cloudflare.Inputs.ZeroTrustAccessPolicyConnectionRulesArgs\n        {\n            Rdp = new Cloudflare.Inputs.ZeroTrustAccessPolicyConnectionRulesRdpArgs\n            {\n                AllowedClipboardLocalToRemoteFormats = new[]\n                {\n                    \"text\",\n                },\n                AllowedClipboardRemoteToLocalFormats = new[]\n                {\n                    \"text\",\n                },\n            },\n        },\n        Excludes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyExcludeArgs\n            {\n                Certificate = null,\n            },\n        },\n        IsolationRequired = false,\n        MfaConfig = new Cloudflare.Inputs.ZeroTrustAccessPolicyMfaConfigArgs\n        {\n            AllowedAuthenticators = new[]\n            {\n                \"totp\",\n                \"biometrics\",\n                \"security_key\",\n            },\n            MfaDisabled = false,\n            SessionDuration = \"24h\",\n        },\n        PurposeJustificationPrompt = \"Please enter a justification for entering this protected domain.\",\n        PurposeJustificationRequired = true,\n        Requires = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustAccessPolicyRequireArgs\n            {\n                Certificate = null,\n            },\n        },\n        SessionDuration = \"24h\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessPolicy(ctx, \"example_zero_trust_access_policy\", \u0026cloudflare.ZeroTrustAccessPolicyArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDecision:  pulumi.String(\"allow\"),\n\t\t\tIncludes: cloudflare.ZeroTrustAccessPolicyIncludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyIncludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessPolicyIncludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"Allow devs\"),\n\t\t\tApprovalGroups: cloudflare.ZeroTrustAccessPolicyApprovalGroupArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyApprovalGroupArgs{\n\t\t\t\t\tApprovalsNeeded: pulumi.Float64(1),\n\t\t\t\t\tEmailAddresses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"test1@cloudflare.com\"),\n\t\t\t\t\t\tpulumi.String(\"test2@cloudflare.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tEmailListUuid: pulumi.String(\"email_list_uuid\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyApprovalGroupArgs{\n\t\t\t\t\tApprovalsNeeded: pulumi.Float64(3),\n\t\t\t\t\tEmailAddresses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"test@cloudflare.com\"),\n\t\t\t\t\t\tpulumi.String(\"test2@cloudflare.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tEmailListUuid: pulumi.String(\"597147a1-976b-4ef2-9af0-81d5d007fc34\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tApprovalRequired: pulumi.Bool(true),\n\t\t\tConnectionRules: \u0026cloudflare.ZeroTrustAccessPolicyConnectionRulesArgs{\n\t\t\t\tRdp: \u0026cloudflare.ZeroTrustAccessPolicyConnectionRulesRdpArgs{\n\t\t\t\t\tAllowedClipboardLocalToRemoteFormats: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"text\"),\n\t\t\t\t\t},\n\t\t\t\t\tAllowedClipboardRemoteToLocalFormats: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"text\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tExcludes: cloudflare.ZeroTrustAccessPolicyExcludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyExcludeArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessPolicyExcludeCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsolationRequired: pulumi.Bool(false),\n\t\t\tMfaConfig: \u0026cloudflare.ZeroTrustAccessPolicyMfaConfigArgs{\n\t\t\t\tAllowedAuthenticators: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"totp\"),\n\t\t\t\t\tpulumi.String(\"biometrics\"),\n\t\t\t\t\tpulumi.String(\"security_key\"),\n\t\t\t\t},\n\t\t\t\tMfaDisabled:     pulumi.Bool(false),\n\t\t\t\tSessionDuration: pulumi.String(\"24h\"),\n\t\t\t},\n\t\t\tPurposeJustificationPrompt:   pulumi.String(\"Please enter a justification for entering this protected domain.\"),\n\t\t\tPurposeJustificationRequired: pulumi.Bool(true),\n\t\t\tRequires: cloudflare.ZeroTrustAccessPolicyRequireArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustAccessPolicyRequireArgs{\n\t\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustAccessPolicyRequireCertificateArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSessionDuration: pulumi.String(\"24h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessPolicy;\nimport com.pulumi.cloudflare.ZeroTrustAccessPolicyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyIncludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyIncludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyApprovalGroupArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyConnectionRulesArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyConnectionRulesRdpArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyExcludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyExcludeCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyMfaConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyRequireArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustAccessPolicyRequireCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessPolicy = new ZeroTrustAccessPolicy(\"exampleZeroTrustAccessPolicy\", ZeroTrustAccessPolicyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .decision(\"allow\")\n            .includes(ZeroTrustAccessPolicyIncludeArgs.builder()\n                .certificate(ZeroTrustAccessPolicyIncludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .name(\"Allow devs\")\n            .approvalGroups(            \n                ZeroTrustAccessPolicyApprovalGroupArgs.builder()\n                    .approvalsNeeded(1.0)\n                    .emailAddresses(                    \n                        \"test1@cloudflare.com\",\n                        \"test2@cloudflare.com\")\n                    .emailListUuid(\"email_list_uuid\")\n                    .build(),\n                ZeroTrustAccessPolicyApprovalGroupArgs.builder()\n                    .approvalsNeeded(3.0)\n                    .emailAddresses(                    \n                        \"test@cloudflare.com\",\n                        \"test2@cloudflare.com\")\n                    .emailListUuid(\"597147a1-976b-4ef2-9af0-81d5d007fc34\")\n                    .build())\n            .approvalRequired(true)\n            .connectionRules(ZeroTrustAccessPolicyConnectionRulesArgs.builder()\n                .rdp(ZeroTrustAccessPolicyConnectionRulesRdpArgs.builder()\n                    .allowedClipboardLocalToRemoteFormats(\"text\")\n                    .allowedClipboardRemoteToLocalFormats(\"text\")\n                    .build())\n                .build())\n            .excludes(ZeroTrustAccessPolicyExcludeArgs.builder()\n                .certificate(ZeroTrustAccessPolicyExcludeCertificateArgs.builder()\n                    .build())\n                .build())\n            .isolationRequired(false)\n            .mfaConfig(ZeroTrustAccessPolicyMfaConfigArgs.builder()\n                .allowedAuthenticators(                \n                    \"totp\",\n                    \"biometrics\",\n                    \"security_key\")\n                .mfaDisabled(false)\n                .sessionDuration(\"24h\")\n                .build())\n            .purposeJustificationPrompt(\"Please enter a justification for entering this protected domain.\")\n            .purposeJustificationRequired(true)\n            .requires(ZeroTrustAccessPolicyRequireArgs.builder()\n                .certificate(ZeroTrustAccessPolicyRequireCertificateArgs.builder()\n                    .build())\n                .build())\n            .sessionDuration(\"24h\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessPolicy:\n    type: cloudflare:ZeroTrustAccessPolicy\n    name: example_zero_trust_access_policy\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      decision: allow\n      includes:\n        - certificate: {}\n      name: Allow devs\n      approvalGroups:\n        - approvalsNeeded: 1\n          emailAddresses:\n            - test1@cloudflare.com\n            - test2@cloudflare.com\n          emailListUuid: email_list_uuid\n        - approvalsNeeded: 3\n          emailAddresses:\n            - test@cloudflare.com\n            - test2@cloudflare.com\n          emailListUuid: 597147a1-976b-4ef2-9af0-81d5d007fc34\n      approvalRequired: true\n      connectionRules:\n        rdp:\n          allowedClipboardLocalToRemoteFormats:\n            - text\n          allowedClipboardRemoteToLocalFormats:\n            - text\n      excludes:\n        - certificate: {}\n      isolationRequired: false\n      mfaConfig:\n        allowedAuthenticators:\n          - totp\n          - biometrics\n          - security_key\n        mfaDisabled: false\n        sessionDuration: 24h\n      purposeJustificationPrompt: Please enter a justification for entering this protected domain.\n      purposeJustificationRequired: true\n      requires:\n        - certificate: {}\n      sessionDuration: 24h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessPolicy:ZeroTrustAccessPolicy example '\u003caccount_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyApprovalGroup:ZeroTrustAccessPolicyApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyConnectionRules:ZeroTrustAccessPolicyConnectionRules",
                    "description": "The rules that define how users may connect to targets secured by your application.\n"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExclude:ZeroTrustAccessPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyInclude:ZeroTrustAccessPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyMfaConfig:ZeroTrustAccessPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequire:ZeroTrustAccessPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                }
            },
            "required": [
                "decision",
                "includes",
                "name",
                "sessionDuration"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "approvalGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyApprovalGroup:ZeroTrustAccessPolicyApprovalGroup"
                    },
                    "description": "Administrators who can approve a temporary authentication request.\n"
                },
                "approvalRequired": {
                    "type": "boolean",
                    "description": "Requires the user to request access from an administrator at the start of each session.\n"
                },
                "connectionRules": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyConnectionRules:ZeroTrustAccessPolicyConnectionRules",
                    "description": "The rules that define how users may connect to targets secured by your application.\n"
                },
                "decision": {
                    "type": "string",
                    "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExclude:ZeroTrustAccessPolicyExclude"
                    },
                    "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyInclude:ZeroTrustAccessPolicyInclude"
                    },
                    "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                },
                "isolationRequired": {
                    "type": "boolean",
                    "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyMfaConfig:ZeroTrustAccessPolicyMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Access policy.\n"
                },
                "purposeJustificationPrompt": {
                    "type": "string",
                    "description": "A custom message that will appear on the purpose justification screen.\n"
                },
                "purposeJustificationRequired": {
                    "type": "boolean",
                    "description": "Require users to enter a justification when they log in to the application.\n"
                },
                "requires": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequire:ZeroTrustAccessPolicyRequire"
                    },
                    "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                }
            },
            "requiredInputs": [
                "decision",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessPolicy resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "approvalGroups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyApprovalGroup:ZeroTrustAccessPolicyApprovalGroup"
                        },
                        "description": "Administrators who can approve a temporary authentication request.\n"
                    },
                    "approvalRequired": {
                        "type": "boolean",
                        "description": "Requires the user to request access from an administrator at the start of each session.\n"
                    },
                    "connectionRules": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyConnectionRules:ZeroTrustAccessPolicyConnectionRules",
                        "description": "The rules that define how users may connect to targets secured by your application.\n"
                    },
                    "decision": {
                        "type": "string",
                        "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n"
                    },
                    "excludes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyExclude:ZeroTrustAccessPolicyExclude"
                        },
                        "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n"
                    },
                    "includes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyInclude:ZeroTrustAccessPolicyInclude"
                        },
                        "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n"
                    },
                    "isolationRequired": {
                        "type": "boolean",
                        "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyMfaConfig:ZeroTrustAccessPolicyMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Access policy.\n"
                    },
                    "purposeJustificationPrompt": {
                        "type": "string",
                        "description": "A custom message that will appear on the purpose justification screen.\n"
                    },
                    "purposeJustificationRequired": {
                        "type": "boolean",
                        "description": "Require users to enter a justification when they log in to the application.\n"
                    },
                    "requires": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustAccessPolicyRequire:ZeroTrustAccessPolicyRequire"
                        },
                        "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n"
                    },
                    "sessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessPolicy:AccessPolicy"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessServiceToken:ZeroTrustAccessServiceToken": {
            "description": "Accepted Permissions\n\n- `Access: Service Tokens Read`\n- `Access: Service Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessServiceToken = new cloudflare.ZeroTrustAccessServiceToken(\"example_zero_trust_access_service_token\", {\n    name: \"CI/CD token\",\n    zoneId: \"zone_id\",\n    clientSecretVersion: 0,\n    duration: \"60m\",\n    previousClientSecretExpiresAt: \"2014-01-01T05:20:00.12345Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_service_token = cloudflare.ZeroTrustAccessServiceToken(\"example_zero_trust_access_service_token\",\n    name=\"CI/CD token\",\n    zone_id=\"zone_id\",\n    client_secret_version=0,\n    duration=\"60m\",\n    previous_client_secret_expires_at=\"2014-01-01T05:20:00.12345Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessServiceToken = new Cloudflare.Index.ZeroTrustAccessServiceToken(\"example_zero_trust_access_service_token\", new()\n    {\n        Name = \"CI/CD token\",\n        ZoneId = \"zone_id\",\n        ClientSecretVersion = 0,\n        Duration = \"60m\",\n        PreviousClientSecretExpiresAt = \"2014-01-01T05:20:00.12345Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessServiceToken(ctx, \"example_zero_trust_access_service_token\", \u0026cloudflare.ZeroTrustAccessServiceTokenArgs{\n\t\t\tName:                          pulumi.String(\"CI/CD token\"),\n\t\t\tZoneId:                        pulumi.String(\"zone_id\"),\n\t\t\tClientSecretVersion:           pulumi.Float64(0),\n\t\t\tDuration:                      pulumi.String(\"60m\"),\n\t\t\tPreviousClientSecretExpiresAt: pulumi.String(\"2014-01-01T05:20:00.12345Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessServiceToken;\nimport com.pulumi.cloudflare.ZeroTrustAccessServiceTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessServiceToken = new ZeroTrustAccessServiceToken(\"exampleZeroTrustAccessServiceToken\", ZeroTrustAccessServiceTokenArgs.builder()\n            .name(\"CI/CD token\")\n            .zoneId(\"zone_id\")\n            .clientSecretVersion(0.0)\n            .duration(\"60m\")\n            .previousClientSecretExpiresAt(\"2014-01-01T05:20:00.12345Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessServiceToken:\n    type: cloudflare:ZeroTrustAccessServiceToken\n    name: example_zero_trust_access_service_token\n    properties:\n      name: CI/CD token\n      zoneId: zone_id\n      clientSecretVersion: 0\n      duration: 60m\n      previousClientSecretExpiresAt: 2014-01-01T05:20:00.12345Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessServiceToken:ZeroTrustAccessServiceToken example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003cservice_token_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "The Client Secret for the service token. Access will check for this value in the `CF-Access-Client-Secret` request header.\n",
                    "secret": true
                },
                "clientSecretVersion": {
                    "type": "number",
                    "description": "A version number identifying the current \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by \u003cspan pulumi-lang-nodejs=\"`previousClientSecretExpiresAt`\" pulumi-lang-dotnet=\"`PreviousClientSecretExpiresAt`\" pulumi-lang-go=\"`previousClientSecretExpiresAt`\" pulumi-lang-python=\"`previous_client_secret_expires_at`\" pulumi-lang-yaml=\"`previousClientSecretExpiresAt`\" pulumi-lang-java=\"`previousClientSecretExpiresAt`\"\u003e`previousClientSecretExpiresAt`\u003c/span\u003e.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                },
                "expiresAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the service token.\n"
                },
                "previousClientSecretExpiresAt": {
                    "type": "string",
                    "description": "The expiration of the previous \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "clientId",
                "clientSecret",
                "clientSecretVersion",
                "duration",
                "expiresAt",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "clientSecretVersion": {
                    "type": "number",
                    "description": "A version number identifying the current \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by \u003cspan pulumi-lang-nodejs=\"`previousClientSecretExpiresAt`\" pulumi-lang-dotnet=\"`PreviousClientSecretExpiresAt`\" pulumi-lang-go=\"`previousClientSecretExpiresAt`\" pulumi-lang-python=\"`previous_client_secret_expires_at`\" pulumi-lang-yaml=\"`previousClientSecretExpiresAt`\" pulumi-lang-java=\"`previousClientSecretExpiresAt`\"\u003e`previousClientSecretExpiresAt`\u003c/span\u003e.\n"
                },
                "duration": {
                    "type": "string",
                    "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the service token.\n"
                },
                "previousClientSecretExpiresAt": {
                    "type": "string",
                    "description": "The expiration of the previous \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessServiceToken resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "clientId": {
                        "type": "string",
                        "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header.\n"
                    },
                    "clientSecret": {
                        "type": "string",
                        "description": "The Client Secret for the service token. Access will check for this value in the `CF-Access-Client-Secret` request header.\n",
                        "secret": true
                    },
                    "clientSecretVersion": {
                        "type": "number",
                        "description": "A version number identifying the current \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by \u003cspan pulumi-lang-nodejs=\"`previousClientSecretExpiresAt`\" pulumi-lang-dotnet=\"`PreviousClientSecretExpiresAt`\" pulumi-lang-go=\"`previousClientSecretExpiresAt`\" pulumi-lang-python=\"`previous_client_secret_expires_at`\" pulumi-lang-yaml=\"`previousClientSecretExpiresAt`\" pulumi-lang-java=\"`previousClientSecretExpiresAt`\"\u003e`previousClientSecretExpiresAt`\u003c/span\u003e.\n"
                    },
                    "duration": {
                        "type": "string",
                        "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n"
                    },
                    "expiresAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the service token.\n"
                    },
                    "previousClientSecretExpiresAt": {
                        "type": "string",
                        "description": "The expiration of the previous \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`clientSecret`\u003c/span\u003e. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessServiceToken:AccessServiceToken"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessShortLivedCertificate:ZeroTrustAccessShortLivedCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessShortLivedCertificate = new cloudflare.ZeroTrustAccessShortLivedCertificate(\"example_zero_trust_access_short_lived_certificate\", {\n    appId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_short_lived_certificate = cloudflare.ZeroTrustAccessShortLivedCertificate(\"example_zero_trust_access_short_lived_certificate\",\n    app_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessShortLivedCertificate = new Cloudflare.Index.ZeroTrustAccessShortLivedCertificate(\"example_zero_trust_access_short_lived_certificate\", new()\n    {\n        AppId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessShortLivedCertificate(ctx, \"example_zero_trust_access_short_lived_certificate\", \u0026cloudflare.ZeroTrustAccessShortLivedCertificateArgs{\n\t\t\tAppId:  pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tZoneId: pulumi.String(\"zone_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessShortLivedCertificate;\nimport com.pulumi.cloudflare.ZeroTrustAccessShortLivedCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessShortLivedCertificate = new ZeroTrustAccessShortLivedCertificate(\"exampleZeroTrustAccessShortLivedCertificate\", ZeroTrustAccessShortLivedCertificateArgs.builder()\n            .appId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessShortLivedCertificate:\n    type: cloudflare:ZeroTrustAccessShortLivedCertificate\n    name: example_zero_trust_access_short_lived_certificate\n    properties:\n      appId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessShortLivedCertificate:ZeroTrustAccessShortLivedCertificate example '\u003c{accounts|zones}/{account_id|zone_id}\u003e/\u003capp_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "aud": {
                    "type": "string",
                    "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.\n"
                },
                "publicKey": {
                    "type": "string",
                    "description": "The public key to add to your SSH server configuration.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "appId",
                "aud",
                "publicKey"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "appId": {
                    "type": "string",
                    "description": "UUID.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "requiredInputs": [
                "appId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessShortLivedCertificate resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "appId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "aud": {
                        "type": "string",
                        "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.\n"
                    },
                    "publicKey": {
                        "type": "string",
                        "description": "The public key to add to your SSH server configuration.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessCaCertificate:AccessCaCertificate"
                }
            ]
        },
        "cloudflare:index/zeroTrustAccessTag:ZeroTrustAccessTag": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessTag = new cloudflare.ZeroTrustAccessTag(\"example_zero_trust_access_tag\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"engineers\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_tag = cloudflare.ZeroTrustAccessTag(\"example_zero_trust_access_tag\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"engineers\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessTag = new Cloudflare.Index.ZeroTrustAccessTag(\"example_zero_trust_access_tag\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"engineers\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustAccessTag(ctx, \"example_zero_trust_access_tag\", \u0026cloudflare.ZeroTrustAccessTagArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.String(\"engineers\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustAccessTag;\nimport com.pulumi.cloudflare.ZeroTrustAccessTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustAccessTag = new ZeroTrustAccessTag(\"exampleZeroTrustAccessTag\", ZeroTrustAccessTagArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"engineers\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustAccessTag:\n    type: cloudflare:ZeroTrustAccessTag\n    name: example_zero_trust_access_tag\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      name: engineers\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustAccessTag:ZeroTrustAccessTag example '\u003caccount_id\u003e/\u003ctag_name\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tag\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tag\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustAccessTag resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the tag\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessTag:AccessTag"
                }
            ]
        },
        "cloudflare:index/zeroTrustDeviceCustomProfile:ZeroTrustDeviceCustomProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceCustomProfile = new cloudflare.ZeroTrustDeviceCustomProfile(\"example_zero_trust_device_custom_profile\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    match: \"identity.email == \\\"test@cloudflare.com\\\"\",\n    name: \"Allow Developers\",\n    precedence: 100,\n    allowModeSwitch: true,\n    allowUpdates: true,\n    allowedToLeave: true,\n    autoConnect: 0,\n    captivePortal: 180,\n    description: \"Policy for test teams.\",\n    disableAutoFallback: true,\n    enabled: true,\n    excludes: [{\n        address: \"192.0.2.0/24\",\n        description: \"Exclude testing domains from the tunnel\",\n    }],\n    excludeOfficeIps: true,\n    includes: [{\n        address: \"192.0.2.0/24\",\n        description: \"Include testing domains in the tunnel\",\n    }],\n    lanAllowMinutes: 30,\n    lanAllowSubnetSize: 24,\n    registerInterfaceIpWithDns: true,\n    sccmVpnBoundarySupport: false,\n    serviceModeV2: {\n        mode: \"proxy\",\n        port: 3000,\n    },\n    supportUrl: \"https://1.1.1.1/help\",\n    switchLocked: true,\n    tunnelProtocol: \"wireguard\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_custom_profile = cloudflare.ZeroTrustDeviceCustomProfile(\"example_zero_trust_device_custom_profile\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    match=\"identity.email == \\\"test@cloudflare.com\\\"\",\n    name=\"Allow Developers\",\n    precedence=100,\n    allow_mode_switch=True,\n    allow_updates=True,\n    allowed_to_leave=True,\n    auto_connect=0,\n    captive_portal=180,\n    description=\"Policy for test teams.\",\n    disable_auto_fallback=True,\n    enabled=True,\n    excludes=[{\n        \"address\": \"192.0.2.0/24\",\n        \"description\": \"Exclude testing domains from the tunnel\",\n    }],\n    exclude_office_ips=True,\n    includes=[{\n        \"address\": \"192.0.2.0/24\",\n        \"description\": \"Include testing domains in the tunnel\",\n    }],\n    lan_allow_minutes=30,\n    lan_allow_subnet_size=24,\n    register_interface_ip_with_dns=True,\n    sccm_vpn_boundary_support=False,\n    service_mode_v2={\n        \"mode\": \"proxy\",\n        \"port\": 3000,\n    },\n    support_url=\"https://1.1.1.1/help\",\n    switch_locked=True,\n    tunnel_protocol=\"wireguard\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceCustomProfile = new Cloudflare.Index.ZeroTrustDeviceCustomProfile(\"example_zero_trust_device_custom_profile\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Match = \"identity.email == \\\"test@cloudflare.com\\\"\",\n        Name = \"Allow Developers\",\n        Precedence = 100,\n        AllowModeSwitch = true,\n        AllowUpdates = true,\n        AllowedToLeave = true,\n        AutoConnect = 0,\n        CaptivePortal = 180,\n        Description = \"Policy for test teams.\",\n        DisableAutoFallback = true,\n        Enabled = true,\n        Excludes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceCustomProfileExcludeArgs\n            {\n                Address = \"192.0.2.0/24\",\n                Description = \"Exclude testing domains from the tunnel\",\n            },\n        },\n        ExcludeOfficeIps = true,\n        Includes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceCustomProfileIncludeArgs\n            {\n                Address = \"192.0.2.0/24\",\n                Description = \"Include testing domains in the tunnel\",\n            },\n        },\n        LanAllowMinutes = 30,\n        LanAllowSubnetSize = 24,\n        RegisterInterfaceIpWithDns = true,\n        SccmVpnBoundarySupport = false,\n        ServiceModeV2 = new Cloudflare.Inputs.ZeroTrustDeviceCustomProfileServiceModeV2Args\n        {\n            Mode = \"proxy\",\n            Port = 3000,\n        },\n        SupportUrl = \"https://1.1.1.1/help\",\n        SwitchLocked = true,\n        TunnelProtocol = \"wireguard\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceCustomProfile(ctx, \"example_zero_trust_device_custom_profile\", \u0026cloudflare.ZeroTrustDeviceCustomProfileArgs{\n\t\t\tAccountId:           pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tMatch:               pulumi.String(\"identity.email == \\\"test@cloudflare.com\\\"\"),\n\t\t\tName:                pulumi.String(\"Allow Developers\"),\n\t\t\tPrecedence:          pulumi.Float64(100),\n\t\t\tAllowModeSwitch:     pulumi.Bool(true),\n\t\t\tAllowUpdates:        pulumi.Bool(true),\n\t\t\tAllowedToLeave:      pulumi.Bool(true),\n\t\t\tAutoConnect:         pulumi.Float64(0),\n\t\t\tCaptivePortal:       pulumi.Float64(180),\n\t\t\tDescription:         pulumi.String(\"Policy for test teams.\"),\n\t\t\tDisableAutoFallback: pulumi.Bool(true),\n\t\t\tEnabled:             pulumi.Bool(true),\n\t\t\tExcludes: cloudflare.ZeroTrustDeviceCustomProfileExcludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceCustomProfileExcludeArgs{\n\t\t\t\t\tAddress:     pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\tDescription: pulumi.String(\"Exclude testing domains from the tunnel\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tExcludeOfficeIps: pulumi.Bool(true),\n\t\t\tIncludes: cloudflare.ZeroTrustDeviceCustomProfileIncludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceCustomProfileIncludeArgs{\n\t\t\t\t\tAddress:     pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\tDescription: pulumi.String(\"Include testing domains in the tunnel\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLanAllowMinutes:            pulumi.Float64(30),\n\t\t\tLanAllowSubnetSize:         pulumi.Float64(24),\n\t\t\tRegisterInterfaceIpWithDns: pulumi.Bool(true),\n\t\t\tSccmVpnBoundarySupport:     pulumi.Bool(false),\n\t\t\tServiceModeV2: \u0026cloudflare.ZeroTrustDeviceCustomProfileServiceModeV2Args{\n\t\t\t\tMode: pulumi.String(\"proxy\"),\n\t\t\t\tPort: pulumi.Float64(3000),\n\t\t\t},\n\t\t\tSupportUrl:     pulumi.String(\"https://1.1.1.1/help\"),\n\t\t\tSwitchLocked:   pulumi.Bool(true),\n\t\t\tTunnelProtocol: pulumi.String(\"wireguard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceCustomProfile;\nimport com.pulumi.cloudflare.ZeroTrustDeviceCustomProfileArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceCustomProfileExcludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceCustomProfileIncludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceCustomProfileServiceModeV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceCustomProfile = new ZeroTrustDeviceCustomProfile(\"exampleZeroTrustDeviceCustomProfile\", ZeroTrustDeviceCustomProfileArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .match(\"identity.email == \\\"test@cloudflare.com\\\"\")\n            .name(\"Allow Developers\")\n            .precedence(100.0)\n            .allowModeSwitch(true)\n            .allowUpdates(true)\n            .allowedToLeave(true)\n            .autoConnect(0.0)\n            .captivePortal(180.0)\n            .description(\"Policy for test teams.\")\n            .disableAutoFallback(true)\n            .enabled(true)\n            .excludes(ZeroTrustDeviceCustomProfileExcludeArgs.builder()\n                .address(\"192.0.2.0/24\")\n                .description(\"Exclude testing domains from the tunnel\")\n                .build())\n            .excludeOfficeIps(true)\n            .includes(ZeroTrustDeviceCustomProfileIncludeArgs.builder()\n                .address(\"192.0.2.0/24\")\n                .description(\"Include testing domains in the tunnel\")\n                .build())\n            .lanAllowMinutes(30.0)\n            .lanAllowSubnetSize(24.0)\n            .registerInterfaceIpWithDns(true)\n            .sccmVpnBoundarySupport(false)\n            .serviceModeV2(ZeroTrustDeviceCustomProfileServiceModeV2Args.builder()\n                .mode(\"proxy\")\n                .port(3000.0)\n                .build())\n            .supportUrl(\"https://1.1.1.1/help\")\n            .switchLocked(true)\n            .tunnelProtocol(\"wireguard\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceCustomProfile:\n    type: cloudflare:ZeroTrustDeviceCustomProfile\n    name: example_zero_trust_device_custom_profile\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      match: identity.email == \"test@cloudflare.com\"\n      name: Allow Developers\n      precedence: 100\n      allowModeSwitch: true\n      allowUpdates: true\n      allowedToLeave: true\n      autoConnect: 0\n      captivePortal: 180\n      description: Policy for test teams.\n      disableAutoFallback: true\n      enabled: true\n      excludes:\n        - address: 192.0.2.0/24\n          description: Exclude testing domains from the tunnel\n      excludeOfficeIps: true\n      includes:\n        - address: 192.0.2.0/24\n          description: Include testing domains in the tunnel\n      lanAllowMinutes: 30\n      lanAllowSubnetSize: 24\n      registerInterfaceIpWithDns: true\n      sccmVpnBoundarySupport: false\n      serviceModeV2:\n        mode: proxy\n        port: 3000\n      supportUrl: https://1.1.1.1/help\n      switchLocked: true\n      tunnelProtocol: wireguard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceCustomProfile:ZeroTrustDeviceCustomProfile example '\u003caccount_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "allowModeSwitch": {
                    "type": "boolean",
                    "description": "Whether to allow the user to switch WARP between modes.\n"
                },
                "allowUpdates": {
                    "type": "boolean",
                    "description": "Whether to receive update notifications when a new version of the client is available.\n"
                },
                "allowedToLeave": {
                    "type": "boolean",
                    "description": "Whether to allow devices to leave the organization.\n"
                },
                "autoConnect": {
                    "type": "number",
                    "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                },
                "captivePortal": {
                    "type": "number",
                    "description": "Turn on the captive portal after the specified amount of time.\n"
                },
                "default": {
                    "type": "boolean",
                    "description": "Whether the policy is the default policy for an account.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the policy.\n"
                },
                "disableAutoFallback": {
                    "type": "boolean",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy will be applied to matching devices.\n"
                },
                "excludeOfficeIps": {
                    "type": "boolean",
                    "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileExclude:ZeroTrustDeviceCustomProfileExclude"
                    },
                    "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "fallbackDomains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileFallbackDomain:ZeroTrustDeviceCustomProfileFallbackDomain"
                    }
                },
                "gatewayUniqueId": {
                    "type": "string"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileInclude:ZeroTrustDeviceCustomProfileInclude"
                    },
                    "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "lanAllowMinutes": {
                    "type": "number",
                    "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                },
                "lanAllowSubnetSize": {
                    "type": "number",
                    "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service*token*uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device settings profile.\n"
                },
                "policyId": {
                    "type": "string"
                },
                "precedence": {
                    "type": "number",
                    "description": "The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field.\n"
                },
                "registerInterfaceIpWithDns": {
                    "type": "boolean",
                    "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                },
                "sccmVpnBoundarySupport": {
                    "type": "boolean",
                    "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                },
                "serviceModeV2": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileServiceModeV2:ZeroTrustDeviceCustomProfileServiceModeV2"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "The URL to launch when the Send Feedback button is clicked.\n"
                },
                "switchLocked": {
                    "type": "boolean",
                    "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                },
                "targetTests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileTargetTest:ZeroTrustDeviceCustomProfileTargetTest"
                    }
                },
                "tunnelProtocol": {
                    "type": "string",
                    "description": "Determines which tunnel protocol to use.\n"
                }
            },
            "required": [
                "allowModeSwitch",
                "allowUpdates",
                "allowedToLeave",
                "autoConnect",
                "captivePortal",
                "default",
                "description",
                "disableAutoFallback",
                "enabled",
                "excludes",
                "excludeOfficeIps",
                "fallbackDomains",
                "gatewayUniqueId",
                "includes",
                "match",
                "name",
                "policyId",
                "precedence",
                "registerInterfaceIpWithDns",
                "sccmVpnBoundarySupport",
                "serviceModeV2",
                "supportUrl",
                "switchLocked",
                "targetTests",
                "tunnelProtocol"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "allowModeSwitch": {
                    "type": "boolean",
                    "description": "Whether to allow the user to switch WARP between modes.\n"
                },
                "allowUpdates": {
                    "type": "boolean",
                    "description": "Whether to receive update notifications when a new version of the client is available.\n"
                },
                "allowedToLeave": {
                    "type": "boolean",
                    "description": "Whether to allow devices to leave the organization.\n"
                },
                "autoConnect": {
                    "type": "number",
                    "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                },
                "captivePortal": {
                    "type": "number",
                    "description": "Turn on the captive portal after the specified amount of time.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description of the policy.\n"
                },
                "disableAutoFallback": {
                    "type": "boolean",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy will be applied to matching devices.\n"
                },
                "excludeOfficeIps": {
                    "type": "boolean",
                    "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileExclude:ZeroTrustDeviceCustomProfileExclude"
                    },
                    "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileInclude:ZeroTrustDeviceCustomProfileInclude"
                    },
                    "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "lanAllowMinutes": {
                    "type": "number",
                    "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                },
                "lanAllowSubnetSize": {
                    "type": "number",
                    "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service*token*uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device settings profile.\n"
                },
                "precedence": {
                    "type": "number",
                    "description": "The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field.\n"
                },
                "registerInterfaceIpWithDns": {
                    "type": "boolean",
                    "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                },
                "sccmVpnBoundarySupport": {
                    "type": "boolean",
                    "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                },
                "serviceModeV2": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileServiceModeV2:ZeroTrustDeviceCustomProfileServiceModeV2"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "The URL to launch when the Send Feedback button is clicked.\n"
                },
                "switchLocked": {
                    "type": "boolean",
                    "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                },
                "tunnelProtocol": {
                    "type": "string",
                    "description": "Determines which tunnel protocol to use.\n"
                }
            },
            "requiredInputs": [
                "match",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceCustomProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "allowModeSwitch": {
                        "type": "boolean",
                        "description": "Whether to allow the user to switch WARP between modes.\n"
                    },
                    "allowUpdates": {
                        "type": "boolean",
                        "description": "Whether to receive update notifications when a new version of the client is available.\n"
                    },
                    "allowedToLeave": {
                        "type": "boolean",
                        "description": "Whether to allow devices to leave the organization.\n"
                    },
                    "autoConnect": {
                        "type": "number",
                        "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                    },
                    "captivePortal": {
                        "type": "number",
                        "description": "Turn on the captive portal after the specified amount of time.\n"
                    },
                    "default": {
                        "type": "boolean",
                        "description": "Whether the policy is the default policy for an account.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A description of the policy.\n"
                    },
                    "disableAutoFallback": {
                        "type": "boolean",
                        "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the policy will be applied to matching devices.\n"
                    },
                    "excludeOfficeIps": {
                        "type": "boolean",
                        "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                    },
                    "excludes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileExclude:ZeroTrustDeviceCustomProfileExclude"
                        },
                        "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                    },
                    "fallbackDomains": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileFallbackDomain:ZeroTrustDeviceCustomProfileFallbackDomain"
                        }
                    },
                    "gatewayUniqueId": {
                        "type": "string"
                    },
                    "includes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileInclude:ZeroTrustDeviceCustomProfileInclude"
                        },
                        "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                    },
                    "lanAllowMinutes": {
                        "type": "number",
                        "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                    },
                    "lanAllowSubnetSize": {
                        "type": "number",
                        "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                    },
                    "match": {
                        "type": "string",
                        "description": "The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service*token*uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\".\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device settings profile.\n"
                    },
                    "policyId": {
                        "type": "string"
                    },
                    "precedence": {
                        "type": "number",
                        "description": "The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field.\n"
                    },
                    "registerInterfaceIpWithDns": {
                        "type": "boolean",
                        "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                    },
                    "sccmVpnBoundarySupport": {
                        "type": "boolean",
                        "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                    },
                    "serviceModeV2": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileServiceModeV2:ZeroTrustDeviceCustomProfileServiceModeV2"
                    },
                    "supportUrl": {
                        "type": "string",
                        "description": "The URL to launch when the Send Feedback button is clicked.\n"
                    },
                    "switchLocked": {
                        "type": "boolean",
                        "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                    },
                    "targetTests": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileTargetTest:ZeroTrustDeviceCustomProfileTargetTest"
                        }
                    },
                    "tunnelProtocol": {
                        "type": "string",
                        "description": "Determines which tunnel protocol to use.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/deviceSettingsPolicy:DeviceSettingsPolicy"
                },
                {
                    "type": "cloudflare:index/splitTunnel:SplitTunnel"
                }
            ]
        },
        "cloudflare:index/zeroTrustDeviceCustomProfileLocalDomainFallback:ZeroTrustDeviceCustomProfileLocalDomainFallback": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceCustomProfileLocalDomainFallback = new cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallback(\"example_zero_trust_device_custom_profile_local_domain_fallback\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    policyId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    domains: [{\n        suffix: \"example.com\",\n        description: \"Domain bypass for local development\",\n        dnsServer: [\"1.1.1.1\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_custom_profile_local_domain_fallback = cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallback(\"example_zero_trust_device_custom_profile_local_domain_fallback\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    policy_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    domains=[{\n        \"suffix\": \"example.com\",\n        \"description\": \"Domain bypass for local development\",\n        \"dns_server\": [\"1.1.1.1\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceCustomProfileLocalDomainFallback = new Cloudflare.Index.ZeroTrustDeviceCustomProfileLocalDomainFallback(\"example_zero_trust_device_custom_profile_local_domain_fallback\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        PolicyId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Domains = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs\n            {\n                Suffix = \"example.com\",\n                Description = \"Domain bypass for local development\",\n                DnsServer = new[]\n                {\n                    \"1.1.1.1\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceCustomProfileLocalDomainFallback(ctx, \"example_zero_trust_device_custom_profile_local_domain_fallback\", \u0026cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tPolicyId:  pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tDomains: cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs{\n\t\t\t\t\tSuffix:      pulumi.String(\"example.com\"),\n\t\t\t\t\tDescription: pulumi.String(\"Domain bypass for local development\"),\n\t\t\t\t\tDnsServer: []string{\n\t\t\t\t\t\t\"1.1.1.1\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallback;\nimport com.pulumi.cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceCustomProfileLocalDomainFallback = new ZeroTrustDeviceCustomProfileLocalDomainFallback(\"exampleZeroTrustDeviceCustomProfileLocalDomainFallback\", ZeroTrustDeviceCustomProfileLocalDomainFallbackArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .policyId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .domains(ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs.builder()\n                .suffix(\"example.com\")\n                .description(\"Domain bypass for local development\")\n                .dnsServer(List.of(\"1.1.1.1\"))\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceCustomProfileLocalDomainFallback:\n    type: cloudflare:ZeroTrustDeviceCustomProfileLocalDomainFallback\n    name: example_zero_trust_device_custom_profile_local_domain_fallback\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      policyId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      domains:\n        - suffix: example.com\n          description: Domain bypass for local development\n          dnsServer:\n            - 1.1.1.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceCustomProfileLocalDomainFallback:ZeroTrustDeviceCustomProfileLocalDomainFallback example '\u003caccount_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain:ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain"
                    }
                },
                "policyId": {
                    "type": "string"
                }
            },
            "required": [
                "domains",
                "policyId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain:ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain"
                    }
                },
                "policyId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "domains",
                "policyId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceCustomProfileLocalDomainFallback resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "domains": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain:ZeroTrustDeviceCustomProfileLocalDomainFallbackDomain"
                        }
                    },
                    "policyId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/zeroTrustLocalFallbackDomain:ZeroTrustLocalFallbackDomain"
                }
            ]
        },
        "cloudflare:index/zeroTrustDeviceDefaultProfile:ZeroTrustDeviceDefaultProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceDefaultProfile = new cloudflare.ZeroTrustDeviceDefaultProfile(\"example_zero_trust_device_default_profile\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    allowModeSwitch: true,\n    allowUpdates: true,\n    allowedToLeave: true,\n    autoConnect: 0,\n    captivePortal: 180,\n    disableAutoFallback: true,\n    excludes: [{\n        address: \"192.0.2.0/24\",\n        description: \"Exclude testing domains from the tunnel\",\n    }],\n    excludeOfficeIps: true,\n    includes: [{\n        address: \"192.0.2.0/24\",\n        description: \"Include testing domains in the tunnel\",\n    }],\n    lanAllowMinutes: 30,\n    lanAllowSubnetSize: 24,\n    registerInterfaceIpWithDns: true,\n    sccmVpnBoundarySupport: false,\n    serviceModeV2: {\n        mode: \"proxy\",\n        port: 3000,\n    },\n    supportUrl: \"https://1.1.1.1/help\",\n    switchLocked: true,\n    tunnelProtocol: \"wireguard\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_default_profile = cloudflare.ZeroTrustDeviceDefaultProfile(\"example_zero_trust_device_default_profile\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    allow_mode_switch=True,\n    allow_updates=True,\n    allowed_to_leave=True,\n    auto_connect=0,\n    captive_portal=180,\n    disable_auto_fallback=True,\n    excludes=[{\n        \"address\": \"192.0.2.0/24\",\n        \"description\": \"Exclude testing domains from the tunnel\",\n    }],\n    exclude_office_ips=True,\n    includes=[{\n        \"address\": \"192.0.2.0/24\",\n        \"description\": \"Include testing domains in the tunnel\",\n    }],\n    lan_allow_minutes=30,\n    lan_allow_subnet_size=24,\n    register_interface_ip_with_dns=True,\n    sccm_vpn_boundary_support=False,\n    service_mode_v2={\n        \"mode\": \"proxy\",\n        \"port\": 3000,\n    },\n    support_url=\"https://1.1.1.1/help\",\n    switch_locked=True,\n    tunnel_protocol=\"wireguard\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceDefaultProfile = new Cloudflare.Index.ZeroTrustDeviceDefaultProfile(\"example_zero_trust_device_default_profile\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        AllowModeSwitch = true,\n        AllowUpdates = true,\n        AllowedToLeave = true,\n        AutoConnect = 0,\n        CaptivePortal = 180,\n        DisableAutoFallback = true,\n        Excludes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceDefaultProfileExcludeArgs\n            {\n                Address = \"192.0.2.0/24\",\n                Description = \"Exclude testing domains from the tunnel\",\n            },\n        },\n        ExcludeOfficeIps = true,\n        Includes = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceDefaultProfileIncludeArgs\n            {\n                Address = \"192.0.2.0/24\",\n                Description = \"Include testing domains in the tunnel\",\n            },\n        },\n        LanAllowMinutes = 30,\n        LanAllowSubnetSize = 24,\n        RegisterInterfaceIpWithDns = true,\n        SccmVpnBoundarySupport = false,\n        ServiceModeV2 = new Cloudflare.Inputs.ZeroTrustDeviceDefaultProfileServiceModeV2Args\n        {\n            Mode = \"proxy\",\n            Port = 3000,\n        },\n        SupportUrl = \"https://1.1.1.1/help\",\n        SwitchLocked = true,\n        TunnelProtocol = \"wireguard\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceDefaultProfile(ctx, \"example_zero_trust_device_default_profile\", \u0026cloudflare.ZeroTrustDeviceDefaultProfileArgs{\n\t\t\tAccountId:           pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tAllowModeSwitch:     pulumi.Bool(true),\n\t\t\tAllowUpdates:        pulumi.Bool(true),\n\t\t\tAllowedToLeave:      pulumi.Bool(true),\n\t\t\tAutoConnect:         pulumi.Float64(0),\n\t\t\tCaptivePortal:       pulumi.Float64(180),\n\t\t\tDisableAutoFallback: pulumi.Bool(true),\n\t\t\tExcludes: cloudflare.ZeroTrustDeviceDefaultProfileExcludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceDefaultProfileExcludeArgs{\n\t\t\t\t\tAddress:     pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\tDescription: pulumi.String(\"Exclude testing domains from the tunnel\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tExcludeOfficeIps: pulumi.Bool(true),\n\t\t\tIncludes: cloudflare.ZeroTrustDeviceDefaultProfileIncludeArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceDefaultProfileIncludeArgs{\n\t\t\t\t\tAddress:     pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\tDescription: pulumi.String(\"Include testing domains in the tunnel\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLanAllowMinutes:            pulumi.Float64(30),\n\t\t\tLanAllowSubnetSize:         pulumi.Float64(24),\n\t\t\tRegisterInterfaceIpWithDns: pulumi.Bool(true),\n\t\t\tSccmVpnBoundarySupport:     pulumi.Bool(false),\n\t\t\tServiceModeV2: \u0026cloudflare.ZeroTrustDeviceDefaultProfileServiceModeV2Args{\n\t\t\t\tMode: pulumi.String(\"proxy\"),\n\t\t\t\tPort: pulumi.Float64(3000),\n\t\t\t},\n\t\t\tSupportUrl:     pulumi.String(\"https://1.1.1.1/help\"),\n\t\t\tSwitchLocked:   pulumi.Bool(true),\n\t\t\tTunnelProtocol: pulumi.String(\"wireguard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceDefaultProfile;\nimport com.pulumi.cloudflare.ZeroTrustDeviceDefaultProfileArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceDefaultProfileExcludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceDefaultProfileIncludeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceDefaultProfileServiceModeV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceDefaultProfile = new ZeroTrustDeviceDefaultProfile(\"exampleZeroTrustDeviceDefaultProfile\", ZeroTrustDeviceDefaultProfileArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .allowModeSwitch(true)\n            .allowUpdates(true)\n            .allowedToLeave(true)\n            .autoConnect(0.0)\n            .captivePortal(180.0)\n            .disableAutoFallback(true)\n            .excludes(ZeroTrustDeviceDefaultProfileExcludeArgs.builder()\n                .address(\"192.0.2.0/24\")\n                .description(\"Exclude testing domains from the tunnel\")\n                .build())\n            .excludeOfficeIps(true)\n            .includes(ZeroTrustDeviceDefaultProfileIncludeArgs.builder()\n                .address(\"192.0.2.0/24\")\n                .description(\"Include testing domains in the tunnel\")\n                .build())\n            .lanAllowMinutes(30.0)\n            .lanAllowSubnetSize(24.0)\n            .registerInterfaceIpWithDns(true)\n            .sccmVpnBoundarySupport(false)\n            .serviceModeV2(ZeroTrustDeviceDefaultProfileServiceModeV2Args.builder()\n                .mode(\"proxy\")\n                .port(3000.0)\n                .build())\n            .supportUrl(\"https://1.1.1.1/help\")\n            .switchLocked(true)\n            .tunnelProtocol(\"wireguard\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceDefaultProfile:\n    type: cloudflare:ZeroTrustDeviceDefaultProfile\n    name: example_zero_trust_device_default_profile\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      allowModeSwitch: true\n      allowUpdates: true\n      allowedToLeave: true\n      autoConnect: 0\n      captivePortal: 180\n      disableAutoFallback: true\n      excludes:\n        - address: 192.0.2.0/24\n          description: Exclude testing domains from the tunnel\n      excludeOfficeIps: true\n      includes:\n        - address: 192.0.2.0/24\n          description: Include testing domains in the tunnel\n      lanAllowMinutes: 30\n      lanAllowSubnetSize: 24\n      registerInterfaceIpWithDns: true\n      sccmVpnBoundarySupport: false\n      serviceModeV2:\n        mode: proxy\n        port: 3000\n      supportUrl: https://1.1.1.1/help\n      switchLocked: true\n      tunnelProtocol: wireguard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceDefaultProfile:ZeroTrustDeviceDefaultProfile example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "allowModeSwitch": {
                    "type": "boolean",
                    "description": "Whether to allow the user to switch WARP between modes.\n"
                },
                "allowUpdates": {
                    "type": "boolean",
                    "description": "Whether to receive update notifications when a new version of the client is available.\n"
                },
                "allowedToLeave": {
                    "type": "boolean",
                    "description": "Whether to allow devices to leave the organization.\n"
                },
                "autoConnect": {
                    "type": "number",
                    "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                },
                "captivePortal": {
                    "type": "number",
                    "description": "Turn on the captive portal after the specified amount of time.\n"
                },
                "default": {
                    "type": "boolean",
                    "description": "Whether the policy will be applied to matching devices.\n"
                },
                "disableAutoFallback": {
                    "type": "boolean",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the policy will be applied to matching devices.\n"
                },
                "excludeOfficeIps": {
                    "type": "boolean",
                    "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileExclude:ZeroTrustDeviceDefaultProfileExclude"
                    },
                    "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "fallbackDomains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileFallbackDomain:ZeroTrustDeviceDefaultProfileFallbackDomain"
                    }
                },
                "gatewayUniqueId": {
                    "type": "string"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileInclude:ZeroTrustDeviceDefaultProfileInclude"
                    },
                    "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "lanAllowMinutes": {
                    "type": "number",
                    "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                },
                "lanAllowSubnetSize": {
                    "type": "number",
                    "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                },
                "policyId": {
                    "type": "string"
                },
                "registerInterfaceIpWithDns": {
                    "type": "boolean",
                    "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                },
                "sccmVpnBoundarySupport": {
                    "type": "boolean",
                    "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                },
                "serviceModeV2": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileServiceModeV2:ZeroTrustDeviceDefaultProfileServiceModeV2"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "The URL to launch when the Send Feedback button is clicked.\n"
                },
                "switchLocked": {
                    "type": "boolean",
                    "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                },
                "tunnelProtocol": {
                    "type": "string",
                    "description": "Determines which tunnel protocol to use.\n"
                }
            },
            "required": [
                "accountId",
                "allowModeSwitch",
                "allowUpdates",
                "allowedToLeave",
                "autoConnect",
                "captivePortal",
                "default",
                "disableAutoFallback",
                "enabled",
                "excludes",
                "excludeOfficeIps",
                "fallbackDomains",
                "gatewayUniqueId",
                "includes",
                "policyId",
                "registerInterfaceIpWithDns",
                "sccmVpnBoundarySupport",
                "serviceModeV2",
                "supportUrl",
                "switchLocked",
                "tunnelProtocol"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "allowModeSwitch": {
                    "type": "boolean",
                    "description": "Whether to allow the user to switch WARP between modes.\n"
                },
                "allowUpdates": {
                    "type": "boolean",
                    "description": "Whether to receive update notifications when a new version of the client is available.\n"
                },
                "allowedToLeave": {
                    "type": "boolean",
                    "description": "Whether to allow devices to leave the organization.\n"
                },
                "autoConnect": {
                    "type": "number",
                    "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                },
                "captivePortal": {
                    "type": "number",
                    "description": "Turn on the captive portal after the specified amount of time.\n"
                },
                "disableAutoFallback": {
                    "type": "boolean",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "excludeOfficeIps": {
                    "type": "boolean",
                    "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                },
                "excludes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileExclude:ZeroTrustDeviceDefaultProfileExclude"
                    },
                    "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileInclude:ZeroTrustDeviceDefaultProfileInclude"
                    },
                    "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                },
                "lanAllowMinutes": {
                    "type": "number",
                    "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                },
                "lanAllowSubnetSize": {
                    "type": "number",
                    "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                },
                "registerInterfaceIpWithDns": {
                    "type": "boolean",
                    "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                },
                "sccmVpnBoundarySupport": {
                    "type": "boolean",
                    "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                },
                "serviceModeV2": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileServiceModeV2:ZeroTrustDeviceDefaultProfileServiceModeV2"
                },
                "supportUrl": {
                    "type": "string",
                    "description": "The URL to launch when the Send Feedback button is clicked.\n"
                },
                "switchLocked": {
                    "type": "boolean",
                    "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                },
                "tunnelProtocol": {
                    "type": "string",
                    "description": "Determines which tunnel protocol to use.\n"
                }
            },
            "requiredInputs": [
                "accountId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceDefaultProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "allowModeSwitch": {
                        "type": "boolean",
                        "description": "Whether to allow the user to switch WARP between modes.\n"
                    },
                    "allowUpdates": {
                        "type": "boolean",
                        "description": "Whether to receive update notifications when a new version of the client is available.\n"
                    },
                    "allowedToLeave": {
                        "type": "boolean",
                        "description": "Whether to allow devices to leave the organization.\n"
                    },
                    "autoConnect": {
                        "type": "number",
                        "description": "The amount of time in seconds to reconnect after having been disabled.\n"
                    },
                    "captivePortal": {
                        "type": "number",
                        "description": "Turn on the captive portal after the specified amount of time.\n"
                    },
                    "default": {
                        "type": "boolean",
                        "description": "Whether the policy will be applied to matching devices.\n"
                    },
                    "disableAutoFallback": {
                        "type": "boolean",
                        "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the policy will be applied to matching devices.\n"
                    },
                    "excludeOfficeIps": {
                        "type": "boolean",
                        "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n"
                    },
                    "excludes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileExclude:ZeroTrustDeviceDefaultProfileExclude"
                        },
                        "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                    },
                    "fallbackDomains": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileFallbackDomain:ZeroTrustDeviceDefaultProfileFallbackDomain"
                        }
                    },
                    "gatewayUniqueId": {
                        "type": "string"
                    },
                    "includes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileInclude:ZeroTrustDeviceDefaultProfileInclude"
                        },
                        "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.\n"
                    },
                    "lanAllowMinutes": {
                        "type": "number",
                        "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n"
                    },
                    "lanAllowSubnetSize": {
                        "type": "number",
                        "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n"
                    },
                    "policyId": {
                        "type": "string"
                    },
                    "registerInterfaceIpWithDns": {
                        "type": "boolean",
                        "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n"
                    },
                    "sccmVpnBoundarySupport": {
                        "type": "boolean",
                        "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n"
                    },
                    "serviceModeV2": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileServiceModeV2:ZeroTrustDeviceDefaultProfileServiceModeV2"
                    },
                    "supportUrl": {
                        "type": "string",
                        "description": "The URL to launch when the Send Feedback button is clicked.\n"
                    },
                    "switchLocked": {
                        "type": "boolean",
                        "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n"
                    },
                    "tunnelProtocol": {
                        "type": "string",
                        "description": "Determines which tunnel protocol to use.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/deviceSettingsPolicy:DeviceSettingsPolicy"
                },
                {
                    "type": "cloudflare:index/splitTunnel:SplitTunnel"
                }
            ]
        },
        "cloudflare:index/zeroTrustDeviceDefaultProfileCertificates:ZeroTrustDeviceDefaultProfileCertificates": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceDefaultProfileCertificates = new cloudflare.ZeroTrustDeviceDefaultProfileCertificates(\"example_zero_trust_device_default_profile_certificates\", {\n    zoneId: \"699d98642c564d2e855e9661899b7252\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_default_profile_certificates = cloudflare.ZeroTrustDeviceDefaultProfileCertificates(\"example_zero_trust_device_default_profile_certificates\",\n    zone_id=\"699d98642c564d2e855e9661899b7252\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceDefaultProfileCertificates = new Cloudflare.Index.ZeroTrustDeviceDefaultProfileCertificates(\"example_zero_trust_device_default_profile_certificates\", new()\n    {\n        ZoneId = \"699d98642c564d2e855e9661899b7252\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceDefaultProfileCertificates(ctx, \"example_zero_trust_device_default_profile_certificates\", \u0026cloudflare.ZeroTrustDeviceDefaultProfileCertificatesArgs{\n\t\t\tZoneId:  pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceDefaultProfileCertificates;\nimport com.pulumi.cloudflare.ZeroTrustDeviceDefaultProfileCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceDefaultProfileCertificates = new ZeroTrustDeviceDefaultProfileCertificates(\"exampleZeroTrustDeviceDefaultProfileCertificates\", ZeroTrustDeviceDefaultProfileCertificatesArgs.builder()\n            .zoneId(\"699d98642c564d2e855e9661899b7252\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceDefaultProfileCertificates:\n    type: cloudflare:ZeroTrustDeviceDefaultProfileCertificates\n    name: example_zero_trust_device_default_profile_certificates\n    properties:\n      zoneId: 699d98642c564d2e855e9661899b7252\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "The current status of the device policy certificate provisioning feature for WARP clients.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "required": [
                "enabled"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "The current status of the device policy certificate provisioning feature for WARP clients.\n"
                },
                "zoneId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "enabled"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceDefaultProfileCertificates resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "The current status of the device policy certificate provisioning feature for WARP clients.\n"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDeviceDefaultProfileLocalDomainFallback:ZeroTrustDeviceDefaultProfileLocalDomainFallback": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceDefaultProfileLocalDomainFallback = new cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallback(\"example_zero_trust_device_default_profile_local_domain_fallback\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    domains: [{\n        suffix: \"example.com\",\n        description: \"Domain bypass for local development\",\n        dnsServer: [\"1.1.1.1\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_default_profile_local_domain_fallback = cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallback(\"example_zero_trust_device_default_profile_local_domain_fallback\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    domains=[{\n        \"suffix\": \"example.com\",\n        \"description\": \"Domain bypass for local development\",\n        \"dns_server\": [\"1.1.1.1\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceDefaultProfileLocalDomainFallback = new Cloudflare.Index.ZeroTrustDeviceDefaultProfileLocalDomainFallback(\"example_zero_trust_device_default_profile_local_domain_fallback\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Domains = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomainArgs\n            {\n                Suffix = \"example.com\",\n                Description = \"Domain bypass for local development\",\n                DnsServer = new[]\n                {\n                    \"1.1.1.1\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceDefaultProfileLocalDomainFallback(ctx, \"example_zero_trust_device_default_profile_local_domain_fallback\", \u0026cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallbackArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tDomains: cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomainArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomainArgs{\n\t\t\t\t\tSuffix:      pulumi.String(\"example.com\"),\n\t\t\t\t\tDescription: pulumi.String(\"Domain bypass for local development\"),\n\t\t\t\t\tDnsServer: []string{\n\t\t\t\t\t\t\"1.1.1.1\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallback;\nimport com.pulumi.cloudflare.ZeroTrustDeviceDefaultProfileLocalDomainFallbackArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceDefaultProfileLocalDomainFallback = new ZeroTrustDeviceDefaultProfileLocalDomainFallback(\"exampleZeroTrustDeviceDefaultProfileLocalDomainFallback\", ZeroTrustDeviceDefaultProfileLocalDomainFallbackArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .domains(ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomainArgs.builder()\n                .suffix(\"example.com\")\n                .description(\"Domain bypass for local development\")\n                .dnsServer(List.of(\"1.1.1.1\"))\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceDefaultProfileLocalDomainFallback:\n    type: cloudflare:ZeroTrustDeviceDefaultProfileLocalDomainFallback\n    name: example_zero_trust_device_default_profile_local_domain_fallback\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      domains:\n        - suffix: example.com\n          description: Domain bypass for local development\n          dnsServer:\n            - 1.1.1.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceDefaultProfileLocalDomainFallback:ZeroTrustDeviceDefaultProfileLocalDomainFallback example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain:ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain"
                    }
                }
            },
            "required": [
                "accountId",
                "domains"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain:ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain"
                    }
                }
            },
            "requiredInputs": [
                "accountId",
                "domains"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceDefaultProfileLocalDomainFallback resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "domains": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain:ZeroTrustDeviceDefaultProfileLocalDomainFallbackDomain"
                        }
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDeviceIpProfile:ZeroTrustDeviceIpProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceIpProfile = new cloudflare.ZeroTrustDeviceIpProfile(\"example_zero_trust_device_ip_profile\", {\n    accountId: \"account_id\",\n    match: \"identity.email == \\\"test@cloudflare.com\\\"\",\n    name: \"IPv4 Cloudflare Source IPs\",\n    precedence: 100,\n    subnetId: \"b70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    description: \"example comment\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_ip_profile = cloudflare.ZeroTrustDeviceIpProfile(\"example_zero_trust_device_ip_profile\",\n    account_id=\"account_id\",\n    match=\"identity.email == \\\"test@cloudflare.com\\\"\",\n    name=\"IPv4 Cloudflare Source IPs\",\n    precedence=100,\n    subnet_id=\"b70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    description=\"example comment\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceIpProfile = new Cloudflare.Index.ZeroTrustDeviceIpProfile(\"example_zero_trust_device_ip_profile\", new()\n    {\n        AccountId = \"account_id\",\n        Match = \"identity.email == \\\"test@cloudflare.com\\\"\",\n        Name = \"IPv4 Cloudflare Source IPs\",\n        Precedence = 100,\n        SubnetId = \"b70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        Description = \"example comment\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceIpProfile(ctx, \"example_zero_trust_device_ip_profile\", \u0026cloudflare.ZeroTrustDeviceIpProfileArgs{\n\t\t\tAccountId:   pulumi.String(\"account_id\"),\n\t\t\tMatch:       pulumi.String(\"identity.email == \\\"test@cloudflare.com\\\"\"),\n\t\t\tName:        pulumi.String(\"IPv4 Cloudflare Source IPs\"),\n\t\t\tPrecedence:  pulumi.Int(100),\n\t\t\tSubnetId:    pulumi.String(\"b70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tDescription: pulumi.String(\"example comment\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceIpProfile;\nimport com.pulumi.cloudflare.ZeroTrustDeviceIpProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceIpProfile = new ZeroTrustDeviceIpProfile(\"exampleZeroTrustDeviceIpProfile\", ZeroTrustDeviceIpProfileArgs.builder()\n            .accountId(\"account_id\")\n            .match(\"identity.email == \\\"test@cloudflare.com\\\"\")\n            .name(\"IPv4 Cloudflare Source IPs\")\n            .precedence(100)\n            .subnetId(\"b70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .description(\"example comment\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceIpProfile:\n    type: cloudflare:ZeroTrustDeviceIpProfile\n    name: example_zero_trust_device_ip_profile\n    properties:\n      accountId: account_id\n      match: identity.email == \"test@cloudflare.com\"\n      name: IPv4 Cloudflare Source IPs\n      precedence: 100\n      subnetId: b70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n      description: example comment\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceIpProfile:ZeroTrustDeviceIpProfile example '\u003caccount_id\u003e/\u003cprofile_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string",
                    "description": "The RFC3339Nano timestamp when the Device IP profile was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description of the Device IP profile.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Device IP profile will be applied to matching devices.\n"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the Device IP profile.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field.\n"
                },
                "subnetId": {
                    "type": "string",
                    "description": "The ID of the Subnet.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The RFC3339Nano timestamp when the Device IP profile was last updated.\n"
                }
            },
            "required": [
                "createdAt",
                "enabled",
                "match",
                "name",
                "precedence",
                "subnetId",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "An optional description of the Device IP profile.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Device IP profile will be applied to matching devices.\n"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the Device IP profile.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field.\n"
                },
                "subnetId": {
                    "type": "string",
                    "description": "The ID of the Subnet.\n"
                }
            },
            "requiredInputs": [
                "match",
                "name",
                "precedence",
                "subnetId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceIpProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "The RFC3339Nano timestamp when the Device IP profile was created.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An optional description of the Device IP profile.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the Device IP profile will be applied to matching devices.\n"
                    },
                    "match": {
                        "type": "string",
                        "description": "The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\".\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for the Device IP profile.\n"
                    },
                    "precedence": {
                        "type": "integer",
                        "description": "The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field.\n"
                    },
                    "subnetId": {
                        "type": "string",
                        "description": "The ID of the Subnet.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "The RFC3339Nano timestamp when the Device IP profile was last updated.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDeviceManagedNetworks:ZeroTrustDeviceManagedNetworks": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceManagedNetworks = new cloudflare.ZeroTrustDeviceManagedNetworks(\"example_zero_trust_device_managed_networks\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    config: {\n        tlsSockaddr: \"foo.bar:1234\",\n        sha256: \"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\",\n    },\n    name: \"managed-network-1\",\n    type: \"tls\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_managed_networks = cloudflare.ZeroTrustDeviceManagedNetworks(\"example_zero_trust_device_managed_networks\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    config={\n        \"tls_sockaddr\": \"foo.bar:1234\",\n        \"sha256\": \"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\",\n    },\n    name=\"managed-network-1\",\n    type=\"tls\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceManagedNetworks = new Cloudflare.Index.ZeroTrustDeviceManagedNetworks(\"example_zero_trust_device_managed_networks\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Config = new Cloudflare.Inputs.ZeroTrustDeviceManagedNetworksConfigArgs\n        {\n            TlsSockaddr = \"foo.bar:1234\",\n            Sha256 = \"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\",\n        },\n        Name = \"managed-network-1\",\n        Type = \"tls\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceManagedNetworks(ctx, \"example_zero_trust_device_managed_networks\", \u0026cloudflare.ZeroTrustDeviceManagedNetworksArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tConfig: \u0026cloudflare.ZeroTrustDeviceManagedNetworksConfigArgs{\n\t\t\t\tTlsSockaddr: pulumi.String(\"foo.bar:1234\"),\n\t\t\t\tSha256:      pulumi.String(\"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"managed-network-1\"),\n\t\t\tType: pulumi.String(\"tls\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceManagedNetworks;\nimport com.pulumi.cloudflare.ZeroTrustDeviceManagedNetworksArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceManagedNetworksConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceManagedNetworks = new ZeroTrustDeviceManagedNetworks(\"exampleZeroTrustDeviceManagedNetworks\", ZeroTrustDeviceManagedNetworksArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .config(ZeroTrustDeviceManagedNetworksConfigArgs.builder()\n                .tlsSockaddr(\"foo.bar:1234\")\n                .sha256(\"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\")\n                .build())\n            .name(\"managed-network-1\")\n            .type(\"tls\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceManagedNetworks:\n    type: cloudflare:ZeroTrustDeviceManagedNetworks\n    name: example_zero_trust_device_managed_networks\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      config:\n        tlsSockaddr: foo.bar:1234\n        sha256: b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\n      name: managed-network-1\n      type: tls\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceManagedNetworks:ZeroTrustDeviceManagedNetworks example '\u003caccount_id\u003e/\u003cnetwork_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDeviceManagedNetworksConfig:ZeroTrustDeviceManagedNetworksConfig",
                    "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device managed network. This name must be unique.\n"
                },
                "networkId": {
                    "type": "string",
                    "description": "API UUID.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                }
            },
            "required": [
                "config",
                "name",
                "networkId",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDeviceManagedNetworksConfig:ZeroTrustDeviceManagedNetworksConfig",
                    "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device managed network. This name must be unique.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                }
            },
            "requiredInputs": [
                "config",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceManagedNetworks resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDeviceManagedNetworksConfig:ZeroTrustDeviceManagedNetworksConfig",
                        "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device managed network. This name must be unique.\n"
                    },
                    "networkId": {
                        "type": "string",
                        "description": "API UUID.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of device managed network.\nAvailable values: \"tls\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/deviceManagedNetworks:DeviceManagedNetworks"
                }
            ]
        },
        "cloudflare:index/zeroTrustDevicePostureIntegration:ZeroTrustDevicePostureIntegration": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureIntegration = new cloudflare.ZeroTrustDevicePostureIntegration(\"example_zero_trust_device_posture_integration\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    config: {\n        apiUrl: \"https://as123.awmdm.com/API\",\n        authUrl: \"https://na.uemauth.workspaceone.com/connect/token\",\n        clientId: \"example client id\",\n        clientSecret: \"example client secret\",\n    },\n    interval: \"10m\",\n    name: \"My Workspace One Integration\",\n    type: \"workspace_one\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_integration = cloudflare.ZeroTrustDevicePostureIntegration(\"example_zero_trust_device_posture_integration\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    config={\n        \"api_url\": \"https://as123.awmdm.com/API\",\n        \"auth_url\": \"https://na.uemauth.workspaceone.com/connect/token\",\n        \"client_id\": \"example client id\",\n        \"client_secret\": \"example client secret\",\n    },\n    interval=\"10m\",\n    name=\"My Workspace One Integration\",\n    type=\"workspace_one\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureIntegration = new Cloudflare.Index.ZeroTrustDevicePostureIntegration(\"example_zero_trust_device_posture_integration\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Config = new Cloudflare.Inputs.ZeroTrustDevicePostureIntegrationConfigArgs\n        {\n            ApiUrl = \"https://as123.awmdm.com/API\",\n            AuthUrl = \"https://na.uemauth.workspaceone.com/connect/token\",\n            ClientId = \"example client id\",\n            ClientSecret = \"example client secret\",\n        },\n        Interval = \"10m\",\n        Name = \"My Workspace One Integration\",\n        Type = \"workspace_one\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDevicePostureIntegration(ctx, \"example_zero_trust_device_posture_integration\", \u0026cloudflare.ZeroTrustDevicePostureIntegrationArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tConfig: \u0026cloudflare.ZeroTrustDevicePostureIntegrationConfigArgs{\n\t\t\t\tApiUrl:       pulumi.String(\"https://as123.awmdm.com/API\"),\n\t\t\t\tAuthUrl:      pulumi.String(\"https://na.uemauth.workspaceone.com/connect/token\"),\n\t\t\t\tClientId:     pulumi.String(\"example client id\"),\n\t\t\t\tClientSecret: pulumi.String(\"example client secret\"),\n\t\t\t},\n\t\t\tInterval: pulumi.String(\"10m\"),\n\t\t\tName:     pulumi.String(\"My Workspace One Integration\"),\n\t\t\tType:     pulumi.String(\"workspace_one\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureIntegration;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureIntegrationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDevicePostureIntegrationConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDevicePostureIntegration = new ZeroTrustDevicePostureIntegration(\"exampleZeroTrustDevicePostureIntegration\", ZeroTrustDevicePostureIntegrationArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .config(ZeroTrustDevicePostureIntegrationConfigArgs.builder()\n                .apiUrl(\"https://as123.awmdm.com/API\")\n                .authUrl(\"https://na.uemauth.workspaceone.com/connect/token\")\n                .clientId(\"example client id\")\n                .clientSecret(\"example client secret\")\n                .build())\n            .interval(\"10m\")\n            .name(\"My Workspace One Integration\")\n            .type(\"workspace_one\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDevicePostureIntegration:\n    type: cloudflare:ZeroTrustDevicePostureIntegration\n    name: example_zero_trust_device_posture_integration\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      config:\n        apiUrl: https://as123.awmdm.com/API\n        authUrl: https://na.uemauth.workspaceone.com/connect/token\n        clientId: example client id\n        clientSecret: example client secret\n      interval: 10m\n      name: My Workspace One Integration\n      type: workspace_one\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDevicePostureIntegration:ZeroTrustDevicePostureIntegration example '\u003caccount_id\u003e/\u003cintegration_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureIntegrationConfig:ZeroTrustDevicePostureIntegrationConfig",
                    "description": "The configuration object containing third-party integration information.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture integration.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                }
            },
            "required": [
                "config",
                "interval",
                "name",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureIntegrationConfig:ZeroTrustDevicePostureIntegrationConfig",
                    "description": "The configuration object containing third-party integration information.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture integration.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "config",
                "interval",
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDevicePostureIntegration resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureIntegrationConfig:ZeroTrustDevicePostureIntegrationConfig",
                        "description": "The configuration object containing third-party integration information.\n"
                    },
                    "interval": {
                        "type": "string",
                        "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device posture integration.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/devicePostureIntegration:DevicePostureIntegration"
                }
            ]
        },
        "cloudflare:index/zeroTrustDevicePostureRule:ZeroTrustDevicePostureRule": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureRule = new cloudflare.ZeroTrustDevicePostureRule(\"example_zero_trust_device_posture_rule\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Admin Serial Numbers\",\n    type: \"file\",\n    description: \"The rule for admin serial numbers\",\n    expiration: \"1h\",\n    input: {\n        operatingSystem: \"linux\",\n        path: \"/bin/cat\",\n        exists: true,\n        sha256: \"https://api.us-2.crowdstrike.com\",\n        thumbprint: \"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\",\n    },\n    matches: [{\n        platform: \"windows\",\n    }],\n    schedule: \"1h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_rule = cloudflare.ZeroTrustDevicePostureRule(\"example_zero_trust_device_posture_rule\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Admin Serial Numbers\",\n    type=\"file\",\n    description=\"The rule for admin serial numbers\",\n    expiration=\"1h\",\n    input={\n        \"operating_system\": \"linux\",\n        \"path\": \"/bin/cat\",\n        \"exists\": True,\n        \"sha256\": \"https://api.us-2.crowdstrike.com\",\n        \"thumbprint\": \"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\",\n    },\n    matches=[{\n        \"platform\": \"windows\",\n    }],\n    schedule=\"1h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureRule = new Cloudflare.Index.ZeroTrustDevicePostureRule(\"example_zero_trust_device_posture_rule\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Admin Serial Numbers\",\n        Type = \"file\",\n        Description = \"The rule for admin serial numbers\",\n        Expiration = \"1h\",\n        Input = new Cloudflare.Inputs.ZeroTrustDevicePostureRuleInputArgs\n        {\n            OperatingSystem = \"linux\",\n            Path = \"/bin/cat\",\n            Exists = true,\n            Sha256 = \"https://api.us-2.crowdstrike.com\",\n            Thumbprint = \"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\",\n        },\n        Matches = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDevicePostureRuleMatchArgs\n            {\n                Platform = \"windows\",\n            },\n        },\n        Schedule = \"1h\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDevicePostureRule(ctx, \"example_zero_trust_device_posture_rule\", \u0026cloudflare.ZeroTrustDevicePostureRuleArgs{\n\t\t\tAccountId:   pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:        pulumi.String(\"Admin Serial Numbers\"),\n\t\t\tType:        pulumi.String(\"file\"),\n\t\t\tDescription: pulumi.String(\"The rule for admin serial numbers\"),\n\t\t\tExpiration:  pulumi.String(\"1h\"),\n\t\t\tInput: \u0026cloudflare.ZeroTrustDevicePostureRuleInputTypeArgs{\n\t\t\t\tOperatingSystem: pulumi.String(\"linux\"),\n\t\t\t\tPath:            pulumi.String(\"/bin/cat\"),\n\t\t\t\tExists:          pulumi.Bool(true),\n\t\t\t\tSha256:          pulumi.String(\"https://api.us-2.crowdstrike.com\"),\n\t\t\t\tThumbprint:      pulumi.String(\"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\"),\n\t\t\t},\n\t\t\tMatches: cloudflare.ZeroTrustDevicePostureRuleMatchArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDevicePostureRuleMatchArgs{\n\t\t\t\t\tPlatform: pulumi.String(\"windows\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSchedule: pulumi.String(\"1h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureRule;\nimport com.pulumi.cloudflare.ZeroTrustDevicePostureRuleArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDevicePostureRuleInputArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDevicePostureRuleMatchArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDevicePostureRule = new ZeroTrustDevicePostureRule(\"exampleZeroTrustDevicePostureRule\", ZeroTrustDevicePostureRuleArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Admin Serial Numbers\")\n            .type(\"file\")\n            .description(\"The rule for admin serial numbers\")\n            .expiration(\"1h\")\n            .input(ZeroTrustDevicePostureRuleInputArgs.builder()\n                .operatingSystem(\"linux\")\n                .path(\"/bin/cat\")\n                .exists(true)\n                .sha256(\"https://api.us-2.crowdstrike.com\")\n                .thumbprint(\"0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\")\n                .build())\n            .matches(ZeroTrustDevicePostureRuleMatchArgs.builder()\n                .platform(\"windows\")\n                .build())\n            .schedule(\"1h\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDevicePostureRule:\n    type: cloudflare:ZeroTrustDevicePostureRule\n    name: example_zero_trust_device_posture_rule\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Admin Serial Numbers\n      type: file\n      description: The rule for admin serial numbers\n      expiration: 1h\n      input:\n        operatingSystem: linux\n        path: /bin/cat\n        exists: true\n        sha256: https://api.us-2.crowdstrike.com\n        thumbprint: 0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e\n      matches:\n        - platform: windows\n      schedule: 1h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDevicePostureRule:ZeroTrustDevicePostureRule example '\u003caccount_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the device posture rule.\n"
                },
                "expiration": {
                    "type": "string",
                    "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleInput:ZeroTrustDevicePostureRuleInput",
                    "description": "The value to be checked against.\n"
                },
                "matches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleMatch:ZeroTrustDevicePostureRuleMatch"
                    },
                    "description": "The conditions that the client must match to run the rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture rule.\n"
                },
                "schedule": {
                    "type": "string",
                    "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                }
            },
            "required": [
                "description",
                "type"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the device posture rule.\n"
                },
                "expiration": {
                    "type": "string",
                    "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                },
                "input": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleInput:ZeroTrustDevicePostureRuleInput",
                    "description": "The value to be checked against.\n"
                },
                "matches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleMatch:ZeroTrustDevicePostureRuleMatch"
                    },
                    "description": "The conditions that the client must match to run the rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the device posture rule.\n"
                },
                "schedule": {
                    "type": "string",
                    "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                }
            },
            "requiredInputs": [
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDevicePostureRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the device posture rule.\n"
                    },
                    "expiration": {
                        "type": "string",
                        "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n"
                    },
                    "input": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleInput:ZeroTrustDevicePostureRuleInput",
                        "description": "The value to be checked against.\n"
                    },
                    "matches": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDevicePostureRuleMatch:ZeroTrustDevicePostureRuleMatch"
                        },
                        "description": "The conditions that the client must match to run the rule.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the device posture rule.\n"
                    },
                    "schedule": {
                        "type": "string",
                        "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/devicePostureRule:DevicePostureRule"
                }
            ]
        },
        "cloudflare:index/zeroTrustDeviceSettings:ZeroTrustDeviceSettings": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceSettings = new cloudflare.ZeroTrustDeviceSettings(\"example_zero_trust_device_settings\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    disableForTime: 0,\n    externalEmergencySignalEnabled: true,\n    externalEmergencySignalFingerprint: \"abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234\",\n    externalEmergencySignalInterval: \"5m\",\n    externalEmergencySignalUrl: \"https://192.0.2.1/signal\",\n    gatewayProxyEnabled: true,\n    gatewayUdpProxyEnabled: true,\n    rootCertificateInstallationEnabled: true,\n    useZtVirtualIp: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_settings = cloudflare.ZeroTrustDeviceSettings(\"example_zero_trust_device_settings\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    disable_for_time=0,\n    external_emergency_signal_enabled=True,\n    external_emergency_signal_fingerprint=\"abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234\",\n    external_emergency_signal_interval=\"5m\",\n    external_emergency_signal_url=\"https://192.0.2.1/signal\",\n    gateway_proxy_enabled=True,\n    gateway_udp_proxy_enabled=True,\n    root_certificate_installation_enabled=True,\n    use_zt_virtual_ip=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceSettings = new Cloudflare.Index.ZeroTrustDeviceSettings(\"example_zero_trust_device_settings\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        DisableForTime = 0,\n        ExternalEmergencySignalEnabled = true,\n        ExternalEmergencySignalFingerprint = \"abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234\",\n        ExternalEmergencySignalInterval = \"5m\",\n        ExternalEmergencySignalUrl = \"https://192.0.2.1/signal\",\n        GatewayProxyEnabled = true,\n        GatewayUdpProxyEnabled = true,\n        RootCertificateInstallationEnabled = true,\n        UseZtVirtualIp = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceSettings(ctx, \"example_zero_trust_device_settings\", \u0026cloudflare.ZeroTrustDeviceSettingsArgs{\n\t\t\tAccountId:                          pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tDisableForTime:                     pulumi.Float64(0),\n\t\t\tExternalEmergencySignalEnabled:     pulumi.Bool(true),\n\t\t\tExternalEmergencySignalFingerprint: pulumi.String(\"abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234\"),\n\t\t\tExternalEmergencySignalInterval:    pulumi.String(\"5m\"),\n\t\t\tExternalEmergencySignalUrl:         pulumi.String(\"https://192.0.2.1/signal\"),\n\t\t\tGatewayProxyEnabled:                pulumi.Bool(true),\n\t\t\tGatewayUdpProxyEnabled:             pulumi.Bool(true),\n\t\t\tRootCertificateInstallationEnabled: pulumi.Bool(true),\n\t\t\tUseZtVirtualIp:                     pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceSettings;\nimport com.pulumi.cloudflare.ZeroTrustDeviceSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceSettings = new ZeroTrustDeviceSettings(\"exampleZeroTrustDeviceSettings\", ZeroTrustDeviceSettingsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .disableForTime(0.0)\n            .externalEmergencySignalEnabled(true)\n            .externalEmergencySignalFingerprint(\"abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234\")\n            .externalEmergencySignalInterval(\"5m\")\n            .externalEmergencySignalUrl(\"https://192.0.2.1/signal\")\n            .gatewayProxyEnabled(true)\n            .gatewayUdpProxyEnabled(true)\n            .rootCertificateInstallationEnabled(true)\n            .useZtVirtualIp(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceSettings:\n    type: cloudflare:ZeroTrustDeviceSettings\n    name: example_zero_trust_device_settings\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      disableForTime: 0\n      externalEmergencySignalEnabled: true\n      externalEmergencySignalFingerprint: abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234\n      externalEmergencySignalInterval: 5m\n      externalEmergencySignalUrl: https://192.0.2.1/signal\n      gatewayProxyEnabled: true\n      gatewayUdpProxyEnabled: true\n      rootCertificateInstallationEnabled: true\n      useZtVirtualIp: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "disableForTime": {
                    "type": "number",
                    "description": "Sets the time limit, in seconds, that a user can use an override code to bypass WARP.\n"
                },
                "externalEmergencySignalEnabled": {
                    "type": "boolean",
                    "description": "Controls whether the external emergency disconnect feature is enabled.\n"
                },
                "externalEmergencySignalFingerprint": {
                    "type": "string",
                    "description": "The SHA256 fingerprint (64 hexadecimal characters) of the HTTPS server certificate for the external*emergency*signal_url. If provided, the WARP client will use this value to verify the server's identity. The device will ignore any response if the server's certificate fingerprint does not exactly match this value.\n"
                },
                "externalEmergencySignalInterval": {
                    "type": "string",
                    "description": "The interval at which the WARP client fetches the emergency disconnect signal, formatted as a duration string (e.g., \"5m\", \"2m30s\", \"1h\"). Minimum 30 seconds.\n"
                },
                "externalEmergencySignalUrl": {
                    "type": "string",
                    "description": "The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host.\n"
                },
                "gatewayProxyEnabled": {
                    "type": "boolean",
                    "description": "Enable gateway proxy filtering on TCP.\n"
                },
                "gatewayUdpProxyEnabled": {
                    "type": "boolean",
                    "description": "Enable gateway proxy filtering on UDP.\n"
                },
                "rootCertificateInstallationEnabled": {
                    "type": "boolean",
                    "description": "Enable installation of cloudflare managed root certificate.\n"
                },
                "useZtVirtualIp": {
                    "type": "boolean",
                    "description": "Enable using CGNAT virtual IPv4.\n"
                }
            },
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "disableForTime": {
                    "type": "number",
                    "description": "Sets the time limit, in seconds, that a user can use an override code to bypass WARP.\n"
                },
                "externalEmergencySignalEnabled": {
                    "type": "boolean",
                    "description": "Controls whether the external emergency disconnect feature is enabled.\n"
                },
                "externalEmergencySignalFingerprint": {
                    "type": "string",
                    "description": "The SHA256 fingerprint (64 hexadecimal characters) of the HTTPS server certificate for the external*emergency*signal_url. If provided, the WARP client will use this value to verify the server's identity. The device will ignore any response if the server's certificate fingerprint does not exactly match this value.\n"
                },
                "externalEmergencySignalInterval": {
                    "type": "string",
                    "description": "The interval at which the WARP client fetches the emergency disconnect signal, formatted as a duration string (e.g., \"5m\", \"2m30s\", \"1h\"). Minimum 30 seconds.\n"
                },
                "externalEmergencySignalUrl": {
                    "type": "string",
                    "description": "The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host.\n"
                },
                "gatewayProxyEnabled": {
                    "type": "boolean",
                    "description": "Enable gateway proxy filtering on TCP.\n"
                },
                "gatewayUdpProxyEnabled": {
                    "type": "boolean",
                    "description": "Enable gateway proxy filtering on UDP.\n"
                },
                "rootCertificateInstallationEnabled": {
                    "type": "boolean",
                    "description": "Enable installation of cloudflare managed root certificate.\n"
                },
                "useZtVirtualIp": {
                    "type": "boolean",
                    "description": "Enable using CGNAT virtual IPv4.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceSettings resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "disableForTime": {
                        "type": "number",
                        "description": "Sets the time limit, in seconds, that a user can use an override code to bypass WARP.\n"
                    },
                    "externalEmergencySignalEnabled": {
                        "type": "boolean",
                        "description": "Controls whether the external emergency disconnect feature is enabled.\n"
                    },
                    "externalEmergencySignalFingerprint": {
                        "type": "string",
                        "description": "The SHA256 fingerprint (64 hexadecimal characters) of the HTTPS server certificate for the external*emergency*signal_url. If provided, the WARP client will use this value to verify the server's identity. The device will ignore any response if the server's certificate fingerprint does not exactly match this value.\n"
                    },
                    "externalEmergencySignalInterval": {
                        "type": "string",
                        "description": "The interval at which the WARP client fetches the emergency disconnect signal, formatted as a duration string (e.g., \"5m\", \"2m30s\", \"1h\"). Minimum 30 seconds.\n"
                    },
                    "externalEmergencySignalUrl": {
                        "type": "string",
                        "description": "The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host.\n"
                    },
                    "gatewayProxyEnabled": {
                        "type": "boolean",
                        "description": "Enable gateway proxy filtering on TCP.\n"
                    },
                    "gatewayUdpProxyEnabled": {
                        "type": "boolean",
                        "description": "Enable gateway proxy filtering on UDP.\n"
                    },
                    "rootCertificateInstallationEnabled": {
                        "type": "boolean",
                        "description": "Enable installation of cloudflare managed root certificate.\n"
                    },
                    "useZtVirtualIp": {
                        "type": "boolean",
                        "description": "Enable using CGNAT virtual IPv4.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDeviceSubnet:ZeroTrustDeviceSubnet": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceSubnet = new cloudflare.ZeroTrustDeviceSubnet(\"example_zero_trust_device_subnet\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"IPv4 Cloudflare Source IPs\",\n    network: \"100.64.0.0/12\",\n    comment: \"example comment\",\n    isDefaultNetwork: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_subnet = cloudflare.ZeroTrustDeviceSubnet(\"example_zero_trust_device_subnet\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"IPv4 Cloudflare Source IPs\",\n    network=\"100.64.0.0/12\",\n    comment=\"example comment\",\n    is_default_network=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceSubnet = new Cloudflare.Index.ZeroTrustDeviceSubnet(\"example_zero_trust_device_subnet\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"IPv4 Cloudflare Source IPs\",\n        Network = \"100.64.0.0/12\",\n        Comment = \"example comment\",\n        IsDefaultNetwork = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceSubnet(ctx, \"example_zero_trust_device_subnet\", \u0026cloudflare.ZeroTrustDeviceSubnetArgs{\n\t\t\tAccountId:        pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:             pulumi.String(\"IPv4 Cloudflare Source IPs\"),\n\t\t\tNetwork:          pulumi.String(\"100.64.0.0/12\"),\n\t\t\tComment:          pulumi.String(\"example comment\"),\n\t\t\tIsDefaultNetwork: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceSubnet;\nimport com.pulumi.cloudflare.ZeroTrustDeviceSubnetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceSubnet = new ZeroTrustDeviceSubnet(\"exampleZeroTrustDeviceSubnet\", ZeroTrustDeviceSubnetArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"IPv4 Cloudflare Source IPs\")\n            .network(\"100.64.0.0/12\")\n            .comment(\"example comment\")\n            .isDefaultNetwork(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceSubnet:\n    type: cloudflare:ZeroTrustDeviceSubnet\n    name: example_zero_trust_device_subnet\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: IPv4 Cloudflare Source IPs\n      network: 100.64.0.0/12\n      comment: example comment\n      isDefaultNetwork: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDeviceSubnet:ZeroTrustDeviceSubnet example '\u003caccount_id\u003e/\u003csubnet_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An optional description of the subnet.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this is the default subnet for the account. There can only be one default subnet per account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the subnet.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range defining the subnet, in CIDR notation.\n"
                },
                "subnetType": {
                    "type": "string",
                    "description": "The type of subnet.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"cloudflareSource\"\" pulumi-lang-dotnet=\"\"CloudflareSource\"\" pulumi-lang-go=\"\"cloudflareSource\"\" pulumi-lang-python=\"\"cloudflare_source\"\" pulumi-lang-yaml=\"\"cloudflareSource\"\" pulumi-lang-java=\"\"cloudflareSource\"\"\u003e\"cloudflareSource\"\u003c/span\u003e, \"warp\".\n"
                }
            },
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "isDefaultNetwork",
                "name",
                "network",
                "subnetType"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An optional description of the subnet.\n"
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this is the default subnet for the account. There can only be one default subnet per account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the subnet.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range defining the subnet, in CIDR notation.\n"
                }
            },
            "requiredInputs": [
                "name",
                "network"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDeviceSubnet resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "An optional description of the subnet.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "isDefaultNetwork": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this is the default subnet for the account. There can only be one default subnet per account.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for the subnet.\n"
                    },
                    "network": {
                        "type": "string",
                        "description": "The private IPv4 or IPv6 range defining the subnet, in CIDR notation.\n"
                    },
                    "subnetType": {
                        "type": "string",
                        "description": "The type of subnet.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"cloudflareSource\"\" pulumi-lang-dotnet=\"\"CloudflareSource\"\" pulumi-lang-go=\"\"cloudflareSource\"\" pulumi-lang-python=\"\"cloudflare_source\"\" pulumi-lang-yaml=\"\"cloudflareSource\"\" pulumi-lang-java=\"\"cloudflareSource\"\"\u003e\"cloudflareSource\"\u003c/span\u003e, \"warp\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDexRule:ZeroTrustDexRule": {
            "description": "Accepted Permissions\n\n- `Cloudflare DEX Read`\n- `Cloudflare DEX Write`\n- `Zero Trust Read`\n- `Zero Trust Report`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDexRule = new cloudflare.ZeroTrustDexRule(\"example_zero_trust_dex_rule\", {\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    match: \"match\",\n    name: \"name\",\n    description: \"description\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dex_rule = cloudflare.ZeroTrustDexRule(\"example_zero_trust_dex_rule\",\n    account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    match=\"match\",\n    name=\"name\",\n    description=\"description\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDexRule = new Cloudflare.Index.ZeroTrustDexRule(\"example_zero_trust_dex_rule\", new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        Match = \"match\",\n        Name = \"name\",\n        Description = \"description\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDexRule(ctx, \"example_zero_trust_dex_rule\", \u0026cloudflare.ZeroTrustDexRuleArgs{\n\t\t\tAccountId:   pulumi.String(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tMatch:       pulumi.String(\"match\"),\n\t\t\tName:        pulumi.String(\"name\"),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDexRule;\nimport com.pulumi.cloudflare.ZeroTrustDexRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDexRule = new ZeroTrustDexRule(\"exampleZeroTrustDexRule\", ZeroTrustDexRuleArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .match(\"match\")\n            .name(\"name\")\n            .description(\"description\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDexRule:\n    type: cloudflare:ZeroTrustDexRule\n    name: example_zero_trust_dex_rule\n    properties:\n      accountId: 01a7362d577a6c3019a474fd6f485823\n      match: match\n      name: name\n      description: description\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDexRule:ZeroTrustDexRule example '\u003caccount_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Rule.\n"
                },
                "targetedTests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDexRuleTargetedTest:ZeroTrustDexRuleTargetedTest"
                    }
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "match",
                "name",
                "targetedTests",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "match": {
                    "type": "string",
                    "description": "The wirefilter expression to match.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Rule.\n"
                }
            },
            "requiredInputs": [
                "match",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDexRule resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "match": {
                        "type": "string",
                        "description": "The wirefilter expression to match.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Rule.\n"
                    },
                    "targetedTests": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDexRuleTargetedTest:ZeroTrustDexRuleTargetedTest"
                        }
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDexTest:ZeroTrustDexTest": {
            "description": "Accepted Permissions\n\n- `Cloudflare DEX Read`\n- `Cloudflare DEX Write`\n- `Zero Trust Read`\n- `Zero Trust Report`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDexTest = new cloudflare.ZeroTrustDexTest(\"example_zero_trust_dex_test\", {\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    data: {\n        host: \"https://dash.cloudflare.com\",\n        kind: \"http\",\n        method: \"GET\",\n    },\n    enabled: true,\n    interval: \"30m\",\n    name: \"HTTP dash health check\",\n    description: \"Checks the dash endpoint every 30 minutes\",\n    targetPolicies: [{\n        id: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        \"default\": true,\n        name: \"name\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dex_test = cloudflare.ZeroTrustDexTest(\"example_zero_trust_dex_test\",\n    account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    data={\n        \"host\": \"https://dash.cloudflare.com\",\n        \"kind\": \"http\",\n        \"method\": \"GET\",\n    },\n    enabled=True,\n    interval=\"30m\",\n    name=\"HTTP dash health check\",\n    description=\"Checks the dash endpoint every 30 minutes\",\n    target_policies=[{\n        \"id\": \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        \"default\": True,\n        \"name\": \"name\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDexTest = new Cloudflare.Index.ZeroTrustDexTest(\"example_zero_trust_dex_test\", new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        Data = new Cloudflare.Inputs.ZeroTrustDexTestDataArgs\n        {\n            Host = \"https://dash.cloudflare.com\",\n            Kind = \"http\",\n            Method = \"GET\",\n        },\n        Enabled = true,\n        Interval = \"30m\",\n        Name = \"HTTP dash health check\",\n        Description = \"Checks the dash endpoint every 30 minutes\",\n        TargetPolicies = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDexTestTargetPolicyArgs\n            {\n                Id = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n                Default = true,\n                Name = \"name\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDexTest(ctx, \"example_zero_trust_dex_test\", \u0026cloudflare.ZeroTrustDexTestArgs{\n\t\t\tAccountId: pulumi.String(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tData: \u0026cloudflare.ZeroTrustDexTestDataArgs{\n\t\t\t\tHost:   pulumi.String(\"https://dash.cloudflare.com\"),\n\t\t\t\tKind:   pulumi.String(\"http\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t},\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tInterval:    pulumi.String(\"30m\"),\n\t\t\tName:        pulumi.String(\"HTTP dash health check\"),\n\t\t\tDescription: pulumi.String(\"Checks the dash endpoint every 30 minutes\"),\n\t\t\tTargetPolicies: cloudflare.ZeroTrustDexTestTargetPolicyArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDexTestTargetPolicyArgs{\n\t\t\t\t\tId:      pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t\tName:    pulumi.String(\"name\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDexTest;\nimport com.pulumi.cloudflare.ZeroTrustDexTestArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDexTestDataArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDexTestTargetPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDexTest = new ZeroTrustDexTest(\"exampleZeroTrustDexTest\", ZeroTrustDexTestArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .data(ZeroTrustDexTestDataArgs.builder()\n                .host(\"https://dash.cloudflare.com\")\n                .kind(\"http\")\n                .method(\"GET\")\n                .build())\n            .enabled(true)\n            .interval(\"30m\")\n            .name(\"HTTP dash health check\")\n            .description(\"Checks the dash endpoint every 30 minutes\")\n            .targetPolicies(ZeroTrustDexTestTargetPolicyArgs.builder()\n                .id(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n                .default_(true)\n                .name(\"name\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDexTest:\n    type: cloudflare:ZeroTrustDexTest\n    name: example_zero_trust_dex_test\n    properties:\n      accountId: 01a7362d577a6c3019a474fd6f485823\n      data:\n        host: https://dash.cloudflare.com\n        kind: http\n        method: GET\n      enabled: true\n      interval: 30m\n      name: HTTP dash health check\n      description: Checks the dash endpoint every 30 minutes\n      targetPolicies:\n        - id: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n          default: true\n          name: name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDexTest:ZeroTrustDexTest example '\u003caccount_id\u003e/\u003cdex_test_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDexTestData:ZeroTrustDexTestData",
                    "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Additional details about the test.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether or not the test is active.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "How often the test will run.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX test. Must be unique.\n"
                },
                "targetPolicies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDexTestTargetPolicy:ZeroTrustDexTestTargetPolicy"
                    },
                    "description": "DEX rules targeted by this test\n"
                },
                "targeted": {
                    "type": "boolean"
                },
                "testId": {
                    "type": "string",
                    "description": "The unique identifier for the test.\n"
                }
            },
            "required": [
                "data",
                "enabled",
                "interval",
                "name",
                "targetPolicies",
                "targeted",
                "testId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "data": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDexTestData:ZeroTrustDexTestData",
                    "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Additional details about the test.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Determines whether or not the test is active.\n"
                },
                "interval": {
                    "type": "string",
                    "description": "How often the test will run.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the DEX test. Must be unique.\n"
                },
                "targetPolicies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDexTestTargetPolicy:ZeroTrustDexTestTargetPolicy"
                    },
                    "description": "DEX rules targeted by this test\n"
                }
            },
            "requiredInputs": [
                "data",
                "enabled",
                "interval",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDexTest resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "data": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDexTestData:ZeroTrustDexTestData",
                        "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Additional details about the test.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Determines whether or not the test is active.\n"
                    },
                    "interval": {
                        "type": "string",
                        "description": "How often the test will run.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the DEX test. Must be unique.\n"
                    },
                    "targetPolicies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDexTestTargetPolicy:ZeroTrustDexTestTargetPolicy"
                        },
                        "description": "DEX rules targeted by this test\n"
                    },
                    "targeted": {
                        "type": "boolean"
                    },
                    "testId": {
                        "type": "string",
                        "description": "The unique identifier for the test.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDlpCustomEntry:ZeroTrustDlpCustomEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpCustomEntry = new cloudflare.ZeroTrustDlpCustomEntry(\"example_zero_trust_dlp_custom_entry\", {\n    accountId: \"account_id\",\n    enabled: true,\n    name: \"name\",\n    pattern: {\n        regex: \"regex\",\n        validation: \"luhn\",\n    },\n    description: \"description\",\n    profileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_custom_entry = cloudflare.ZeroTrustDlpCustomEntry(\"example_zero_trust_dlp_custom_entry\",\n    account_id=\"account_id\",\n    enabled=True,\n    name=\"name\",\n    pattern={\n        \"regex\": \"regex\",\n        \"validation\": \"luhn\",\n    },\n    description=\"description\",\n    profile_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpCustomEntry = new Cloudflare.Index.ZeroTrustDlpCustomEntry(\"example_zero_trust_dlp_custom_entry\", new()\n    {\n        AccountId = \"account_id\",\n        Enabled = true,\n        Name = \"name\",\n        Pattern = new Cloudflare.Inputs.ZeroTrustDlpCustomEntryPatternArgs\n        {\n            Regex = \"regex\",\n            Validation = \"luhn\",\n        },\n        Description = \"description\",\n        ProfileId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpCustomEntry(ctx, \"example_zero_trust_dlp_custom_entry\", \u0026cloudflare.ZeroTrustDlpCustomEntryArgs{\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tName:      pulumi.String(\"name\"),\n\t\t\tPattern: \u0026cloudflare.ZeroTrustDlpCustomEntryPatternArgs{\n\t\t\t\tRegex:      pulumi.String(\"regex\"),\n\t\t\t\tValidation: pulumi.String(\"luhn\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tProfileId:   pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomEntry;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomEntryArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpCustomEntryPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpCustomEntry = new ZeroTrustDlpCustomEntry(\"exampleZeroTrustDlpCustomEntry\", ZeroTrustDlpCustomEntryArgs.builder()\n            .accountId(\"account_id\")\n            .enabled(true)\n            .name(\"name\")\n            .pattern(ZeroTrustDlpCustomEntryPatternArgs.builder()\n                .regex(\"regex\")\n                .validation(\"luhn\")\n                .build())\n            .description(\"description\")\n            .profileId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpCustomEntry:\n    type: cloudflare:ZeroTrustDlpCustomEntry\n    name: example_zero_trust_dlp_custom_entry\n    properties:\n      accountId: account_id\n      enabled: true\n      name: name\n      pattern:\n        regex: regex\n        validation: luhn\n      description: description\n      profileId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpCustomEntry:ZeroTrustDlpCustomEntry example '\u003caccount_id\u003e/\u003centry_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryConfidence:ZeroTrustDlpCustomEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryPattern:ZeroTrustDlpCustomEntryPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryProfile:ZeroTrustDlpCustomEntryProfile"
                    }
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryVariant:ZeroTrustDlpCustomEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "enabled",
                "name",
                "pattern",
                "profiles",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryPattern:ZeroTrustDlpCustomEntryPattern"
                },
                "profileId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "enabled",
                "name",
                "pattern"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpCustomEntry resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "type": "boolean",
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryConfidence:ZeroTrustDlpCustomEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryPattern:ZeroTrustDlpCustomEntryPattern"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "profiles": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryProfile:ZeroTrustDlpCustomEntryProfile"
                        }
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "type": "string",
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomEntryVariant:ZeroTrustDlpCustomEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDlpCustomProfile:ZeroTrustDlpCustomProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpCustomProfile = new cloudflare.ZeroTrustDlpCustomProfile(\"example_zero_trust_dlp_custom_profile\", {\n    name: \"name\",\n    accountId: \"account_id\",\n    description: \"Custom profile with entries\",\n    sharedEntries: [{\n        entryId: \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        entryType: \"predefined\",\n        enabled: true,\n    }],\n});\n// Custom entry that is a part of this new profile\nconst exampleCustomEntry = new cloudflare.ZeroTrustDlpCustomEntry(\"example_custom_entry\", {\n    name: \"custom\",\n    accountId: \"account_id\",\n    profileId: exampleZeroTrustDlpCustomProfile.id,\n    pattern: {\n        regex: \"customentryregex\",\n    },\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_custom_profile = cloudflare.ZeroTrustDlpCustomProfile(\"example_zero_trust_dlp_custom_profile\",\n    name=\"name\",\n    account_id=\"account_id\",\n    description=\"Custom profile with entries\",\n    shared_entries=[{\n        \"entry_id\": \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        \"entry_type\": \"predefined\",\n        \"enabled\": True,\n    }])\n# Custom entry that is a part of this new profile\nexample_custom_entry = cloudflare.ZeroTrustDlpCustomEntry(\"example_custom_entry\",\n    name=\"custom\",\n    account_id=\"account_id\",\n    profile_id=example_zero_trust_dlp_custom_profile.id,\n    pattern={\n        \"regex\": \"customentryregex\",\n    },\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpCustomProfile = new Cloudflare.Index.ZeroTrustDlpCustomProfile(\"example_zero_trust_dlp_custom_profile\", new()\n    {\n        Name = \"name\",\n        AccountId = \"account_id\",\n        Description = \"Custom profile with entries\",\n        SharedEntries = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDlpCustomProfileSharedEntryArgs\n            {\n                EntryId = \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n                EntryType = \"predefined\",\n                Enabled = true,\n            },\n        },\n    });\n\n    // Custom entry that is a part of this new profile\n    var exampleCustomEntry = new Cloudflare.Index.ZeroTrustDlpCustomEntry(\"example_custom_entry\", new()\n    {\n        Name = \"custom\",\n        AccountId = \"account_id\",\n        ProfileId = exampleZeroTrustDlpCustomProfile.Id,\n        Pattern = new Cloudflare.Inputs.ZeroTrustDlpCustomEntryPatternArgs\n        {\n            Regex = \"customentryregex\",\n        },\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleZeroTrustDlpCustomProfile, err := cloudflare.NewZeroTrustDlpCustomProfile(ctx, \"example_zero_trust_dlp_custom_profile\", \u0026cloudflare.ZeroTrustDlpCustomProfileArgs{\n\t\t\tName:        pulumi.String(\"name\"),\n\t\t\tAccountId:   pulumi.String(\"account_id\"),\n\t\t\tDescription: pulumi.String(\"Custom profile with entries\"),\n\t\t\tSharedEntries: cloudflare.ZeroTrustDlpCustomProfileSharedEntryArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDlpCustomProfileSharedEntryArgs{\n\t\t\t\t\tEntryId:   pulumi.String(\"56a8c060-01bb-4f89-ba1e-3ad42770a342\"),\n\t\t\t\t\tEntryType: pulumi.String(\"predefined\"),\n\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Custom entry that is a part of this new profile\n\t\t_, err = cloudflare.NewZeroTrustDlpCustomEntry(ctx, \"example_custom_entry\", \u0026cloudflare.ZeroTrustDlpCustomEntryArgs{\n\t\t\tName:      pulumi.String(\"custom\"),\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tProfileId: exampleZeroTrustDlpCustomProfile.ID(),\n\t\t\tPattern: \u0026cloudflare.ZeroTrustDlpCustomEntryPatternArgs{\n\t\t\t\tRegex: pulumi.String(\"customentryregex\"),\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomProfile;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomProfileArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpCustomProfileSharedEntryArgs;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomEntry;\nimport com.pulumi.cloudflare.ZeroTrustDlpCustomEntryArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpCustomEntryPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpCustomProfile = new ZeroTrustDlpCustomProfile(\"exampleZeroTrustDlpCustomProfile\", ZeroTrustDlpCustomProfileArgs.builder()\n            .name(\"name\")\n            .accountId(\"account_id\")\n            .description(\"Custom profile with entries\")\n            .sharedEntries(ZeroTrustDlpCustomProfileSharedEntryArgs.builder()\n                .entryId(\"56a8c060-01bb-4f89-ba1e-3ad42770a342\")\n                .entryType(\"predefined\")\n                .enabled(true)\n                .build())\n            .build());\n\n        // Custom entry that is a part of this new profile\n        var exampleCustomEntry = new ZeroTrustDlpCustomEntry(\"exampleCustomEntry\", ZeroTrustDlpCustomEntryArgs.builder()\n            .name(\"custom\")\n            .accountId(\"account_id\")\n            .profileId(exampleZeroTrustDlpCustomProfile.id())\n            .pattern(ZeroTrustDlpCustomEntryPatternArgs.builder()\n                .regex(\"customentryregex\")\n                .build())\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpCustomProfile:\n    type: cloudflare:ZeroTrustDlpCustomProfile\n    name: example_zero_trust_dlp_custom_profile\n    properties:\n      name: name\n      accountId: account_id\n      description: Custom profile with entries\n      sharedEntries:\n        - entryId: 56a8c060-01bb-4f89-ba1e-3ad42770a342\n          entryType: predefined\n          enabled: true\n  # Custom entry that is a part of this new profile\n  exampleCustomEntry:\n    type: cloudflare:ZeroTrustDlpCustomEntry\n    name: example_custom_entry\n    properties:\n      name: custom\n      accountId: account_id\n      profileId: ${exampleZeroTrustDlpCustomProfile.id}\n      pattern:\n        regex: customentryregex\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpCustomProfile:ZeroTrustDlpCustomProfile example '\u003caccount_id\u003e/\u003cprofile_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer",
                    "description": "Related DLP policies will trigger when the match count exceeds the number set.\n"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "contextAwareness": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileContextAwareness:ZeroTrustDlpCustomProfileContextAwareness",
                    "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "createdAt": {
                    "type": "string",
                    "description": "When the profile was created.\n"
                },
                "dataClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data class IDs to associate with the profile.\n"
                },
                "dataTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data tag IDs to associate with the profile.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the profile.\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileEntry:ZeroTrustDlpCustomProfileEntry"
                    },
                    "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed.\n",
                    "deprecationMessage": "This attribute will be sunset on 01/01/2026"
                },
                "name": {
                    "type": "string"
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "openAccess": {
                    "type": "boolean",
                    "description": "Whether this profile can be accessed by anyone.\n"
                },
                "sensitivityLevels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileSensitivityLevel:ZeroTrustDlpCustomProfileSensitivityLevel"
                    },
                    "description": "Sensitivity levels to associate with the profile.\n"
                },
                "sharedEntries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileSharedEntry:ZeroTrustDlpCustomProfileSharedEntry"
                    },
                    "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).\n"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "When the profile was lasted updated.\n"
                }
            },
            "required": [
                "aiContextEnabled",
                "allowedMatchCount",
                "confidenceThreshold",
                "contextAwareness",
                "createdAt",
                "name",
                "ocrEnabled",
                "openAccess",
                "type",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer",
                    "description": "Related DLP policies will trigger when the match count exceeds the number set.\n"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "contextAwareness": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileContextAwareness:ZeroTrustDlpCustomProfileContextAwareness",
                    "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n",
                    "deprecationMessage": "This attribute is deprecated."
                },
                "dataClasses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data class IDs to associate with the profile.\n"
                },
                "dataTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Data tag IDs to associate with the profile.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the profile.\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileEntry:ZeroTrustDlpCustomProfileEntry"
                    },
                    "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed.\n",
                    "deprecationMessage": "This attribute will be sunset on 01/01/2026"
                },
                "name": {
                    "type": "string"
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "sensitivityLevels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileSensitivityLevel:ZeroTrustDlpCustomProfileSensitivityLevel"
                    },
                    "description": "Sensitivity levels to associate with the profile.\n"
                },
                "sharedEntries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileSharedEntry:ZeroTrustDlpCustomProfileSharedEntry"
                    },
                    "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpCustomProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextEnabled": {
                        "type": "boolean"
                    },
                    "allowedMatchCount": {
                        "type": "integer",
                        "description": "Related DLP policies will trigger when the match count exceeds the number set.\n"
                    },
                    "confidenceThreshold": {
                        "type": "string"
                    },
                    "contextAwareness": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileContextAwareness:ZeroTrustDlpCustomProfileContextAwareness",
                        "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n",
                        "deprecationMessage": "This attribute is deprecated."
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "When the profile was created.\n"
                    },
                    "dataClasses": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Data class IDs to associate with the profile.\n"
                    },
                    "dataTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Data tag IDs to associate with the profile.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the profile.\n"
                    },
                    "entries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileEntry:ZeroTrustDlpCustomProfileEntry"
                        },
                        "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed.\n",
                        "deprecationMessage": "This attribute will be sunset on 01/01/2026"
                    },
                    "name": {
                        "type": "string"
                    },
                    "ocrEnabled": {
                        "type": "boolean"
                    },
                    "openAccess": {
                        "type": "boolean",
                        "description": "Whether this profile can be accessed by anyone.\n"
                    },
                    "sensitivityLevels": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileSensitivityLevel:ZeroTrustDlpCustomProfileSensitivityLevel"
                        },
                        "description": "Sensitivity levels to associate with the profile.\n"
                    },
                    "sharedEntries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpCustomProfileSharedEntry:ZeroTrustDlpCustomProfileSharedEntry"
                        },
                        "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "When the profile was lasted updated.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/dlpCustomProfile:DlpCustomProfile"
                }
            ]
        },
        "cloudflare:index/zeroTrustDlpDataset:ZeroTrustDlpDataset": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpDataset = new cloudflare.ZeroTrustDlpDataset(\"example_zero_trust_dlp_dataset\", {\n    accountId: \"account_id\",\n    name: \"name\",\n    caseSensitive: true,\n    description: \"description\",\n    encodingVersion: 0,\n    secret: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_dataset = cloudflare.ZeroTrustDlpDataset(\"example_zero_trust_dlp_dataset\",\n    account_id=\"account_id\",\n    name=\"name\",\n    case_sensitive=True,\n    description=\"description\",\n    encoding_version=0,\n    secret=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpDataset = new Cloudflare.Index.ZeroTrustDlpDataset(\"example_zero_trust_dlp_dataset\", new()\n    {\n        AccountId = \"account_id\",\n        Name = \"name\",\n        CaseSensitive = true,\n        Description = \"description\",\n        EncodingVersion = 0,\n        Secret = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpDataset(ctx, \"example_zero_trust_dlp_dataset\", \u0026cloudflare.ZeroTrustDlpDatasetArgs{\n\t\t\tAccountId:       pulumi.String(\"account_id\"),\n\t\t\tName:            pulumi.String(\"name\"),\n\t\t\tCaseSensitive:   pulumi.Bool(true),\n\t\t\tDescription:     pulumi.String(\"description\"),\n\t\t\tEncodingVersion: pulumi.Int(0),\n\t\t\tSecret:          pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpDataset;\nimport com.pulumi.cloudflare.ZeroTrustDlpDatasetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpDataset = new ZeroTrustDlpDataset(\"exampleZeroTrustDlpDataset\", ZeroTrustDlpDatasetArgs.builder()\n            .accountId(\"account_id\")\n            .name(\"name\")\n            .caseSensitive(true)\n            .description(\"description\")\n            .encodingVersion(0)\n            .secret(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpDataset:\n    type: cloudflare:ZeroTrustDlpDataset\n    name: example_zero_trust_dlp_dataset\n    properties:\n      accountId: account_id\n      name: name\n      caseSensitive: true\n      description: description\n      encodingVersion: 0\n      secret: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if \u003cspan pulumi-lang-nodejs=\"`secret`\" pulumi-lang-dotnet=\"`Secret`\" pulumi-lang-go=\"`secret`\" pulumi-lang-python=\"`secret`\" pulumi-lang-yaml=\"`secret`\" pulumi-lang-java=\"`secret`\"\u003e`secret`\u003c/span\u003e is true or undefined\n"
                },
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetColumn:ZeroTrustDlpDatasetColumn"
                    }
                },
                "createdAt": {
                    "type": "string"
                },
                "dataset": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetDataset:ZeroTrustDlpDatasetDataset"
                },
                "datasetId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the dataset.\n"
                },
                "encodingVersion": {
                    "type": "integer",
                    "description": "Dataset encoding version\n"
                },
                "maxCells": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "numCells": {
                    "type": "integer"
                },
                "secret": {
                    "type": "boolean",
                    "description": "Generate a secret dataset.\n\nIf true, the response will include a secret to use with the EDM encoder.\nIf false, the response has no secret and the dataset is uploaded in plaintext."
                },
                "status": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\"."
                },
                "updatedAt": {
                    "type": "string",
                    "description": "Stores when the dataset was last updated.\n\nThis includes name or description changes as well as uploads."
                },
                "uploads": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetUpload:ZeroTrustDlpDatasetUpload"
                    }
                },
                "version": {
                    "type": "integer",
                    "description": "The version to use when uploading the dataset."
                }
            },
            "required": [
                "columns",
                "createdAt",
                "dataset",
                "maxCells",
                "name",
                "numCells",
                "status",
                "updatedAt",
                "uploads",
                "version"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if \u003cspan pulumi-lang-nodejs=\"`secret`\" pulumi-lang-dotnet=\"`Secret`\" pulumi-lang-go=\"`secret`\" pulumi-lang-python=\"`secret`\" pulumi-lang-yaml=\"`secret`\" pulumi-lang-java=\"`secret`\"\u003e`secret`\u003c/span\u003e is true or undefined\n"
                },
                "datasetId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the dataset.\n"
                },
                "encodingVersion": {
                    "type": "integer",
                    "description": "Dataset encoding version\n"
                },
                "name": {
                    "type": "string"
                },
                "secret": {
                    "type": "boolean",
                    "description": "Generate a secret dataset.\n\nIf true, the response will include a secret to use with the EDM encoder.\nIf false, the response has no secret and the dataset is uploaded in plaintext."
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpDataset resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "type": "boolean",
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if \u003cspan pulumi-lang-nodejs=\"`secret`\" pulumi-lang-dotnet=\"`Secret`\" pulumi-lang-go=\"`secret`\" pulumi-lang-python=\"`secret`\" pulumi-lang-yaml=\"`secret`\" pulumi-lang-java=\"`secret`\"\u003e`secret`\u003c/span\u003e is true or undefined\n"
                    },
                    "columns": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetColumn:ZeroTrustDlpDatasetColumn"
                        }
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "dataset": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetDataset:ZeroTrustDlpDatasetDataset"
                    },
                    "datasetId": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the dataset.\n"
                    },
                    "encodingVersion": {
                        "type": "integer",
                        "description": "Dataset encoding version\n"
                    },
                    "maxCells": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "numCells": {
                        "type": "integer"
                    },
                    "secret": {
                        "type": "boolean",
                        "description": "Generate a secret dataset.\n\nIf true, the response will include a secret to use with the EDM encoder.\nIf false, the response has no secret and the dataset is uploaded in plaintext."
                    },
                    "status": {
                        "type": "string",
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\"."
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "Stores when the dataset was last updated.\n\nThis includes name or description changes as well as uploads."
                    },
                    "uploads": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpDatasetUpload:ZeroTrustDlpDatasetUpload"
                        }
                    },
                    "version": {
                        "type": "integer",
                        "description": "The version to use when uploading the dataset."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDlpEntry:ZeroTrustDlpEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpEntry = new cloudflare.ZeroTrustDlpEntry(\"example_zero_trust_dlp_entry\", {\n    accountId: \"account_id\",\n    enabled: true,\n    name: \"name\",\n    pattern: {\n        regex: \"regex\",\n        validation: \"luhn\",\n    },\n    description: \"description\",\n    profileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_entry = cloudflare.ZeroTrustDlpEntry(\"example_zero_trust_dlp_entry\",\n    account_id=\"account_id\",\n    enabled=True,\n    name=\"name\",\n    pattern={\n        \"regex\": \"regex\",\n        \"validation\": \"luhn\",\n    },\n    description=\"description\",\n    profile_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpEntry = new Cloudflare.Index.ZeroTrustDlpEntry(\"example_zero_trust_dlp_entry\", new()\n    {\n        AccountId = \"account_id\",\n        Enabled = true,\n        Name = \"name\",\n        Pattern = new Cloudflare.Inputs.ZeroTrustDlpEntryPatternArgs\n        {\n            Regex = \"regex\",\n            Validation = \"luhn\",\n        },\n        Description = \"description\",\n        ProfileId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpEntry(ctx, \"example_zero_trust_dlp_entry\", \u0026cloudflare.ZeroTrustDlpEntryArgs{\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tName:      pulumi.String(\"name\"),\n\t\t\tPattern: \u0026cloudflare.ZeroTrustDlpEntryPatternArgs{\n\t\t\t\tRegex:      pulumi.String(\"regex\"),\n\t\t\t\tValidation: pulumi.String(\"luhn\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tProfileId:   pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpEntry;\nimport com.pulumi.cloudflare.ZeroTrustDlpEntryArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpEntryPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpEntry = new ZeroTrustDlpEntry(\"exampleZeroTrustDlpEntry\", ZeroTrustDlpEntryArgs.builder()\n            .accountId(\"account_id\")\n            .enabled(true)\n            .name(\"name\")\n            .pattern(ZeroTrustDlpEntryPatternArgs.builder()\n                .regex(\"regex\")\n                .validation(\"luhn\")\n                .build())\n            .description(\"description\")\n            .profileId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpEntry:\n    type: cloudflare:ZeroTrustDlpEntry\n    name: example_zero_trust_dlp_entry\n    properties:\n      accountId: account_id\n      enabled: true\n      name: name\n      pattern:\n        regex: regex\n        validation: luhn\n      description: description\n      profileId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpEntry:ZeroTrustDlpEntry example '\u003caccount_id\u003e/\u003centry_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryConfidence:ZeroTrustDlpEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryPattern:ZeroTrustDlpEntryPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryProfile:ZeroTrustDlpEntryProfile"
                    }
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryVariant:ZeroTrustDlpEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "enabled",
                "name",
                "pattern",
                "profiles",
                "secret",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryPattern:ZeroTrustDlpEntryPattern"
                },
                "profileId": {
                    "type": "string"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "name",
                "pattern"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpEntry resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "type": "boolean",
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryConfidence:ZeroTrustDlpEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryPattern:ZeroTrustDlpEntryPattern"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "profiles": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryProfile:ZeroTrustDlpEntryProfile"
                        }
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"custom\", \"predefined\", \"integration\".\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "type": "string",
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpEntryVariant:ZeroTrustDlpEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDlpIntegrationEntry:ZeroTrustDlpIntegrationEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpIntegrationEntry = new cloudflare.ZeroTrustDlpIntegrationEntry(\"example_zero_trust_dlp_integration_entry\", {\n    accountId: \"account_id\",\n    enabled: true,\n    entryId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    profileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_integration_entry = cloudflare.ZeroTrustDlpIntegrationEntry(\"example_zero_trust_dlp_integration_entry\",\n    account_id=\"account_id\",\n    enabled=True,\n    entry_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    profile_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpIntegrationEntry = new Cloudflare.Index.ZeroTrustDlpIntegrationEntry(\"example_zero_trust_dlp_integration_entry\", new()\n    {\n        AccountId = \"account_id\",\n        Enabled = true,\n        EntryId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n        ProfileId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpIntegrationEntry(ctx, \"example_zero_trust_dlp_integration_entry\", \u0026cloudflare.ZeroTrustDlpIntegrationEntryArgs{\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tEntryId:   pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t\tProfileId: pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpIntegrationEntry;\nimport com.pulumi.cloudflare.ZeroTrustDlpIntegrationEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpIntegrationEntry = new ZeroTrustDlpIntegrationEntry(\"exampleZeroTrustDlpIntegrationEntry\", ZeroTrustDlpIntegrationEntryArgs.builder()\n            .accountId(\"account_id\")\n            .enabled(true)\n            .entryId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .profileId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpIntegrationEntry:\n    type: cloudflare:ZeroTrustDlpIntegrationEntry\n    name: example_zero_trust_dlp_integration_entry\n    properties:\n      accountId: account_id\n      enabled: true\n      entryId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n      profileId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpIntegrationEntry:ZeroTrustDlpIntegrationEntry example '\u003caccount_id\u003e/\u003centry_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryConfidence:ZeroTrustDlpIntegrationEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryPattern:ZeroTrustDlpIntegrationEntryPattern"
                },
                "profileId": {
                    "type": "string",
                    "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile.\n"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryProfile:ZeroTrustDlpIntegrationEntryProfile"
                    }
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryVariant:ZeroTrustDlpIntegrationEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "entryId",
                "name",
                "pattern",
                "profiles",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "profileId": {
                    "type": "string",
                    "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "entryId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpIntegrationEntry resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "type": "boolean",
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryConfidence:ZeroTrustDlpIntegrationEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "entryId": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryPattern:ZeroTrustDlpIntegrationEntryPattern"
                    },
                    "profileId": {
                        "type": "string",
                        "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile.\n"
                    },
                    "profiles": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryProfile:ZeroTrustDlpIntegrationEntryProfile"
                        }
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "type": "string",
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpIntegrationEntryVariant:ZeroTrustDlpIntegrationEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDlpPredefinedEntry:ZeroTrustDlpPredefinedEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpPredefinedEntry = new cloudflare.ZeroTrustDlpPredefinedEntry(\"example_zero_trust_dlp_predefined_entry\", {\n    accountId: \"account_id\",\n    enabled: true,\n    entryId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    profileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_predefined_entry = cloudflare.ZeroTrustDlpPredefinedEntry(\"example_zero_trust_dlp_predefined_entry\",\n    account_id=\"account_id\",\n    enabled=True,\n    entry_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    profile_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpPredefinedEntry = new Cloudflare.Index.ZeroTrustDlpPredefinedEntry(\"example_zero_trust_dlp_predefined_entry\", new()\n    {\n        AccountId = \"account_id\",\n        Enabled = true,\n        EntryId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n        ProfileId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpPredefinedEntry(ctx, \"example_zero_trust_dlp_predefined_entry\", \u0026cloudflare.ZeroTrustDlpPredefinedEntryArgs{\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tEntryId:   pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t\tProfileId: pulumi.String(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpPredefinedEntry;\nimport com.pulumi.cloudflare.ZeroTrustDlpPredefinedEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpPredefinedEntry = new ZeroTrustDlpPredefinedEntry(\"exampleZeroTrustDlpPredefinedEntry\", ZeroTrustDlpPredefinedEntryArgs.builder()\n            .accountId(\"account_id\")\n            .enabled(true)\n            .entryId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .profileId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpPredefinedEntry:\n    type: cloudflare:ZeroTrustDlpPredefinedEntry\n    name: example_zero_trust_dlp_predefined_entry\n    properties:\n      accountId: account_id\n      enabled: true\n      entryId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n      profileId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpPredefinedEntry:ZeroTrustDlpPredefinedEntry example '\u003caccount_id\u003e/\u003centry_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                },
                "confidence": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryConfidence:ZeroTrustDlpPredefinedEntryConfidence"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "pattern": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryPattern:ZeroTrustDlpPredefinedEntryPattern"
                },
                "profileId": {
                    "type": "string",
                    "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile.\n"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryProfile:ZeroTrustDlpPredefinedEntryProfile"
                    }
                },
                "secret": {
                    "type": "boolean"
                },
                "type": {
                    "type": "string",
                    "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadStatus": {
                    "type": "string",
                    "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                },
                "variant": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryVariant:ZeroTrustDlpPredefinedEntryVariant"
                },
                "wordList": {
                    "type": "string"
                }
            },
            "required": [
                "caseSensitive",
                "confidence",
                "createdAt",
                "description",
                "enabled",
                "entryId",
                "name",
                "pattern",
                "profileId",
                "profiles",
                "secret",
                "type",
                "updatedAt",
                "uploadStatus",
                "variant",
                "wordList"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "entryId": {
                    "type": "string"
                },
                "profileId": {
                    "type": "string",
                    "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "entryId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpPredefinedEntry resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "type": "boolean",
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryConfidence:ZeroTrustDlpPredefinedEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "entryId": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryPattern:ZeroTrustDlpPredefinedEntryPattern"
                    },
                    "profileId": {
                        "type": "string",
                        "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile.\n"
                    },
                    "profiles": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryProfile:ZeroTrustDlpPredefinedEntryProfile"
                        }
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "type": "string",
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedEntryVariant:ZeroTrustDlpPredefinedEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDlpPredefinedProfile:ZeroTrustDlpPredefinedProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpPredefinedProfile = new cloudflare.ZeroTrustDlpPredefinedProfile(\"example_zero_trust_dlp_predefined_profile\", {\n    profileId: \"e91a2360-da51-4fdf-9711-bcdecd462614\",\n    accountId: \"account_id\",\n    ocrEnabled: true,\n    enabledEntries: [\n        \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n        \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n        \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n        \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n        \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n        \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n        \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n        \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n        \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n        \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n        \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n        \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_predefined_profile = cloudflare.ZeroTrustDlpPredefinedProfile(\"example_zero_trust_dlp_predefined_profile\",\n    profile_id=\"e91a2360-da51-4fdf-9711-bcdecd462614\",\n    account_id=\"account_id\",\n    ocr_enabled=True,\n    enabled_entries=[\n        \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n        \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n        \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n        \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n        \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n        \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n        \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n        \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n        \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n        \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n        \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n        \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n        \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpPredefinedProfile = new Cloudflare.Index.ZeroTrustDlpPredefinedProfile(\"example_zero_trust_dlp_predefined_profile\", new()\n    {\n        ProfileId = \"e91a2360-da51-4fdf-9711-bcdecd462614\",\n        AccountId = \"account_id\",\n        OcrEnabled = true,\n        EnabledEntries = new[]\n        {\n            \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n            \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n            \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n            \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n            \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n            \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n            \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n            \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n            \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n            \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n            \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n            \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n            \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpPredefinedProfile(ctx, \"example_zero_trust_dlp_predefined_profile\", \u0026cloudflare.ZeroTrustDlpPredefinedProfileArgs{\n\t\t\tProfileId:  pulumi.String(\"e91a2360-da51-4fdf-9711-bcdecd462614\"),\n\t\t\tAccountId:  pulumi.String(\"account_id\"),\n\t\t\tOcrEnabled: pulumi.Bool(true),\n\t\t\tEnabledEntries: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"56a8c060-01bb-4f89-ba1e-3ad42770a342\"),\n\t\t\t\tpulumi.String(\"7f575e6d-039a-465e-85cf-175bda88d4f2\"),\n\t\t\t\tpulumi.String(\"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\"),\n\t\t\t\tpulumi.String(\"2d9c356d-b5a3-482a-b01e-0363e0de7458\"),\n\t\t\t\tpulumi.String(\"2f3657af-c39b-4899-9a98-22f7d187dd28\"),\n\t\t\t\tpulumi.String(\"753a16f9-f533-4208-a5b8-6319b201e9fb\"),\n\t\t\t\tpulumi.String(\"ebcea2c4-335a-457c-853b-f7ae7cc74e07\"),\n\t\t\t\tpulumi.String(\"3f5c4c83-f34c-4d17-81c7-3028385737b3\"),\n\t\t\t\tpulumi.String(\"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\"),\n\t\t\t\tpulumi.String(\"6dbe5604-d3a3-4c3e-905c-57985704bea7\"),\n\t\t\t\tpulumi.String(\"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\"),\n\t\t\t\tpulumi.String(\"5b1d5035-8c53-4bc9-a151-404eb32b34b4\"),\n\t\t\t\tpulumi.String(\"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpPredefinedProfile;\nimport com.pulumi.cloudflare.ZeroTrustDlpPredefinedProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpPredefinedProfile = new ZeroTrustDlpPredefinedProfile(\"exampleZeroTrustDlpPredefinedProfile\", ZeroTrustDlpPredefinedProfileArgs.builder()\n            .profileId(\"e91a2360-da51-4fdf-9711-bcdecd462614\")\n            .accountId(\"account_id\")\n            .ocrEnabled(true)\n            .enabledEntries(            \n                \"56a8c060-01bb-4f89-ba1e-3ad42770a342\",\n                \"7f575e6d-039a-465e-85cf-175bda88d4f2\",\n                \"03ebabfd-ce7e-45ed-8061-65e28f0a6e53\",\n                \"2d9c356d-b5a3-482a-b01e-0363e0de7458\",\n                \"2f3657af-c39b-4899-9a98-22f7d187dd28\",\n                \"753a16f9-f533-4208-a5b8-6319b201e9fb\",\n                \"ebcea2c4-335a-457c-853b-f7ae7cc74e07\",\n                \"3f5c4c83-f34c-4d17-81c7-3028385737b3\",\n                \"d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\",\n                \"6dbe5604-d3a3-4c3e-905c-57985704bea7\",\n                \"55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\",\n                \"5b1d5035-8c53-4bc9-a151-404eb32b34b4\",\n                \"acf28d88-2daf-4bc4-aa36-5ac1fac0540a\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpPredefinedProfile:\n    type: cloudflare:ZeroTrustDlpPredefinedProfile\n    name: example_zero_trust_dlp_predefined_profile\n    properties:\n      profileId: e91a2360-da51-4fdf-9711-bcdecd462614\n      accountId: account_id\n      ocrEnabled: true # Entries in this predefined profile we want to enable. Any entries not included will be disabled\n      enabledEntries:\n        - 56a8c060-01bb-4f89-ba1e-3ad42770a342\n        - 7f575e6d-039a-465e-85cf-175bda88d4f2\n        - 03ebabfd-ce7e-45ed-8061-65e28f0a6e53\n        - 2d9c356d-b5a3-482a-b01e-0363e0de7458\n        - 2f3657af-c39b-4899-9a98-22f7d187dd28\n        - 753a16f9-f533-4208-a5b8-6319b201e9fb\n        - ebcea2c4-335a-457c-853b-f7ae7cc74e07\n        - 3f5c4c83-f34c-4d17-81c7-3028385737b3\n        - d1a84fde-c375-4d3c-8a27-8c4eaa33cf60\n        - 6dbe5604-d3a3-4c3e-905c-57985704bea7\n        - 55ba2c6c-8ef4-4b2e-9148-e75e8b6ccac1\n        - 5b1d5035-8c53-4bc9-a151-404eb32b34b4\n        - acf28d88-2daf-4bc4-aa36-5ac1fac0540a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpPredefinedProfile:ZeroTrustDlpPredefinedProfile example '\u003caccount_id\u003e/\u003cprofile_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "enabledEntries": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedProfileEntry:ZeroTrustDlpPredefinedProfileEntry"
                    },
                    "deprecationMessage": "This attribute is deprecated. Use\u003cspan pulumi-lang-nodejs=\" enabledEntries \" pulumi-lang-dotnet=\" EnabledEntries \" pulumi-lang-go=\" enabledEntries \" pulumi-lang-python=\" enabled_entries \" pulumi-lang-yaml=\" enabledEntries \" pulumi-lang-java=\" enabledEntries \"\u003e enabledEntries \u003c/span\u003einstead."
                },
                "name": {
                    "type": "string",
                    "description": "The name of the predefined profile.\n"
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "openAccess": {
                    "type": "boolean",
                    "description": "Whether this profile can be accessed by anyone.\n"
                },
                "profileId": {
                    "type": "string"
                }
            },
            "required": [
                "aiContextEnabled",
                "allowedMatchCount",
                "confidenceThreshold",
                "entries",
                "name",
                "ocrEnabled",
                "openAccess",
                "profileId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextEnabled": {
                    "type": "boolean"
                },
                "allowedMatchCount": {
                    "type": "integer"
                },
                "confidenceThreshold": {
                    "type": "string"
                },
                "enabledEntries": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedProfileEntry:ZeroTrustDlpPredefinedProfileEntry"
                    },
                    "deprecationMessage": "This attribute is deprecated. Use\u003cspan pulumi-lang-nodejs=\" enabledEntries \" pulumi-lang-dotnet=\" EnabledEntries \" pulumi-lang-go=\" enabledEntries \" pulumi-lang-python=\" enabled_entries \" pulumi-lang-yaml=\" enabledEntries \" pulumi-lang-java=\" enabledEntries \"\u003e enabledEntries \u003c/span\u003einstead."
                },
                "ocrEnabled": {
                    "type": "boolean"
                },
                "profileId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "profileId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpPredefinedProfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextEnabled": {
                        "type": "boolean"
                    },
                    "allowedMatchCount": {
                        "type": "integer"
                    },
                    "confidenceThreshold": {
                        "type": "string"
                    },
                    "enabledEntries": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "entries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDlpPredefinedProfileEntry:ZeroTrustDlpPredefinedProfileEntry"
                        },
                        "deprecationMessage": "This attribute is deprecated. Use\u003cspan pulumi-lang-nodejs=\" enabledEntries \" pulumi-lang-dotnet=\" EnabledEntries \" pulumi-lang-go=\" enabledEntries \" pulumi-lang-python=\" enabled_entries \" pulumi-lang-yaml=\" enabledEntries \" pulumi-lang-java=\" enabledEntries \"\u003e enabledEntries \u003c/span\u003einstead."
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the predefined profile.\n"
                    },
                    "ocrEnabled": {
                        "type": "boolean"
                    },
                    "openAccess": {
                        "type": "boolean",
                        "description": "Whether this profile can be accessed by anyone.\n"
                    },
                    "profileId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/dlpPredefinedProfile:DlpPredefinedProfile"
                }
            ]
        },
        "cloudflare:index/zeroTrustDlpSettings:ZeroTrustDlpSettings": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpSettings = new cloudflare.ZeroTrustDlpSettings(\"example_zero_trust_dlp_settings\", {\n    accountId: \"account_id\",\n    aiContextAnalysis: true,\n    ocr: true,\n    payloadLogging: {\n        maskingLevel: \"full\",\n        publicKey: \"public_key\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_settings = cloudflare.ZeroTrustDlpSettings(\"example_zero_trust_dlp_settings\",\n    account_id=\"account_id\",\n    ai_context_analysis=True,\n    ocr=True,\n    payload_logging={\n        \"masking_level\": \"full\",\n        \"public_key\": \"public_key\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpSettings = new Cloudflare.Index.ZeroTrustDlpSettings(\"example_zero_trust_dlp_settings\", new()\n    {\n        AccountId = \"account_id\",\n        AiContextAnalysis = true,\n        Ocr = true,\n        PayloadLogging = new Cloudflare.Inputs.ZeroTrustDlpSettingsPayloadLoggingArgs\n        {\n            MaskingLevel = \"full\",\n            PublicKey = \"public_key\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDlpSettings(ctx, \"example_zero_trust_dlp_settings\", \u0026cloudflare.ZeroTrustDlpSettingsArgs{\n\t\t\tAccountId:         pulumi.String(\"account_id\"),\n\t\t\tAiContextAnalysis: pulumi.Bool(true),\n\t\t\tOcr:               pulumi.Bool(true),\n\t\t\tPayloadLogging: \u0026cloudflare.ZeroTrustDlpSettingsPayloadLoggingArgs{\n\t\t\t\tMaskingLevel: pulumi.String(\"full\"),\n\t\t\t\tPublicKey:    pulumi.String(\"public_key\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDlpSettings;\nimport com.pulumi.cloudflare.ZeroTrustDlpSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDlpSettingsPayloadLoggingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDlpSettings = new ZeroTrustDlpSettings(\"exampleZeroTrustDlpSettings\", ZeroTrustDlpSettingsArgs.builder()\n            .accountId(\"account_id\")\n            .aiContextAnalysis(true)\n            .ocr(true)\n            .payloadLogging(ZeroTrustDlpSettingsPayloadLoggingArgs.builder()\n                .maskingLevel(\"full\")\n                .publicKey(\"public_key\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDlpSettings:\n    type: cloudflare:ZeroTrustDlpSettings\n    name: example_zero_trust_dlp_settings\n    properties:\n      accountId: account_id\n      aiContextAnalysis: true\n      ocr: true\n      payloadLogging:\n        maskingLevel: full\n        publicKey: public_key\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDlpSettings:ZeroTrustDlpSettings example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextAnalysis": {
                    "type": "boolean",
                    "description": "Whether AI context analysis is enabled at the account level."
                },
                "ocr": {
                    "type": "boolean",
                    "description": "Whether OCR is enabled at the account level."
                },
                "payloadLogging": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpSettingsPayloadLogging:ZeroTrustDlpSettingsPayloadLogging",
                    "description": "Request model for payload log settings within the DLP settings endpoint.\nUnlike the legacy endpoint, null and missing are treated identically here\n(both mean \"not provided\" for PATCH, \"reset to default\" for PUT)."
                }
            },
            "required": [
                "accountId",
                "aiContextAnalysis",
                "ocr",
                "payloadLogging"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "aiContextAnalysis": {
                    "type": "boolean",
                    "description": "Whether AI context analysis is enabled at the account level."
                },
                "ocr": {
                    "type": "boolean",
                    "description": "Whether OCR is enabled at the account level."
                },
                "payloadLogging": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDlpSettingsPayloadLogging:ZeroTrustDlpSettingsPayloadLogging",
                    "description": "Request model for payload log settings within the DLP settings endpoint.\nUnlike the legacy endpoint, null and missing are treated identically here\n(both mean \"not provided\" for PATCH, \"reset to default\" for PUT)."
                }
            },
            "requiredInputs": [
                "accountId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDlpSettings resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextAnalysis": {
                        "type": "boolean",
                        "description": "Whether AI context analysis is enabled at the account level."
                    },
                    "ocr": {
                        "type": "boolean",
                        "description": "Whether OCR is enabled at the account level."
                    },
                    "payloadLogging": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDlpSettingsPayloadLogging:ZeroTrustDlpSettingsPayloadLogging",
                        "description": "Request model for payload log settings within the DLP settings endpoint.\nUnlike the legacy endpoint, null and missing are treated identically here\n(both mean \"not provided\" for PATCH, \"reset to default\" for PUT)."
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustDnsLocation:ZeroTrustDnsLocation": {
            "description": "Accepted Permissions\n\n- `Cloudflare Zero Trust Secure DNS Locations Write`\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDnsLocation = new cloudflare.ZeroTrustDnsLocation(\"example_zero_trust_dns_location\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Austin Office Location\",\n    clientDefault: false,\n    dnsDestinationIpsId: \"0e4a32c6-6fb8-4858-9296-98f51631e8e6\",\n    ecsSupport: false,\n    endpoints: {\n        doh: {\n            enabled: true,\n            networks: [{\n                network: \"2001:85a3::/64\",\n            }],\n            requireToken: true,\n        },\n        dot: {\n            enabled: true,\n            networks: [{\n                network: \"2001:85a3::/64\",\n            }],\n        },\n        ipv4: {\n            enabled: true,\n        },\n        ipv6: {\n            enabled: true,\n            networks: [{\n                network: \"2001:85a3::/64\",\n            }],\n        },\n    },\n    networks: [{\n        network: \"192.0.2.1/32\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dns_location = cloudflare.ZeroTrustDnsLocation(\"example_zero_trust_dns_location\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Austin Office Location\",\n    client_default=False,\n    dns_destination_ips_id=\"0e4a32c6-6fb8-4858-9296-98f51631e8e6\",\n    ecs_support=False,\n    endpoints={\n        \"doh\": {\n            \"enabled\": True,\n            \"networks\": [{\n                \"network\": \"2001:85a3::/64\",\n            }],\n            \"require_token\": True,\n        },\n        \"dot\": {\n            \"enabled\": True,\n            \"networks\": [{\n                \"network\": \"2001:85a3::/64\",\n            }],\n        },\n        \"ipv4\": {\n            \"enabled\": True,\n        },\n        \"ipv6\": {\n            \"enabled\": True,\n            \"networks\": [{\n                \"network\": \"2001:85a3::/64\",\n            }],\n        },\n    },\n    networks=[{\n        \"network\": \"192.0.2.1/32\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDnsLocation = new Cloudflare.Index.ZeroTrustDnsLocation(\"example_zero_trust_dns_location\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Austin Office Location\",\n        ClientDefault = false,\n        DnsDestinationIpsId = \"0e4a32c6-6fb8-4858-9296-98f51631e8e6\",\n        EcsSupport = false,\n        Endpoints = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsArgs\n        {\n            Doh = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDohArgs\n            {\n                Enabled = true,\n                Networks = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDohNetworkArgs\n                    {\n                        Network = \"2001:85a3::/64\",\n                    },\n                },\n                RequireToken = true,\n            },\n            Dot = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDotArgs\n            {\n                Enabled = true,\n                Networks = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsDotNetworkArgs\n                    {\n                        Network = \"2001:85a3::/64\",\n                    },\n                },\n            },\n            Ipv4 = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsIpv4Args\n            {\n                Enabled = true,\n            },\n            Ipv6 = new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsIpv6Args\n            {\n                Enabled = true,\n                Networks = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustDnsLocationEndpointsIpv6NetworkArgs\n                    {\n                        Network = \"2001:85a3::/64\",\n                    },\n                },\n            },\n        },\n        Networks = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDnsLocationNetworkArgs\n            {\n                Network = \"192.0.2.1/32\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDnsLocation(ctx, \"example_zero_trust_dns_location\", \u0026cloudflare.ZeroTrustDnsLocationArgs{\n\t\t\tAccountId:           pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:                pulumi.String(\"Austin Office Location\"),\n\t\t\tClientDefault:       pulumi.Bool(false),\n\t\t\tDnsDestinationIpsId: pulumi.String(\"0e4a32c6-6fb8-4858-9296-98f51631e8e6\"),\n\t\t\tEcsSupport:          pulumi.Bool(false),\n\t\t\tEndpoints: \u0026cloudflare.ZeroTrustDnsLocationEndpointsArgs{\n\t\t\t\tDoh: \u0026cloudflare.ZeroTrustDnsLocationEndpointsDohArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationEndpointsDohNetworkArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationEndpointsDohNetworkArgs{\n\t\t\t\t\t\t\tNetwork: pulumi.String(\"2001:85a3::/64\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tRequireToken: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tDot: \u0026cloudflare.ZeroTrustDnsLocationEndpointsDotArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationEndpointsDotNetworkArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationEndpointsDotNetworkArgs{\n\t\t\t\t\t\t\tNetwork: pulumi.String(\"2001:85a3::/64\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIpv4: \u0026cloudflare.ZeroTrustDnsLocationEndpointsIpv4Args{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tIpv6: \u0026cloudflare.ZeroTrustDnsLocationEndpointsIpv6Args{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationEndpointsIpv6NetworkArray{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationEndpointsIpv6NetworkArgs{\n\t\t\t\t\t\t\tNetwork: pulumi.String(\"2001:85a3::/64\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworks: cloudflare.ZeroTrustDnsLocationNetworkArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDnsLocationNetworkArgs{\n\t\t\t\t\tNetwork: pulumi.String(\"192.0.2.1/32\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDnsLocation;\nimport com.pulumi.cloudflare.ZeroTrustDnsLocationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsDohArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsDotArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsIpv4Args;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationEndpointsIpv6Args;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDnsLocationNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDnsLocation = new ZeroTrustDnsLocation(\"exampleZeroTrustDnsLocation\", ZeroTrustDnsLocationArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Austin Office Location\")\n            .clientDefault(false)\n            .dnsDestinationIpsId(\"0e4a32c6-6fb8-4858-9296-98f51631e8e6\")\n            .ecsSupport(false)\n            .endpoints(ZeroTrustDnsLocationEndpointsArgs.builder()\n                .doh(ZeroTrustDnsLocationEndpointsDohArgs.builder()\n                    .enabled(true)\n                    .networks(ZeroTrustDnsLocationEndpointsDohNetworkArgs.builder()\n                        .network(\"2001:85a3::/64\")\n                        .build())\n                    .requireToken(true)\n                    .build())\n                .dot(ZeroTrustDnsLocationEndpointsDotArgs.builder()\n                    .enabled(true)\n                    .networks(ZeroTrustDnsLocationEndpointsDotNetworkArgs.builder()\n                        .network(\"2001:85a3::/64\")\n                        .build())\n                    .build())\n                .ipv4(ZeroTrustDnsLocationEndpointsIpv4Args.builder()\n                    .enabled(true)\n                    .build())\n                .ipv6(ZeroTrustDnsLocationEndpointsIpv6Args.builder()\n                    .enabled(true)\n                    .networks(ZeroTrustDnsLocationEndpointsIpv6NetworkArgs.builder()\n                        .network(\"2001:85a3::/64\")\n                        .build())\n                    .build())\n                .build())\n            .networks(ZeroTrustDnsLocationNetworkArgs.builder()\n                .network(\"192.0.2.1/32\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDnsLocation:\n    type: cloudflare:ZeroTrustDnsLocation\n    name: example_zero_trust_dns_location\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Austin Office Location\n      clientDefault: false\n      dnsDestinationIpsId: 0e4a32c6-6fb8-4858-9296-98f51631e8e6\n      ecsSupport: false\n      endpoints:\n        doh:\n          enabled: true\n          networks:\n            - network: 2001:85a3::/64\n          requireToken: true\n        dot:\n          enabled: true\n          networks:\n            - network: 2001:85a3::/64\n        ipv4:\n          enabled: true\n        ipv6:\n          enabled: true\n          networks:\n            - network: 2001:85a3::/64\n      networks:\n        - network: 192.0.2.1/32\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustDnsLocation:ZeroTrustDnsLocation example '\u003caccount_id\u003e/\u003clocation_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "clientDefault": {
                    "type": "boolean",
                    "description": "Indicate whether this location is the default location.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "dnsDestinationIpsId": {
                    "type": "string",
                    "description": "Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged.\n"
                },
                "dnsDestinationIpv6BlockId": {
                    "type": "string",
                    "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.\n"
                },
                "dohSubdomain": {
                    "type": "string",
                    "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.\n"
                },
                "ecsSupport": {
                    "type": "boolean",
                    "description": "Indicate whether the location must resolve EDNS queries.\n"
                },
                "endpoints": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpoints:ZeroTrustDnsLocationEndpoints",
                    "description": "Configure the destination endpoints for this location.\n"
                },
                "ip": {
                    "type": "string",
                    "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.\n"
                },
                "ipv4Destination": {
                    "type": "string",
                    "description": "Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                },
                "ipv4DestinationBackup": {
                    "type": "string",
                    "description": "Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the location name.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationNetwork:ZeroTrustDnsLocationNetwork"
                    },
                    "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "clientDefault",
                "createdAt",
                "dnsDestinationIpsId",
                "dnsDestinationIpv6BlockId",
                "dohSubdomain",
                "ecsSupport",
                "ip",
                "ipv4Destination",
                "ipv4DestinationBackup",
                "name",
                "networks",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "clientDefault": {
                    "type": "boolean",
                    "description": "Indicate whether this location is the default location.\n"
                },
                "dnsDestinationIpsId": {
                    "type": "string",
                    "description": "Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged.\n"
                },
                "ecsSupport": {
                    "type": "boolean",
                    "description": "Indicate whether the location must resolve EDNS queries.\n"
                },
                "endpoints": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpoints:ZeroTrustDnsLocationEndpoints",
                    "description": "Configure the destination endpoints for this location.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the location name.\n"
                },
                "networks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationNetwork:ZeroTrustDnsLocationNetwork"
                    },
                    "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustDnsLocation resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "clientDefault": {
                        "type": "boolean",
                        "description": "Indicate whether this location is the default location.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "dnsDestinationIpsId": {
                        "type": "string",
                        "description": "Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged.\n"
                    },
                    "dnsDestinationIpv6BlockId": {
                        "type": "string",
                        "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.\n"
                    },
                    "dohSubdomain": {
                        "type": "string",
                        "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.\n"
                    },
                    "ecsSupport": {
                        "type": "boolean",
                        "description": "Indicate whether the location must resolve EDNS queries.\n"
                    },
                    "endpoints": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationEndpoints:ZeroTrustDnsLocationEndpoints",
                        "description": "Configure the destination endpoints for this location.\n"
                    },
                    "ip": {
                        "type": "string",
                        "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.\n"
                    },
                    "ipv4Destination": {
                        "type": "string",
                        "description": "Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                    },
                    "ipv4DestinationBackup": {
                        "type": "string",
                        "description": "Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the location name.\n"
                    },
                    "networks": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustDnsLocationNetwork:ZeroTrustDnsLocationNetwork"
                        },
                        "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsLocation:TeamsLocation"
                }
            ]
        },
        "cloudflare:index/zeroTrustGatewayCertificate:ZeroTrustGatewayCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayCertificate = new cloudflare.ZeroTrustGatewayCertificate(\"example_zero_trust_gateway_certificate\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    validityPeriodDays: 1826,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_certificate = cloudflare.ZeroTrustGatewayCertificate(\"example_zero_trust_gateway_certificate\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    validity_period_days=1826)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayCertificate = new Cloudflare.Index.ZeroTrustGatewayCertificate(\"example_zero_trust_gateway_certificate\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        ValidityPeriodDays = 1826,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayCertificate(ctx, \"example_zero_trust_gateway_certificate\", \u0026cloudflare.ZeroTrustGatewayCertificateArgs{\n\t\t\tAccountId:          pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tValidityPeriodDays: pulumi.Int(1826),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayCertificate;\nimport com.pulumi.cloudflare.ZeroTrustGatewayCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayCertificate = new ZeroTrustGatewayCertificate(\"exampleZeroTrustGatewayCertificate\", ZeroTrustGatewayCertificateArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .validityPeriodDays(1826)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayCertificate:\n    type: cloudflare:ZeroTrustGatewayCertificate\n    name: example_zero_trust_gateway_certificate\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      validityPeriodDays: 1826\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustGatewayCertificate:ZeroTrustGatewayCertificate example '\u003caccount_id\u003e/\u003ccertificate_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "activate": {
                    "type": "boolean",
                    "description": "Whether to activate the certificate on Cloudflare's edge. When true, the certificate will be activated. When false, the certificate will be deactivated at the edge. This is a Terraform-only field and does not appear in the API response. Monitor \u003cspan pulumi-lang-nodejs=\"`bindingStatus`\" pulumi-lang-dotnet=\"`BindingStatus`\" pulumi-lang-go=\"`bindingStatus`\" pulumi-lang-python=\"`binding_status`\" pulumi-lang-yaml=\"`bindingStatus`\" pulumi-lang-java=\"`bindingStatus`\"\u003e`bindingStatus`\u003c/span\u003e for the activation status. Once a certificate is activated, you may use the certificate to intercept traffic\n"
                },
                "bindingStatus": {
                    "type": "string",
                    "description": "Indicate the read-only deployment status of the certificate on Cloudflare's edge. Gateway TLS interception can use certificates in the 'available' (previously called 'active') state.\nAvailable values: \"pending*deployment\", \"available\", \"pending*deletion\", \"inactive\".\n"
                },
                "certificate": {
                    "type": "string",
                    "description": "Provide the CA certificate (read-only).\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "expiresOn": {
                    "type": "string"
                },
                "fingerprint": {
                    "type": "string",
                    "description": "Provide the SHA256 fingerprint of the certificate (read-only).\n"
                },
                "inUse": {
                    "type": "boolean",
                    "description": "Indicate whether Gateway TLS interception uses this certificate (read-only). You cannot set this value directly. To configure interception, use the Gateway configuration setting named \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e (read-only).\n"
                },
                "issuerOrg": {
                    "type": "string",
                    "description": "Indicate the organization that issued the certificate (read-only).\n"
                },
                "issuerRaw": {
                    "type": "string",
                    "description": "Provide the entire issuer field of the certificate (read-only).\n"
                },
                "type": {
                    "type": "string",
                    "description": "Indicate the read-only certificate type, BYO-PKI (custom) or Gateway-managed.\nAvailable values: \"custom\", \u003cspan pulumi-lang-nodejs=\"\"gatewayManaged\"\" pulumi-lang-dotnet=\"\"GatewayManaged\"\" pulumi-lang-go=\"\"gatewayManaged\"\" pulumi-lang-python=\"\"gateway_managed\"\" pulumi-lang-yaml=\"\"gatewayManaged\"\" pulumi-lang-java=\"\"gatewayManaged\"\"\u003e\"gatewayManaged\"\u003c/span\u003e.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "uploadedOn": {
                    "type": "string"
                },
                "validityPeriodDays": {
                    "type": "integer",
                    "description": "Sets the certificate validity period in days (range: 1-10,950 days / ~30 years). Defaults to 1,825 days (5 years). **Important**: This field is only settable during the certificate creation.  Certificates becomes immutable after creation - use the `/activate` and `/deactivate` endpoints to manage certificate lifecycle.\n"
                }
            },
            "required": [
                "bindingStatus",
                "certificate",
                "createdAt",
                "expiresOn",
                "fingerprint",
                "inUse",
                "issuerOrg",
                "issuerRaw",
                "type",
                "updatedAt",
                "uploadedOn"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "activate": {
                    "type": "boolean",
                    "description": "Whether to activate the certificate on Cloudflare's edge. When true, the certificate will be activated. When false, the certificate will be deactivated at the edge. This is a Terraform-only field and does not appear in the API response. Monitor \u003cspan pulumi-lang-nodejs=\"`bindingStatus`\" pulumi-lang-dotnet=\"`BindingStatus`\" pulumi-lang-go=\"`bindingStatus`\" pulumi-lang-python=\"`binding_status`\" pulumi-lang-yaml=\"`bindingStatus`\" pulumi-lang-java=\"`bindingStatus`\"\u003e`bindingStatus`\u003c/span\u003e for the activation status. Once a certificate is activated, you may use the certificate to intercept traffic\n"
                },
                "validityPeriodDays": {
                    "type": "integer",
                    "description": "Sets the certificate validity period in days (range: 1-10,950 days / ~30 years). Defaults to 1,825 days (5 years). **Important**: This field is only settable during the certificate creation.  Certificates becomes immutable after creation - use the `/activate` and `/deactivate` endpoints to manage certificate lifecycle.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustGatewayCertificate resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "activate": {
                        "type": "boolean",
                        "description": "Whether to activate the certificate on Cloudflare's edge. When true, the certificate will be activated. When false, the certificate will be deactivated at the edge. This is a Terraform-only field and does not appear in the API response. Monitor \u003cspan pulumi-lang-nodejs=\"`bindingStatus`\" pulumi-lang-dotnet=\"`BindingStatus`\" pulumi-lang-go=\"`bindingStatus`\" pulumi-lang-python=\"`binding_status`\" pulumi-lang-yaml=\"`bindingStatus`\" pulumi-lang-java=\"`bindingStatus`\"\u003e`bindingStatus`\u003c/span\u003e for the activation status. Once a certificate is activated, you may use the certificate to intercept traffic\n"
                    },
                    "bindingStatus": {
                        "type": "string",
                        "description": "Indicate the read-only deployment status of the certificate on Cloudflare's edge. Gateway TLS interception can use certificates in the 'available' (previously called 'active') state.\nAvailable values: \"pending*deployment\", \"available\", \"pending*deletion\", \"inactive\".\n"
                    },
                    "certificate": {
                        "type": "string",
                        "description": "Provide the CA certificate (read-only).\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "expiresOn": {
                        "type": "string"
                    },
                    "fingerprint": {
                        "type": "string",
                        "description": "Provide the SHA256 fingerprint of the certificate (read-only).\n"
                    },
                    "inUse": {
                        "type": "boolean",
                        "description": "Indicate whether Gateway TLS interception uses this certificate (read-only). You cannot set this value directly. To configure interception, use the Gateway configuration setting named \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e (read-only).\n"
                    },
                    "issuerOrg": {
                        "type": "string",
                        "description": "Indicate the organization that issued the certificate (read-only).\n"
                    },
                    "issuerRaw": {
                        "type": "string",
                        "description": "Provide the entire issuer field of the certificate (read-only).\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Indicate the read-only certificate type, BYO-PKI (custom) or Gateway-managed.\nAvailable values: \"custom\", \u003cspan pulumi-lang-nodejs=\"\"gatewayManaged\"\" pulumi-lang-dotnet=\"\"GatewayManaged\"\" pulumi-lang-go=\"\"gatewayManaged\"\" pulumi-lang-python=\"\"gateway_managed\"\" pulumi-lang-yaml=\"\"gatewayManaged\"\" pulumi-lang-java=\"\"gatewayManaged\"\"\u003e\"gatewayManaged\"\u003c/span\u003e.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadedOn": {
                        "type": "string"
                    },
                    "validityPeriodDays": {
                        "type": "integer",
                        "description": "Sets the certificate validity period in days (range: 1-10,950 days / ~30 years). Defaults to 1,825 days (5 years). **Important**: This field is only settable during the certificate creation.  Certificates becomes immutable after creation - use the `/activate` and `/deactivate` endpoints to manage certificate lifecycle.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustGatewayLogging:ZeroTrustGatewayLogging": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayLogging = new cloudflare.ZeroTrustGatewayLogging(\"example_zero_trust_gateway_logging\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    redactPii: true,\n    settingsByRuleType: {\n        dns: {\n            logAll: false,\n            logBlocks: true,\n        },\n        http: {\n            logAll: false,\n            logBlocks: true,\n        },\n        l4: {\n            logAll: false,\n            logBlocks: true,\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_logging = cloudflare.ZeroTrustGatewayLogging(\"example_zero_trust_gateway_logging\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    redact_pii=True,\n    settings_by_rule_type={\n        \"dns\": {\n            \"log_all\": False,\n            \"log_blocks\": True,\n        },\n        \"http\": {\n            \"log_all\": False,\n            \"log_blocks\": True,\n        },\n        \"l4\": {\n            \"log_all\": False,\n            \"log_blocks\": True,\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayLogging = new Cloudflare.Index.ZeroTrustGatewayLogging(\"example_zero_trust_gateway_logging\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        RedactPii = true,\n        SettingsByRuleType = new Cloudflare.Inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeArgs\n        {\n            Dns = new Cloudflare.Inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeDnsArgs\n            {\n                LogAll = false,\n                LogBlocks = true,\n            },\n            Http = new Cloudflare.Inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeHttpArgs\n            {\n                LogAll = false,\n                LogBlocks = true,\n            },\n            L4 = new Cloudflare.Inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeL4Args\n            {\n                LogAll = false,\n                LogBlocks = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayLogging(ctx, \"example_zero_trust_gateway_logging\", \u0026cloudflare.ZeroTrustGatewayLoggingArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tRedactPii: pulumi.Bool(true),\n\t\t\tSettingsByRuleType: \u0026cloudflare.ZeroTrustGatewayLoggingSettingsByRuleTypeArgs{\n\t\t\t\tDns: \u0026cloudflare.ZeroTrustGatewayLoggingSettingsByRuleTypeDnsArgs{\n\t\t\t\t\tLogAll:    pulumi.Bool(false),\n\t\t\t\t\tLogBlocks: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tHttp: \u0026cloudflare.ZeroTrustGatewayLoggingSettingsByRuleTypeHttpArgs{\n\t\t\t\t\tLogAll:    pulumi.Bool(false),\n\t\t\t\t\tLogBlocks: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tL4: \u0026cloudflare.ZeroTrustGatewayLoggingSettingsByRuleTypeL4Args{\n\t\t\t\t\tLogAll:    pulumi.Bool(false),\n\t\t\t\t\tLogBlocks: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayLogging;\nimport com.pulumi.cloudflare.ZeroTrustGatewayLoggingArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeDnsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeHttpArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayLoggingSettingsByRuleTypeL4Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayLogging = new ZeroTrustGatewayLogging(\"exampleZeroTrustGatewayLogging\", ZeroTrustGatewayLoggingArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .redactPii(true)\n            .settingsByRuleType(ZeroTrustGatewayLoggingSettingsByRuleTypeArgs.builder()\n                .dns(ZeroTrustGatewayLoggingSettingsByRuleTypeDnsArgs.builder()\n                    .logAll(false)\n                    .logBlocks(true)\n                    .build())\n                .http(ZeroTrustGatewayLoggingSettingsByRuleTypeHttpArgs.builder()\n                    .logAll(false)\n                    .logBlocks(true)\n                    .build())\n                .l4(ZeroTrustGatewayLoggingSettingsByRuleTypeL4Args.builder()\n                    .logAll(false)\n                    .logBlocks(true)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayLogging:\n    type: cloudflare:ZeroTrustGatewayLogging\n    name: example_zero_trust_gateway_logging\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      redactPii: true\n      settingsByRuleType:\n        dns:\n          logAll: false\n          logBlocks: true\n        http:\n          logAll: false\n          logBlocks: true\n        l4:\n          logAll: false\n          logBlocks: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustGatewayLogging:ZeroTrustGatewayLogging example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "redactPii": {
                    "type": "boolean",
                    "description": "Indicate whether to redact personally identifiable information from activity logging (PII fields include source IP, user email, user ID, device ID, URL, referrer, and user agent).\n"
                },
                "settingsByRuleType": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleType:ZeroTrustGatewayLoggingSettingsByRuleType",
                    "description": "Configure logging settings for each rule type.\n"
                }
            },
            "required": [
                "accountId",
                "redactPii",
                "settingsByRuleType"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "redactPii": {
                    "type": "boolean",
                    "description": "Indicate whether to redact personally identifiable information from activity logging (PII fields include source IP, user email, user ID, device ID, URL, referrer, and user agent).\n"
                },
                "settingsByRuleType": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleType:ZeroTrustGatewayLoggingSettingsByRuleType",
                    "description": "Configure logging settings for each rule type.\n"
                }
            },
            "requiredInputs": [
                "accountId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustGatewayLogging resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "redactPii": {
                        "type": "boolean",
                        "description": "Indicate whether to redact personally identifiable information from activity logging (PII fields include source IP, user email, user ID, device ID, URL, referrer, and user agent).\n"
                    },
                    "settingsByRuleType": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewayLoggingSettingsByRuleType:ZeroTrustGatewayLoggingSettingsByRuleType",
                        "description": "Configure logging settings for each rule type.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustGatewayPacfile:ZeroTrustGatewayPacfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPacfile = new cloudflare.ZeroTrustGatewayPacfile(\"example_zero_trust_gateway_pacfile\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    contents: \"function FindProxyForURL(url, host) { return \\\"DIRECT\\\"; }\",\n    name: \"Devops team\",\n    description: \"PAC file for Devops team\",\n    slug: \"pac_devops\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_pacfile = cloudflare.ZeroTrustGatewayPacfile(\"example_zero_trust_gateway_pacfile\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    contents=\"function FindProxyForURL(url, host) { return \\\"DIRECT\\\"; }\",\n    name=\"Devops team\",\n    description=\"PAC file for Devops team\",\n    slug=\"pac_devops\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPacfile = new Cloudflare.Index.ZeroTrustGatewayPacfile(\"example_zero_trust_gateway_pacfile\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Contents = \"function FindProxyForURL(url, host) { return \\\"DIRECT\\\"; }\",\n        Name = \"Devops team\",\n        Description = \"PAC file for Devops team\",\n        Slug = \"pac_devops\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayPacfile(ctx, \"example_zero_trust_gateway_pacfile\", \u0026cloudflare.ZeroTrustGatewayPacfileArgs{\n\t\t\tAccountId:   pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tContents:    pulumi.String(\"function FindProxyForURL(url, host) { return \\\"DIRECT\\\"; }\"),\n\t\t\tName:        pulumi.String(\"Devops team\"),\n\t\t\tDescription: pulumi.String(\"PAC file for Devops team\"),\n\t\t\tSlug:        pulumi.String(\"pac_devops\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayPacfile;\nimport com.pulumi.cloudflare.ZeroTrustGatewayPacfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayPacfile = new ZeroTrustGatewayPacfile(\"exampleZeroTrustGatewayPacfile\", ZeroTrustGatewayPacfileArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .contents(\"function FindProxyForURL(url, host) { return \\\"DIRECT\\\"; }\")\n            .name(\"Devops team\")\n            .description(\"PAC file for Devops team\")\n            .slug(\"pac_devops\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayPacfile:\n    type: cloudflare:ZeroTrustGatewayPacfile\n    name: example_zero_trust_gateway_pacfile\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      contents: function FindProxyForURL(url, host) { return \"DIRECT\"; }\n      name: Devops team\n      description: PAC file for Devops team\n      slug: pac_devops\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustGatewayPacfile:ZeroTrustGatewayPacfile example '\u003caccount_id\u003e/\u003cpacfile_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "contents": {
                    "type": "string",
                    "description": "Actual contents of the PAC file\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Detailed description of the PAC file.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the PAC file.\n"
                },
                "slug": {
                    "type": "string",
                    "description": "URL-friendly version of the PAC file name. If not provided, it will be auto-generated\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "url": {
                    "type": "string",
                    "description": "Unique URL to download the PAC file.\n"
                }
            },
            "required": [
                "contents",
                "createdAt",
                "name",
                "updatedAt",
                "url"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "contents": {
                    "type": "string",
                    "description": "Actual contents of the PAC file\n"
                },
                "description": {
                    "type": "string",
                    "description": "Detailed description of the PAC file.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the PAC file.\n"
                },
                "slug": {
                    "type": "string",
                    "description": "URL-friendly version of the PAC file name. If not provided, it will be auto-generated\n"
                }
            },
            "requiredInputs": [
                "contents",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustGatewayPacfile resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "contents": {
                        "type": "string",
                        "description": "Actual contents of the PAC file\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "Detailed description of the PAC file.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the PAC file.\n"
                    },
                    "slug": {
                        "type": "string",
                        "description": "URL-friendly version of the PAC file name. If not provided, it will be auto-generated\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "url": {
                        "type": "string",
                        "description": "Unique URL to download the PAC file.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustGatewayPolicy:ZeroTrustGatewayPolicy": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPolicy = new cloudflare.ZeroTrustGatewayPolicy(\"example_zero_trust_gateway_policy\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    action: \"allow\",\n    name: \"block bad websites\",\n    description: \"Block bad websites based on their host name.\",\n    devicePosture: \"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\",\n    enabled: true,\n    expiration: {\n        expiresAt: \"2014-01-01T05:20:20Z\",\n        duration: 10,\n    },\n    filters: [\"http\"],\n    identity: \"any(identity.groups.name[*] in {\\\"finance\\\"})\",\n    precedence: 0,\n    ruleSettings: {\n        addHeaders: {\n            \"My-Next-Header\": [\n                \"foo\",\n                \"bar\",\n            ],\n            \"X-Custom-Header-Name\": [\"somecustomvalue\"],\n        },\n        allowChildBypass: false,\n        auditSsh: {\n            commandLogging: false,\n        },\n        bisoAdminControls: {\n            copy: \"remote_only\",\n            dcp: true,\n            dd: true,\n            dk: true,\n            download: \"enabled\",\n            dp: false,\n            du: true,\n            keyboard: \"enabled\",\n            paste: \"enabled\",\n            printing: \"enabled\",\n            upload: \"enabled\",\n            version: \"v1\",\n            wmId: \"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\",\n        },\n        blockPage: {\n            targetUri: \"https://example.com\",\n            includeContext: true,\n        },\n        blockPageEnabled: true,\n        blockReason: \"This website is a security risk\",\n        bypassParentRule: false,\n        checkSession: {\n            duration: \"300s\",\n            enforce: true,\n        },\n        dnsResolvers: {\n            ipv4s: [{\n                ip: \"2.2.2.2\",\n                port: 5053,\n                routeThroughPrivateNetwork: true,\n                vnetId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n            ipv6s: [{\n                ip: \"2001:DB8::\",\n                port: 5053,\n                routeThroughPrivateNetwork: true,\n                vnetId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n        },\n        egress: {\n            ipv4: \"192.0.2.2\",\n            ipv4Fallback: \"192.0.2.3\",\n            ipv6: \"2001:DB8::/64\",\n        },\n        forensicCopy: {\n            enabled: true,\n        },\n        ignoreCnameCategoryMatches: true,\n        insecureDisableDnssecValidation: false,\n        ipCategories: true,\n        ipIndicatorFeeds: true,\n        l4override: {\n            ip: \"1.1.1.1\",\n            port: 0,\n        },\n        notificationSettings: {\n            enabled: true,\n            includeContext: true,\n            msg: \"msg\",\n            supportUrl: \"support_url\",\n        },\n        overrideHost: \"example.com\",\n        overrideIps: [\n            \"1.1.1.1\",\n            \"2.2.2.2\",\n        ],\n        payloadLog: {\n            enabled: true,\n        },\n        quarantine: {\n            fileTypes: [\"exe\"],\n        },\n        redirect: {\n            targetUri: \"https://example.com\",\n            includeContext: true,\n            preservePathAndQuery: true,\n        },\n        resolveDnsInternally: {\n            fallback: \"none\",\n            viewId: \"view_id\",\n        },\n        resolveDnsThroughCloudflare: true,\n        untrustedCert: {\n            action: \"error\",\n        },\n    },\n    schedule: {\n        fri: \"08:00-12:30,13:30-17:00\",\n        mon: \"08:00-12:30,13:30-17:00\",\n        sat: \"08:00-12:30,13:30-17:00\",\n        sun: \"08:00-12:30,13:30-17:00\",\n        thu: \"08:00-12:30,13:30-17:00\",\n        timeZone: \"America/New York\",\n        tue: \"08:00-12:30,13:30-17:00\",\n        wed: \"08:00-12:30,13:30-17:00\",\n    },\n    traffic: \"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_policy = cloudflare.ZeroTrustGatewayPolicy(\"example_zero_trust_gateway_policy\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    action=\"allow\",\n    name=\"block bad websites\",\n    description=\"Block bad websites based on their host name.\",\n    device_posture=\"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\",\n    enabled=True,\n    expiration={\n        \"expires_at\": \"2014-01-01T05:20:20Z\",\n        \"duration\": 10,\n    },\n    filters=[\"http\"],\n    identity=\"any(identity.groups.name[*] in {\\\"finance\\\"})\",\n    precedence=0,\n    rule_settings={\n        \"add_headers\": {\n            \"My-Next-Header\": [\n                \"foo\",\n                \"bar\",\n            ],\n            \"X-Custom-Header-Name\": [\"somecustomvalue\"],\n        },\n        \"allow_child_bypass\": False,\n        \"audit_ssh\": {\n            \"command_logging\": False,\n        },\n        \"biso_admin_controls\": {\n            \"copy\": \"remote_only\",\n            \"dcp\": True,\n            \"dd\": True,\n            \"dk\": True,\n            \"download\": \"enabled\",\n            \"dp\": False,\n            \"du\": True,\n            \"keyboard\": \"enabled\",\n            \"paste\": \"enabled\",\n            \"printing\": \"enabled\",\n            \"upload\": \"enabled\",\n            \"version\": \"v1\",\n            \"wm_id\": \"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\",\n        },\n        \"block_page\": {\n            \"target_uri\": \"https://example.com\",\n            \"include_context\": True,\n        },\n        \"block_page_enabled\": True,\n        \"block_reason\": \"This website is a security risk\",\n        \"bypass_parent_rule\": False,\n        \"check_session\": {\n            \"duration\": \"300s\",\n            \"enforce\": True,\n        },\n        \"dns_resolvers\": {\n            \"ipv4s\": [{\n                \"ip\": \"2.2.2.2\",\n                \"port\": 5053,\n                \"route_through_private_network\": True,\n                \"vnet_id\": \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n            \"ipv6s\": [{\n                \"ip\": \"2001:DB8::\",\n                \"port\": 5053,\n                \"route_through_private_network\": True,\n                \"vnet_id\": \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n            }],\n        },\n        \"egress\": {\n            \"ipv4\": \"192.0.2.2\",\n            \"ipv4_fallback\": \"192.0.2.3\",\n            \"ipv6\": \"2001:DB8::/64\",\n        },\n        \"forensic_copy\": {\n            \"enabled\": True,\n        },\n        \"ignore_cname_category_matches\": True,\n        \"insecure_disable_dnssec_validation\": False,\n        \"ip_categories\": True,\n        \"ip_indicator_feeds\": True,\n        \"l4override\": {\n            \"ip\": \"1.1.1.1\",\n            \"port\": 0,\n        },\n        \"notification_settings\": {\n            \"enabled\": True,\n            \"include_context\": True,\n            \"msg\": \"msg\",\n            \"support_url\": \"support_url\",\n        },\n        \"override_host\": \"example.com\",\n        \"override_ips\": [\n            \"1.1.1.1\",\n            \"2.2.2.2\",\n        ],\n        \"payload_log\": {\n            \"enabled\": True,\n        },\n        \"quarantine\": {\n            \"file_types\": [\"exe\"],\n        },\n        \"redirect\": {\n            \"target_uri\": \"https://example.com\",\n            \"include_context\": True,\n            \"preserve_path_and_query\": True,\n        },\n        \"resolve_dns_internally\": {\n            \"fallback\": \"none\",\n            \"view_id\": \"view_id\",\n        },\n        \"resolve_dns_through_cloudflare\": True,\n        \"untrusted_cert\": {\n            \"action\": \"error\",\n        },\n    },\n    schedule={\n        \"fri\": \"08:00-12:30,13:30-17:00\",\n        \"mon\": \"08:00-12:30,13:30-17:00\",\n        \"sat\": \"08:00-12:30,13:30-17:00\",\n        \"sun\": \"08:00-12:30,13:30-17:00\",\n        \"thu\": \"08:00-12:30,13:30-17:00\",\n        \"time_zone\": \"America/New York\",\n        \"tue\": \"08:00-12:30,13:30-17:00\",\n        \"wed\": \"08:00-12:30,13:30-17:00\",\n    },\n    traffic=\"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPolicy = new Cloudflare.Index.ZeroTrustGatewayPolicy(\"example_zero_trust_gateway_policy\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Action = \"allow\",\n        Name = \"block bad websites\",\n        Description = \"Block bad websites based on their host name.\",\n        DevicePosture = \"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\",\n        Enabled = true,\n        Expiration = new Cloudflare.Inputs.ZeroTrustGatewayPolicyExpirationArgs\n        {\n            ExpiresAt = \"2014-01-01T05:20:20Z\",\n            Duration = 10,\n        },\n        Filters = new[]\n        {\n            \"http\",\n        },\n        Identity = \"any(identity.groups.name[*] in {\\\"finance\\\"})\",\n        Precedence = 0,\n        RuleSettings = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsArgs\n        {\n            AddHeaders = \n            {\n                { \"My-Next-Header\", new[]\n                {\n                    \"foo\",\n                    \"bar\",\n                } },\n                { \"X-Custom-Header-Name\", new[]\n                {\n                    \"somecustomvalue\",\n                } },\n            },\n            AllowChildBypass = false,\n            AuditSsh = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs\n            {\n                CommandLogging = false,\n            },\n            BisoAdminControls = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs\n            {\n                Copy = \"remote_only\",\n                Dcp = true,\n                Dd = true,\n                Dk = true,\n                Download = \"enabled\",\n                Dp = false,\n                Du = true,\n                Keyboard = \"enabled\",\n                Paste = \"enabled\",\n                Printing = \"enabled\",\n                Upload = \"enabled\",\n                Version = \"v1\",\n                WmId = \"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\",\n            },\n            BlockPage = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs\n            {\n                TargetUri = \"https://example.com\",\n                IncludeContext = true,\n            },\n            BlockPageEnabled = true,\n            BlockReason = \"This website is a security risk\",\n            BypassParentRule = false,\n            CheckSession = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs\n            {\n                Duration = \"300s\",\n                Enforce = true,\n            },\n            DnsResolvers = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs\n            {\n                Ipv4s = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Args\n                    {\n                        Ip = \"2.2.2.2\",\n                        Port = 5053,\n                        RouteThroughPrivateNetwork = true,\n                        VnetId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n                    },\n                },\n                Ipv6s = new[]\n                {\n                    new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Args\n                    {\n                        Ip = \"2001:DB8::\",\n                        Port = 5053,\n                        RouteThroughPrivateNetwork = true,\n                        VnetId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n                    },\n                },\n            },\n            Egress = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsEgressArgs\n            {\n                Ipv4 = \"192.0.2.2\",\n                Ipv4Fallback = \"192.0.2.3\",\n                Ipv6 = \"2001:DB8::/64\",\n            },\n            ForensicCopy = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs\n            {\n                Enabled = true,\n            },\n            IgnoreCnameCategoryMatches = true,\n            InsecureDisableDnssecValidation = false,\n            IpCategories = true,\n            IpIndicatorFeeds = true,\n            L4override = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs\n            {\n                Ip = \"1.1.1.1\",\n                Port = 0,\n            },\n            NotificationSettings = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs\n            {\n                Enabled = true,\n                IncludeContext = true,\n                Msg = \"msg\",\n                SupportUrl = \"support_url\",\n            },\n            OverrideHost = \"example.com\",\n            OverrideIps = new[]\n            {\n                \"1.1.1.1\",\n                \"2.2.2.2\",\n            },\n            PayloadLog = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs\n            {\n                Enabled = true,\n            },\n            Quarantine = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs\n            {\n                FileTypes = new[]\n                {\n                    \"exe\",\n                },\n            },\n            Redirect = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsRedirectArgs\n            {\n                TargetUri = \"https://example.com\",\n                IncludeContext = true,\n                PreservePathAndQuery = true,\n            },\n            ResolveDnsInternally = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs\n            {\n                Fallback = \"none\",\n                ViewId = \"view_id\",\n            },\n            ResolveDnsThroughCloudflare = true,\n            UntrustedCert = new Cloudflare.Inputs.ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs\n            {\n                Action = \"error\",\n            },\n        },\n        Schedule = new Cloudflare.Inputs.ZeroTrustGatewayPolicyScheduleArgs\n        {\n            Fri = \"08:00-12:30,13:30-17:00\",\n            Mon = \"08:00-12:30,13:30-17:00\",\n            Sat = \"08:00-12:30,13:30-17:00\",\n            Sun = \"08:00-12:30,13:30-17:00\",\n            Thu = \"08:00-12:30,13:30-17:00\",\n            TimeZone = \"America/New York\",\n            Tue = \"08:00-12:30,13:30-17:00\",\n            Wed = \"08:00-12:30,13:30-17:00\",\n        },\n        Traffic = \"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayPolicy(ctx, \"example_zero_trust_gateway_policy\", \u0026cloudflare.ZeroTrustGatewayPolicyArgs{\n\t\t\tAccountId:     pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tAction:        pulumi.String(\"allow\"),\n\t\t\tName:          pulumi.String(\"block bad websites\"),\n\t\t\tDescription:   pulumi.String(\"Block bad websites based on their host name.\"),\n\t\t\tDevicePosture: pulumi.String(\"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\"),\n\t\t\tEnabled:       pulumi.Bool(true),\n\t\t\tExpiration: \u0026cloudflare.ZeroTrustGatewayPolicyExpirationArgs{\n\t\t\t\tExpiresAt: pulumi.String(\"2014-01-01T05:20:20Z\"),\n\t\t\t\tDuration:  pulumi.Int(10),\n\t\t\t},\n\t\t\tFilters: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tIdentity:   pulumi.String(\"any(identity.groups.name[*] in {\\\"finance\\\"})\"),\n\t\t\tPrecedence: pulumi.Int(0),\n\t\t\tRuleSettings: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsArgs{\n\t\t\t\tAddHeaders: pulumi.StringArrayMap{\n\t\t\t\t\t\"My-Next-Header\": pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"foo\"),\n\t\t\t\t\t\tpulumi.String(\"bar\"),\n\t\t\t\t\t},\n\t\t\t\t\t\"X-Custom-Header-Name\": pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"somecustomvalue\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAllowChildBypass: pulumi.Bool(false),\n\t\t\t\tAuditSsh: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs{\n\t\t\t\t\tCommandLogging: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tBisoAdminControls: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs{\n\t\t\t\t\tCopy:     pulumi.String(\"remote_only\"),\n\t\t\t\t\tDcp:      pulumi.Bool(true),\n\t\t\t\t\tDd:       pulumi.Bool(true),\n\t\t\t\t\tDk:       pulumi.Bool(true),\n\t\t\t\t\tDownload: pulumi.String(\"enabled\"),\n\t\t\t\t\tDp:       pulumi.Bool(false),\n\t\t\t\t\tDu:       pulumi.Bool(true),\n\t\t\t\t\tKeyboard: pulumi.String(\"enabled\"),\n\t\t\t\t\tPaste:    pulumi.String(\"enabled\"),\n\t\t\t\t\tPrinting: pulumi.String(\"enabled\"),\n\t\t\t\t\tUpload:   pulumi.String(\"enabled\"),\n\t\t\t\t\tVersion:  pulumi.String(\"v1\"),\n\t\t\t\t\tWmId:     pulumi.String(\"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\"),\n\t\t\t\t},\n\t\t\t\tBlockPage: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs{\n\t\t\t\t\tTargetUri:      pulumi.String(\"https://example.com\"),\n\t\t\t\t\tIncludeContext: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tBlockPageEnabled: pulumi.Bool(true),\n\t\t\t\tBlockReason:      pulumi.String(\"This website is a security risk\"),\n\t\t\t\tBypassParentRule: pulumi.Bool(false),\n\t\t\t\tCheckSession: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs{\n\t\t\t\t\tDuration: pulumi.String(\"300s\"),\n\t\t\t\t\tEnforce:  pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tDnsResolvers: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs{\n\t\t\t\t\tIpv4s: cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Array{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Args{\n\t\t\t\t\t\t\tIp:                         pulumi.String(\"2.2.2.2\"),\n\t\t\t\t\t\t\tPort:                       pulumi.Int(5053),\n\t\t\t\t\t\t\tRouteThroughPrivateNetwork: pulumi.Bool(true),\n\t\t\t\t\t\t\tVnetId:                     pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tIpv6s: cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Array{\n\t\t\t\t\t\t\u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Args{\n\t\t\t\t\t\t\tIp:                         pulumi.String(\"2001:DB8::\"),\n\t\t\t\t\t\t\tPort:                       pulumi.Int(5053),\n\t\t\t\t\t\t\tRouteThroughPrivateNetwork: pulumi.Bool(true),\n\t\t\t\t\t\t\tVnetId:                     pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tEgress: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsEgressArgs{\n\t\t\t\t\tIpv4:         pulumi.String(\"192.0.2.2\"),\n\t\t\t\t\tIpv4Fallback: pulumi.String(\"192.0.2.3\"),\n\t\t\t\t\tIpv6:         pulumi.String(\"2001:DB8::/64\"),\n\t\t\t\t},\n\t\t\t\tForensicCopy: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tIgnoreCnameCategoryMatches:      pulumi.Bool(true),\n\t\t\t\tInsecureDisableDnssecValidation: pulumi.Bool(false),\n\t\t\t\tIpCategories:                    pulumi.Bool(true),\n\t\t\t\tIpIndicatorFeeds:                pulumi.Bool(true),\n\t\t\t\tL4override: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs{\n\t\t\t\t\tIp:   pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t\tNotificationSettings: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs{\n\t\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\t\tIncludeContext: pulumi.Bool(true),\n\t\t\t\t\tMsg:            pulumi.String(\"msg\"),\n\t\t\t\t\tSupportUrl:     pulumi.String(\"support_url\"),\n\t\t\t\t},\n\t\t\t\tOverrideHost: pulumi.String(\"example.com\"),\n\t\t\t\tOverrideIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tpulumi.String(\"2.2.2.2\"),\n\t\t\t\t},\n\t\t\t\tPayloadLog: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tQuarantine: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs{\n\t\t\t\t\tFileTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"exe\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRedirect: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsRedirectArgs{\n\t\t\t\t\tTargetUri:            pulumi.String(\"https://example.com\"),\n\t\t\t\t\tIncludeContext:       pulumi.Bool(true),\n\t\t\t\t\tPreservePathAndQuery: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tResolveDnsInternally: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs{\n\t\t\t\t\tFallback: pulumi.String(\"none\"),\n\t\t\t\t\tViewId:   pulumi.String(\"view_id\"),\n\t\t\t\t},\n\t\t\t\tResolveDnsThroughCloudflare: pulumi.Bool(true),\n\t\t\t\tUntrustedCert: \u0026cloudflare.ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs{\n\t\t\t\t\tAction: pulumi.String(\"error\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSchedule: \u0026cloudflare.ZeroTrustGatewayPolicyScheduleArgs{\n\t\t\t\tFri:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tMon:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tSat:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tSun:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tThu:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tTimeZone: pulumi.String(\"America/New York\"),\n\t\t\t\tTue:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t\tWed:      pulumi.String(\"08:00-12:30,13:30-17:00\"),\n\t\t\t},\n\t\t\tTraffic: pulumi.String(\"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayPolicy;\nimport com.pulumi.cloudflare.ZeroTrustGatewayPolicyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyExpirationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsEgressArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsRedirectArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewayPolicyScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayPolicy = new ZeroTrustGatewayPolicy(\"exampleZeroTrustGatewayPolicy\", ZeroTrustGatewayPolicyArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .action(\"allow\")\n            .name(\"block bad websites\")\n            .description(\"Block bad websites based on their host name.\")\n            .devicePosture(\"any(device_posture.checks.passed[*] in {\\\"1308749e-fcfb-4ebc-b051-fe022b632644\\\"})\")\n            .enabled(true)\n            .expiration(ZeroTrustGatewayPolicyExpirationArgs.builder()\n                .expiresAt(\"2014-01-01T05:20:20Z\")\n                .duration(10)\n                .build())\n            .filters(\"http\")\n            .identity(\"any(identity.groups.name[*] in {\\\"finance\\\"})\")\n            .precedence(0)\n            .ruleSettings(ZeroTrustGatewayPolicyRuleSettingsArgs.builder()\n                .addHeaders(Map.ofEntries(\n                    Map.entry(\"My-Next-Header\",                     \n                        \"foo\",\n                        \"bar\"),\n                    Map.entry(\"X-Custom-Header-Name\", \"somecustomvalue\")\n                ))\n                .allowChildBypass(false)\n                .auditSsh(ZeroTrustGatewayPolicyRuleSettingsAuditSshArgs.builder()\n                    .commandLogging(false)\n                    .build())\n                .bisoAdminControls(ZeroTrustGatewayPolicyRuleSettingsBisoAdminControlsArgs.builder()\n                    .copy(\"remote_only\")\n                    .dcp(true)\n                    .dd(true)\n                    .dk(true)\n                    .download(\"enabled\")\n                    .dp(false)\n                    .du(true)\n                    .keyboard(\"enabled\")\n                    .paste(\"enabled\")\n                    .printing(\"enabled\")\n                    .upload(\"enabled\")\n                    .version(\"v1\")\n                    .wmId(\"475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\")\n                    .build())\n                .blockPage(ZeroTrustGatewayPolicyRuleSettingsBlockPageArgs.builder()\n                    .targetUri(\"https://example.com\")\n                    .includeContext(true)\n                    .build())\n                .blockPageEnabled(true)\n                .blockReason(\"This website is a security risk\")\n                .bypassParentRule(false)\n                .checkSession(ZeroTrustGatewayPolicyRuleSettingsCheckSessionArgs.builder()\n                    .duration(\"300s\")\n                    .enforce(true)\n                    .build())\n                .dnsResolvers(ZeroTrustGatewayPolicyRuleSettingsDnsResolversArgs.builder()\n                    .ipv4s(ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv4Args.builder()\n                        .ip(\"2.2.2.2\")\n                        .port(5053)\n                        .routeThroughPrivateNetwork(true)\n                        .vnetId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n                        .build())\n                    .ipv6s(ZeroTrustGatewayPolicyRuleSettingsDnsResolversIpv6Args.builder()\n                        .ip(\"2001:DB8::\")\n                        .port(5053)\n                        .routeThroughPrivateNetwork(true)\n                        .vnetId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n                        .build())\n                    .build())\n                .egress(ZeroTrustGatewayPolicyRuleSettingsEgressArgs.builder()\n                    .ipv4(\"192.0.2.2\")\n                    .ipv4Fallback(\"192.0.2.3\")\n                    .ipv6(\"2001:DB8::/64\")\n                    .build())\n                .forensicCopy(ZeroTrustGatewayPolicyRuleSettingsForensicCopyArgs.builder()\n                    .enabled(true)\n                    .build())\n                .ignoreCnameCategoryMatches(true)\n                .insecureDisableDnssecValidation(false)\n                .ipCategories(true)\n                .ipIndicatorFeeds(true)\n                .l4override(ZeroTrustGatewayPolicyRuleSettingsL4overrideArgs.builder()\n                    .ip(\"1.1.1.1\")\n                    .port(0)\n                    .build())\n                .notificationSettings(ZeroTrustGatewayPolicyRuleSettingsNotificationSettingsArgs.builder()\n                    .enabled(true)\n                    .includeContext(true)\n                    .msg(\"msg\")\n                    .supportUrl(\"support_url\")\n                    .build())\n                .overrideHost(\"example.com\")\n                .overrideIps(                \n                    \"1.1.1.1\",\n                    \"2.2.2.2\")\n                .payloadLog(ZeroTrustGatewayPolicyRuleSettingsPayloadLogArgs.builder()\n                    .enabled(true)\n                    .build())\n                .quarantine(ZeroTrustGatewayPolicyRuleSettingsQuarantineArgs.builder()\n                    .fileTypes(\"exe\")\n                    .build())\n                .redirect(ZeroTrustGatewayPolicyRuleSettingsRedirectArgs.builder()\n                    .targetUri(\"https://example.com\")\n                    .includeContext(true)\n                    .preservePathAndQuery(true)\n                    .build())\n                .resolveDnsInternally(ZeroTrustGatewayPolicyRuleSettingsResolveDnsInternallyArgs.builder()\n                    .fallback(\"none\")\n                    .viewId(\"view_id\")\n                    .build())\n                .resolveDnsThroughCloudflare(true)\n                .untrustedCert(ZeroTrustGatewayPolicyRuleSettingsUntrustedCertArgs.builder()\n                    .action(\"error\")\n                    .build())\n                .build())\n            .schedule(ZeroTrustGatewayPolicyScheduleArgs.builder()\n                .fri(\"08:00-12:30,13:30-17:00\")\n                .mon(\"08:00-12:30,13:30-17:00\")\n                .sat(\"08:00-12:30,13:30-17:00\")\n                .sun(\"08:00-12:30,13:30-17:00\")\n                .thu(\"08:00-12:30,13:30-17:00\")\n                .timeZone(\"America/New York\")\n                .tue(\"08:00-12:30,13:30-17:00\")\n                .wed(\"08:00-12:30,13:30-17:00\")\n                .build())\n            .traffic(\"http.request.uri matches \\\".*a/partial/uri.*\\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayPolicy:\n    type: cloudflare:ZeroTrustGatewayPolicy\n    name: example_zero_trust_gateway_policy\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      action: allow\n      name: block bad websites\n      description: Block bad websites based on their host name.\n      devicePosture: any(device_posture.checks.passed[*] in {\"1308749e-fcfb-4ebc-b051-fe022b632644\"})\n      enabled: true\n      expiration:\n        expiresAt: 2014-01-01T05:20:20Z\n        duration: 10\n      filters:\n        - http\n      identity: any(identity.groups.name[*] in {\"finance\"})\n      precedence: 0\n      ruleSettings:\n        addHeaders:\n          My-Next-Header:\n            - foo\n            - bar\n          X-Custom-Header-Name:\n            - somecustomvalue\n        allowChildBypass: false\n        auditSsh:\n          commandLogging: false\n        bisoAdminControls:\n          copy: remote_only\n          dcp: true\n          dd: true\n          dk: true\n          download: enabled\n          dp: false\n          du: true\n          keyboard: enabled\n          paste: enabled\n          printing: enabled\n          upload: enabled\n          version: v1\n          wmId: 475345dc-5299-4b6e-8f6a-3d3e4c8e9f1a\n        blockPage:\n          targetUri: https://example.com\n          includeContext: true\n        blockPageEnabled: true\n        blockReason: This website is a security risk\n        bypassParentRule: false\n        checkSession:\n          duration: 300s\n          enforce: true\n        dnsResolvers:\n          ipv4s:\n            - ip: 2.2.2.2\n              port: 5053\n              routeThroughPrivateNetwork: true\n              vnetId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n          ipv6s:\n            - ip: '2001:DB8::'\n              port: 5053\n              routeThroughPrivateNetwork: true\n              vnetId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        egress:\n          ipv4: 192.0.2.2\n          ipv4Fallback: 192.0.2.3\n          ipv6: 2001:DB8::/64\n        forensicCopy:\n          enabled: true\n        ignoreCnameCategoryMatches: true\n        insecureDisableDnssecValidation: false\n        ipCategories: true\n        ipIndicatorFeeds: true\n        l4override:\n          ip: 1.1.1.1\n          port: 0\n        notificationSettings:\n          enabled: true\n          includeContext: true\n          msg: msg\n          supportUrl: support_url\n        overrideHost: example.com\n        overrideIps:\n          - 1.1.1.1\n          - 2.2.2.2\n        payloadLog:\n          enabled: true\n        quarantine:\n          fileTypes:\n            - exe\n        redirect:\n          targetUri: https://example.com\n          includeContext: true\n          preservePathAndQuery: true\n        resolveDnsInternally:\n          fallback: none\n          viewId: view_id\n        resolveDnsThroughCloudflare: true\n        untrustedCert:\n          action: error\n      schedule:\n        fri: 08:00-12:30,13:30-17:00\n        mon: 08:00-12:30,13:30-17:00\n        sat: 08:00-12:30,13:30-17:00\n        sun: 08:00-12:30,13:30-17:00\n        thu: 08:00-12:30,13:30-17:00\n        timeZone: America/New York\n        tue: 08:00-12:30,13:30-17:00\n        wed: 08:00-12:30,13:30-17:00\n      traffic: http.request.uri matches \".*a/partial/uri.*\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustGatewayPolicy:ZeroTrustGatewayPolicy example '\u003caccount_id\u003e/\u003crule_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "action": {
                    "type": "string",
                    "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Indicate the date of deletion, if any.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Specify the rule description.\n"
                },
                "devicePosture": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether the rule is enabled.\n"
                },
                "expiration": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyExpiration:ZeroTrustGatewayPolicyExpiration",
                    "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                },
                "identity": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the rule name.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                },
                "readOnly": {
                    "type": "boolean",
                    "description": "Indicate that this rule is shared via the Orgs API and read only.\n"
                },
                "ruleSettings": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettings:ZeroTrustGatewayPolicyRuleSettings",
                    "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                },
                "schedule": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicySchedule:ZeroTrustGatewayPolicySchedule",
                    "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "sharable": {
                    "type": "boolean",
                    "description": "Indicate that this rule is sharable via the Orgs API.\n"
                },
                "sourceAccount": {
                    "type": "string",
                    "description": "Provide the account tag of the account that created the rule.\n"
                },
                "traffic": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "updatedAt": {
                    "type": "string"
                },
                "version": {
                    "type": "integer",
                    "description": "Indicate the version number of the rule(read-only).\n"
                },
                "warningStatus": {
                    "type": "string",
                    "description": "Indicate a warning for a misconfigured rule, if any.\n"
                }
            },
            "required": [
                "action",
                "createdAt",
                "deletedAt",
                "devicePosture",
                "enabled",
                "expiration",
                "filters",
                "identity",
                "name",
                "precedence",
                "readOnly",
                "ruleSettings",
                "schedule",
                "sharable",
                "sourceAccount",
                "traffic",
                "updatedAt",
                "version",
                "warningStatus"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "action": {
                    "type": "string",
                    "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                },
                "description": {
                    "type": "string",
                    "description": "Specify the rule description.\n"
                },
                "devicePosture": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Specify whether the rule is enabled.\n"
                },
                "expiration": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyExpiration:ZeroTrustGatewayPolicyExpiration",
                    "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                },
                "identity": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the rule name.\n"
                },
                "precedence": {
                    "type": "integer",
                    "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                },
                "ruleSettings": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettings:ZeroTrustGatewayPolicyRuleSettings",
                    "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                },
                "schedule": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicySchedule:ZeroTrustGatewayPolicySchedule",
                    "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                },
                "traffic": {
                    "type": "string",
                    "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                }
            },
            "requiredInputs": [
                "action",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustGatewayPolicy resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "action": {
                        "type": "string",
                        "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Indicate the date of deletion, if any.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Specify the rule description.\n"
                    },
                    "devicePosture": {
                        "type": "string",
                        "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Specify whether the rule is enabled.\n"
                    },
                    "expiration": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyExpiration:ZeroTrustGatewayPolicyExpiration",
                        "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n"
                    },
                    "identity": {
                        "type": "string",
                        "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the rule name.\n"
                    },
                    "precedence": {
                        "type": "integer",
                        "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n"
                    },
                    "readOnly": {
                        "type": "boolean",
                        "description": "Indicate that this rule is shared via the Orgs API and read only.\n"
                    },
                    "ruleSettings": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicyRuleSettings:ZeroTrustGatewayPolicyRuleSettings",
                        "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                    },
                    "schedule": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewayPolicySchedule:ZeroTrustGatewayPolicySchedule",
                        "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                    },
                    "sharable": {
                        "type": "boolean",
                        "description": "Indicate that this rule is sharable via the Orgs API.\n"
                    },
                    "sourceAccount": {
                        "type": "string",
                        "description": "Provide the account tag of the account that created the rule.\n"
                    },
                    "traffic": {
                        "type": "string",
                        "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "version": {
                        "type": "integer",
                        "description": "Indicate the version number of the rule(read-only).\n"
                    },
                    "warningStatus": {
                        "type": "string",
                        "description": "Indicate a warning for a misconfigured rule, if any.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsRule:TeamsRule"
                }
            ]
        },
        "cloudflare:index/zeroTrustGatewayProxyEndpoint:ZeroTrustGatewayProxyEndpoint": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayProxyEndpoint = new cloudflare.ZeroTrustGatewayProxyEndpoint(\"example_zero_trust_gateway_proxy_endpoint\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Devops team\",\n    kind: \"ip\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_proxy_endpoint = cloudflare.ZeroTrustGatewayProxyEndpoint(\"example_zero_trust_gateway_proxy_endpoint\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Devops team\",\n    kind=\"ip\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayProxyEndpoint = new Cloudflare.Index.ZeroTrustGatewayProxyEndpoint(\"example_zero_trust_gateway_proxy_endpoint\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Devops team\",\n        Kind = \"ip\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewayProxyEndpoint(ctx, \"example_zero_trust_gateway_proxy_endpoint\", \u0026cloudflare.ZeroTrustGatewayProxyEndpointArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:      pulumi.String(\"Devops team\"),\n\t\t\tKind:      pulumi.String(\"ip\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewayProxyEndpoint;\nimport com.pulumi.cloudflare.ZeroTrustGatewayProxyEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewayProxyEndpoint = new ZeroTrustGatewayProxyEndpoint(\"exampleZeroTrustGatewayProxyEndpoint\", ZeroTrustGatewayProxyEndpointArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Devops team\")\n            .kind(\"ip\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewayProxyEndpoint:\n    type: cloudflare:ZeroTrustGatewayProxyEndpoint\n    name: example_zero_trust_gateway_proxy_endpoint\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Devops team\n      kind: ip\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustGatewayProxyEndpoint:ZeroTrustGatewayProxyEndpoint example '\u003caccount_id\u003e/\u003cproxy_endpoint_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the name of the proxy endpoint.\n"
                },
                "subdomain": {
                    "type": "string",
                    "description": "Specify the subdomain to use as the destination in the proxy client.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "kind",
                "name",
                "subdomain",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "ips": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                },
                "kind": {
                    "type": "string",
                    "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the name of the proxy endpoint.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustGatewayProxyEndpoint resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "ips": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Specify the list of CIDRs to restrict ingress connections.\n"
                    },
                    "kind": {
                        "type": "string",
                        "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the name of the proxy endpoint.\n"
                    },
                    "subdomain": {
                        "type": "string",
                        "description": "Specify the subdomain to use as the destination in the proxy client.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsProxyEndpoint:TeamsProxyEndpoint"
                }
            ]
        },
        "cloudflare:index/zeroTrustGatewaySettings:ZeroTrustGatewaySettings": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewaySettings = new cloudflare.ZeroTrustGatewaySettings(\"example_zero_trust_gateway_settings\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    settings: {\n        activityLog: {\n            enabled: true,\n        },\n        antivirus: {\n            enabledDownloadPhase: false,\n            enabledUploadPhase: false,\n            failClosed: false,\n            notificationSettings: {\n                enabled: true,\n                includeContext: true,\n                msg: \"msg\",\n                supportUrl: \"support_url\",\n            },\n        },\n        blockPage: {\n            backgroundColor: \"background_color\",\n            enabled: true,\n            footerText: \"--footer--\",\n            headerText: \"--header--\",\n            includeContext: true,\n            logoPath: \"https://logos.com/a.png\",\n            mailtoAddress: \"admin@example.com\",\n            mailtoSubject: \"Blocked User Inquiry\",\n            mode: \"\",\n            name: \"Cloudflare\",\n            suppressFooter: false,\n            targetUri: \"https://example.com\",\n        },\n        bodyScanning: {\n            inspectionMode: \"deep\",\n        },\n        browserIsolation: {\n            nonIdentityEnabled: true,\n            urlBrowserIsolationEnabled: true,\n        },\n        certificate: {\n            id: \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        customCertificate: {\n            enabled: true,\n            id: \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        extendedEmailMatching: {\n            enabled: true,\n        },\n        fips: {\n            tls: true,\n        },\n        hostSelector: {\n            enabled: false,\n        },\n        inspection: {\n            mode: \"static\",\n        },\n        protocolDetection: {\n            enabled: true,\n        },\n        sandbox: {\n            enabled: true,\n            fallbackAction: \"allow\",\n        },\n        tlsDecrypt: {\n            enabled: true,\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_settings = cloudflare.ZeroTrustGatewaySettings(\"example_zero_trust_gateway_settings\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    settings={\n        \"activity_log\": {\n            \"enabled\": True,\n        },\n        \"antivirus\": {\n            \"enabled_download_phase\": False,\n            \"enabled_upload_phase\": False,\n            \"fail_closed\": False,\n            \"notification_settings\": {\n                \"enabled\": True,\n                \"include_context\": True,\n                \"msg\": \"msg\",\n                \"support_url\": \"support_url\",\n            },\n        },\n        \"block_page\": {\n            \"background_color\": \"background_color\",\n            \"enabled\": True,\n            \"footer_text\": \"--footer--\",\n            \"header_text\": \"--header--\",\n            \"include_context\": True,\n            \"logo_path\": \"https://logos.com/a.png\",\n            \"mailto_address\": \"admin@example.com\",\n            \"mailto_subject\": \"Blocked User Inquiry\",\n            \"mode\": \"\",\n            \"name\": \"Cloudflare\",\n            \"suppress_footer\": False,\n            \"target_uri\": \"https://example.com\",\n        },\n        \"body_scanning\": {\n            \"inspection_mode\": \"deep\",\n        },\n        \"browser_isolation\": {\n            \"non_identity_enabled\": True,\n            \"url_browser_isolation_enabled\": True,\n        },\n        \"certificate\": {\n            \"id\": \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        \"custom_certificate\": {\n            \"enabled\": True,\n            \"id\": \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n        },\n        \"extended_email_matching\": {\n            \"enabled\": True,\n        },\n        \"fips\": {\n            \"tls\": True,\n        },\n        \"host_selector\": {\n            \"enabled\": False,\n        },\n        \"inspection\": {\n            \"mode\": \"static\",\n        },\n        \"protocol_detection\": {\n            \"enabled\": True,\n        },\n        \"sandbox\": {\n            \"enabled\": True,\n            \"fallback_action\": \"allow\",\n        },\n        \"tls_decrypt\": {\n            \"enabled\": True,\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewaySettings = new Cloudflare.Index.ZeroTrustGatewaySettings(\"example_zero_trust_gateway_settings\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Settings = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsArgs\n        {\n            ActivityLog = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsActivityLogArgs\n            {\n                Enabled = true,\n            },\n            Antivirus = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsAntivirusArgs\n            {\n                EnabledDownloadPhase = false,\n                EnabledUploadPhase = false,\n                FailClosed = false,\n                NotificationSettings = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs\n                {\n                    Enabled = true,\n                    IncludeContext = true,\n                    Msg = \"msg\",\n                    SupportUrl = \"support_url\",\n                },\n            },\n            BlockPage = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsBlockPageArgs\n            {\n                BackgroundColor = \"background_color\",\n                Enabled = true,\n                FooterText = \"--footer--\",\n                HeaderText = \"--header--\",\n                IncludeContext = true,\n                LogoPath = \"https://logos.com/a.png\",\n                MailtoAddress = \"admin@example.com\",\n                MailtoSubject = \"Blocked User Inquiry\",\n                Mode = \"\",\n                Name = \"Cloudflare\",\n                SuppressFooter = false,\n                TargetUri = \"https://example.com\",\n            },\n            BodyScanning = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsBodyScanningArgs\n            {\n                InspectionMode = \"deep\",\n            },\n            BrowserIsolation = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs\n            {\n                NonIdentityEnabled = true,\n                UrlBrowserIsolationEnabled = true,\n            },\n            Certificate = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsCertificateArgs\n            {\n                Id = \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n            },\n            CustomCertificate = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsCustomCertificateArgs\n            {\n                Enabled = true,\n                Id = \"d1b364c5-1311-466e-a194-f0e943e0799f\",\n            },\n            ExtendedEmailMatching = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs\n            {\n                Enabled = true,\n            },\n            Fips = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsFipsArgs\n            {\n                Tls = true,\n            },\n            HostSelector = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsHostSelectorArgs\n            {\n                Enabled = false,\n            },\n            Inspection = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsInspectionArgs\n            {\n                Mode = \"static\",\n            },\n            ProtocolDetection = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs\n            {\n                Enabled = true,\n            },\n            Sandbox = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsSandboxArgs\n            {\n                Enabled = true,\n                FallbackAction = \"allow\",\n            },\n            TlsDecrypt = new Cloudflare.Inputs.ZeroTrustGatewaySettingsSettingsTlsDecryptArgs\n            {\n                Enabled = true,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustGatewaySettings(ctx, \"example_zero_trust_gateway_settings\", \u0026cloudflare.ZeroTrustGatewaySettingsArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tSettings: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsArgs{\n\t\t\t\tActivityLog: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsActivityLogArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tAntivirus: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsAntivirusArgs{\n\t\t\t\t\tEnabledDownloadPhase: pulumi.Bool(false),\n\t\t\t\t\tEnabledUploadPhase:   pulumi.Bool(false),\n\t\t\t\t\tFailClosed:           pulumi.Bool(false),\n\t\t\t\t\tNotificationSettings: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs{\n\t\t\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\t\t\tIncludeContext: pulumi.Bool(true),\n\t\t\t\t\t\tMsg:            pulumi.String(\"msg\"),\n\t\t\t\t\t\tSupportUrl:     pulumi.String(\"support_url\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBlockPage: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsBlockPageArgs{\n\t\t\t\t\tBackgroundColor: pulumi.String(\"background_color\"),\n\t\t\t\t\tEnabled:         pulumi.Bool(true),\n\t\t\t\t\tFooterText:      pulumi.String(\"--footer--\"),\n\t\t\t\t\tHeaderText:      pulumi.String(\"--header--\"),\n\t\t\t\t\tIncludeContext:  pulumi.Bool(true),\n\t\t\t\t\tLogoPath:        pulumi.String(\"https://logos.com/a.png\"),\n\t\t\t\t\tMailtoAddress:   pulumi.String(\"admin@example.com\"),\n\t\t\t\t\tMailtoSubject:   pulumi.String(\"Blocked User Inquiry\"),\n\t\t\t\t\tMode:            pulumi.String(\"\"),\n\t\t\t\t\tName:            pulumi.String(\"Cloudflare\"),\n\t\t\t\t\tSuppressFooter:  pulumi.Bool(false),\n\t\t\t\t\tTargetUri:       pulumi.String(\"https://example.com\"),\n\t\t\t\t},\n\t\t\t\tBodyScanning: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsBodyScanningArgs{\n\t\t\t\t\tInspectionMode: pulumi.String(\"deep\"),\n\t\t\t\t},\n\t\t\t\tBrowserIsolation: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs{\n\t\t\t\t\tNonIdentityEnabled:         pulumi.Bool(true),\n\t\t\t\t\tUrlBrowserIsolationEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tCertificate: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsCertificateArgs{\n\t\t\t\t\tId: pulumi.String(\"d1b364c5-1311-466e-a194-f0e943e0799f\"),\n\t\t\t\t},\n\t\t\t\tCustomCertificate: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsCustomCertificateArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\tId:      pulumi.String(\"d1b364c5-1311-466e-a194-f0e943e0799f\"),\n\t\t\t\t},\n\t\t\t\tExtendedEmailMatching: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tFips: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsFipsArgs{\n\t\t\t\t\tTls: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tHostSelector: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsHostSelectorArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tInspection: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsInspectionArgs{\n\t\t\t\t\tMode: pulumi.String(\"static\"),\n\t\t\t\t},\n\t\t\t\tProtocolDetection: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tSandbox: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsSandboxArgs{\n\t\t\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\t\t\tFallbackAction: pulumi.String(\"allow\"),\n\t\t\t\t},\n\t\t\t\tTlsDecrypt: \u0026cloudflare.ZeroTrustGatewaySettingsSettingsTlsDecryptArgs{\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustGatewaySettings;\nimport com.pulumi.cloudflare.ZeroTrustGatewaySettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsActivityLogArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsAntivirusArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsBlockPageArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsBodyScanningArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsCustomCertificateArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsFipsArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsHostSelectorArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsInspectionArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsSandboxArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustGatewaySettingsSettingsTlsDecryptArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustGatewaySettings = new ZeroTrustGatewaySettings(\"exampleZeroTrustGatewaySettings\", ZeroTrustGatewaySettingsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .settings(ZeroTrustGatewaySettingsSettingsArgs.builder()\n                .activityLog(ZeroTrustGatewaySettingsSettingsActivityLogArgs.builder()\n                    .enabled(true)\n                    .build())\n                .antivirus(ZeroTrustGatewaySettingsSettingsAntivirusArgs.builder()\n                    .enabledDownloadPhase(false)\n                    .enabledUploadPhase(false)\n                    .failClosed(false)\n                    .notificationSettings(ZeroTrustGatewaySettingsSettingsAntivirusNotificationSettingsArgs.builder()\n                        .enabled(true)\n                        .includeContext(true)\n                        .msg(\"msg\")\n                        .supportUrl(\"support_url\")\n                        .build())\n                    .build())\n                .blockPage(ZeroTrustGatewaySettingsSettingsBlockPageArgs.builder()\n                    .backgroundColor(\"background_color\")\n                    .enabled(true)\n                    .footerText(\"--footer--\")\n                    .headerText(\"--header--\")\n                    .includeContext(true)\n                    .logoPath(\"https://logos.com/a.png\")\n                    .mailtoAddress(\"admin@example.com\")\n                    .mailtoSubject(\"Blocked User Inquiry\")\n                    .mode(\"\")\n                    .name(\"Cloudflare\")\n                    .suppressFooter(false)\n                    .targetUri(\"https://example.com\")\n                    .build())\n                .bodyScanning(ZeroTrustGatewaySettingsSettingsBodyScanningArgs.builder()\n                    .inspectionMode(\"deep\")\n                    .build())\n                .browserIsolation(ZeroTrustGatewaySettingsSettingsBrowserIsolationArgs.builder()\n                    .nonIdentityEnabled(true)\n                    .urlBrowserIsolationEnabled(true)\n                    .build())\n                .certificate(ZeroTrustGatewaySettingsSettingsCertificateArgs.builder()\n                    .id(\"d1b364c5-1311-466e-a194-f0e943e0799f\")\n                    .build())\n                .customCertificate(ZeroTrustGatewaySettingsSettingsCustomCertificateArgs.builder()\n                    .enabled(true)\n                    .id(\"d1b364c5-1311-466e-a194-f0e943e0799f\")\n                    .build())\n                .extendedEmailMatching(ZeroTrustGatewaySettingsSettingsExtendedEmailMatchingArgs.builder()\n                    .enabled(true)\n                    .build())\n                .fips(ZeroTrustGatewaySettingsSettingsFipsArgs.builder()\n                    .tls(true)\n                    .build())\n                .hostSelector(ZeroTrustGatewaySettingsSettingsHostSelectorArgs.builder()\n                    .enabled(false)\n                    .build())\n                .inspection(ZeroTrustGatewaySettingsSettingsInspectionArgs.builder()\n                    .mode(\"static\")\n                    .build())\n                .protocolDetection(ZeroTrustGatewaySettingsSettingsProtocolDetectionArgs.builder()\n                    .enabled(true)\n                    .build())\n                .sandbox(ZeroTrustGatewaySettingsSettingsSandboxArgs.builder()\n                    .enabled(true)\n                    .fallbackAction(\"allow\")\n                    .build())\n                .tlsDecrypt(ZeroTrustGatewaySettingsSettingsTlsDecryptArgs.builder()\n                    .enabled(true)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustGatewaySettings:\n    type: cloudflare:ZeroTrustGatewaySettings\n    name: example_zero_trust_gateway_settings\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      settings:\n        activityLog:\n          enabled: true\n        antivirus:\n          enabledDownloadPhase: false\n          enabledUploadPhase: false\n          failClosed: false\n          notificationSettings:\n            enabled: true\n            includeContext: true\n            msg: msg\n            supportUrl: support_url\n        blockPage:\n          backgroundColor: background_color\n          enabled: true\n          footerText: --footer--\n          headerText: --header--\n          includeContext: true\n          logoPath: https://logos.com/a.png\n          mailtoAddress: admin@example.com\n          mailtoSubject: Blocked User Inquiry\n          mode: \"\"\n          name: Cloudflare\n          suppressFooter: false\n          targetUri: https://example.com\n        bodyScanning:\n          inspectionMode: deep\n        browserIsolation:\n          nonIdentityEnabled: true\n          urlBrowserIsolationEnabled: true\n        certificate:\n          id: d1b364c5-1311-466e-a194-f0e943e0799f\n        customCertificate:\n          enabled: true\n          id: d1b364c5-1311-466e-a194-f0e943e0799f\n        extendedEmailMatching:\n          enabled: true\n        fips:\n          tls: true\n        hostSelector:\n          enabled: false\n        inspection:\n          mode: static\n        protocolDetection:\n          enabled: true\n        sandbox:\n          enabled: true\n          fallbackAction: allow\n        tlsDecrypt:\n          enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustGatewaySettings:ZeroTrustGatewaySettings example '\u003caccount_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettings:ZeroTrustGatewaySettingsSettings",
                    "description": "Specify account settings.\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "accountId",
                "createdAt",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "settings": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettings:ZeroTrustGatewaySettingsSettings",
                    "description": "Specify account settings.\n"
                }
            },
            "requiredInputs": [
                "accountId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustGatewaySettings resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustGatewaySettingsSettings:ZeroTrustGatewaySettingsSettings",
                        "description": "Specify account settings.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsAccount:TeamsAccount"
                }
            ]
        },
        "cloudflare:index/zeroTrustList:ZeroTrustList": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustList = new cloudflare.ZeroTrustList(\"example_zero_trust_list\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"Admin Serial Numbers\",\n    type: \"SERIAL\",\n    description: \"The serial numbers for administrators\",\n    items: [{\n        description: \"Austin office IP\",\n        value: \"8GE8721REF\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_list = cloudflare.ZeroTrustList(\"example_zero_trust_list\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"Admin Serial Numbers\",\n    type=\"SERIAL\",\n    description=\"The serial numbers for administrators\",\n    items=[{\n        \"description\": \"Austin office IP\",\n        \"value\": \"8GE8721REF\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustList = new Cloudflare.Index.ZeroTrustList(\"example_zero_trust_list\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"Admin Serial Numbers\",\n        Type = \"SERIAL\",\n        Description = \"The serial numbers for administrators\",\n        Items = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustListItemArgs\n            {\n                Description = \"Austin office IP\",\n                Value = \"8GE8721REF\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustList(ctx, \"example_zero_trust_list\", \u0026cloudflare.ZeroTrustListArgs{\n\t\t\tAccountId:   pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:        pulumi.String(\"Admin Serial Numbers\"),\n\t\t\tType:        pulumi.String(\"SERIAL\"),\n\t\t\tDescription: pulumi.String(\"The serial numbers for administrators\"),\n\t\t\tItems: cloudflare.ZeroTrustListItemArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustListItemArgs{\n\t\t\t\t\tDescription: pulumi.String(\"Austin office IP\"),\n\t\t\t\t\tValue:       pulumi.String(\"8GE8721REF\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustList;\nimport com.pulumi.cloudflare.ZeroTrustListArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustListItemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustList = new ZeroTrustList(\"exampleZeroTrustList\", ZeroTrustListArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"Admin Serial Numbers\")\n            .type(\"SERIAL\")\n            .description(\"The serial numbers for administrators\")\n            .items(ZeroTrustListItemArgs.builder()\n                .description(\"Austin office IP\")\n                .value(\"8GE8721REF\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustList:\n    type: cloudflare:ZeroTrustList\n    name: example_zero_trust_list\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: Admin Serial Numbers\n      type: SERIAL\n      description: The serial numbers for administrators\n      items:\n        - description: Austin office IP\n          value: 8GE8721REF\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustList:ZeroTrustList example '\u003caccount_id\u003e/\u003clist_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "createdAt": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list description.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustListItem:ZeroTrustListItem"
                    },
                    "description": "Add items to the list.\n"
                },
                "listCount": {
                    "type": "number",
                    "description": "Indicate the number of items in the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the list name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                },
                "updatedAt": {
                    "type": "string"
                }
            },
            "required": [
                "createdAt",
                "description",
                "listCount",
                "name",
                "type",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "description": {
                    "type": "string",
                    "description": "Provide the list description.\n"
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustListItem:ZeroTrustListItem"
                    },
                    "description": "Add items to the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Specify the list name.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                }
            },
            "requiredInputs": [
                "name",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustList resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "description": "Provide the list description.\n"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustListItem:ZeroTrustListItem"
                        },
                        "description": "Add items to the list.\n"
                    },
                    "listCount": {
                        "type": "number",
                        "description": "Indicate the number of items in the list.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Specify the list name.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/teamsList:TeamsList"
                }
            ]
        },
        "cloudflare:index/zeroTrustLocalFallbackDomain:ZeroTrustLocalFallbackDomain": {
            "description": "Accepted Permissions\n\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceCustomProfileLocalDomainFallback = new cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallback(\"example_zero_trust_device_custom_profile_local_domain_fallback\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    policyId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    domains: [{\n        suffix: \"example.com\",\n        description: \"Domain bypass for local development\",\n        dnsServer: [\"1.1.1.1\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_custom_profile_local_domain_fallback = cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallback(\"example_zero_trust_device_custom_profile_local_domain_fallback\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    policy_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    domains=[{\n        \"suffix\": \"example.com\",\n        \"description\": \"Domain bypass for local development\",\n        \"dns_server\": [\"1.1.1.1\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceCustomProfileLocalDomainFallback = new Cloudflare.Index.ZeroTrustDeviceCustomProfileLocalDomainFallback(\"example_zero_trust_device_custom_profile_local_domain_fallback\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        PolicyId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Domains = new[]\n        {\n            new Cloudflare.Inputs.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs\n            {\n                Suffix = \"example.com\",\n                Description = \"Domain bypass for local development\",\n                DnsServer = new[]\n                {\n                    \"1.1.1.1\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustDeviceCustomProfileLocalDomainFallback(ctx, \"example_zero_trust_device_custom_profile_local_domain_fallback\", \u0026cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tPolicyId:  pulumi.String(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tDomains: cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArray{\n\t\t\t\t\u0026cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs{\n\t\t\t\t\tSuffix:      pulumi.String(\"example.com\"),\n\t\t\t\t\tDescription: pulumi.String(\"Domain bypass for local development\"),\n\t\t\t\t\tDnsServer: []string{\n\t\t\t\t\t\t\"1.1.1.1\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallback;\nimport com.pulumi.cloudflare.ZeroTrustDeviceCustomProfileLocalDomainFallbackArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustDeviceCustomProfileLocalDomainFallback = new ZeroTrustDeviceCustomProfileLocalDomainFallback(\"exampleZeroTrustDeviceCustomProfileLocalDomainFallback\", ZeroTrustDeviceCustomProfileLocalDomainFallbackArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .policyId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .domains(ZeroTrustDeviceCustomProfileLocalDomainFallbackDomainArgs.builder()\n                .suffix(\"example.com\")\n                .description(\"Domain bypass for local development\")\n                .dnsServer(List.of(\"1.1.1.1\"))\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustDeviceCustomProfileLocalDomainFallback:\n    type: cloudflare:ZeroTrustDeviceCustomProfileLocalDomainFallback\n    name: example_zero_trust_device_custom_profile_local_domain_fallback\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      policyId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n      domains:\n        - suffix: example.com\n          description: Domain bypass for local development\n          dnsServer:\n            - 1.1.1.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustLocalFallbackDomain:ZeroTrustLocalFallbackDomain example '\u003caccount_id\u003e/\u003cpolicy_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustLocalFallbackDomainDomain:ZeroTrustLocalFallbackDomainDomain"
                    }
                },
                "policyId": {
                    "type": "string"
                }
            },
            "required": [
                "domains",
                "policyId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "domains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustLocalFallbackDomainDomain:ZeroTrustLocalFallbackDomainDomain"
                    }
                },
                "policyId": {
                    "type": "string"
                }
            },
            "requiredInputs": [
                "domains",
                "policyId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustLocalFallbackDomain resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "domains": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustLocalFallbackDomainDomain:ZeroTrustLocalFallbackDomainDomain"
                        }
                    },
                    "policyId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/fallbackDomain:FallbackDomain"
                },
                {
                    "type": "cloudflare:index/zeroTrustLocalFallbackDomain:ZeroTrustLocalFallbackDomain"
                }
            ],
            "deprecationMessage": "cloudflare.index/zerotrustlocalfallbackdomain.ZeroTrustLocalFallbackDomain has been deprecated in favor of cloudflare.index/zerotrustdevicecustomprofilelocaldomainfallback.ZeroTrustDeviceCustomProfileLocalDomainFallback"
        },
        "cloudflare:index/zeroTrustNetworkHostnameRoute:ZeroTrustNetworkHostnameRoute": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustNetworkHostnameRoute = new cloudflare.ZeroTrustNetworkHostnameRoute(\"example_zero_trust_network_hostname_route\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    comment: \"example comment\",\n    hostname: \"office-1.local\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_network_hostname_route = cloudflare.ZeroTrustNetworkHostnameRoute(\"example_zero_trust_network_hostname_route\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    comment=\"example comment\",\n    hostname=\"office-1.local\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustNetworkHostnameRoute = new Cloudflare.Index.ZeroTrustNetworkHostnameRoute(\"example_zero_trust_network_hostname_route\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Comment = \"example comment\",\n        Hostname = \"office-1.local\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustNetworkHostnameRoute(ctx, \"example_zero_trust_network_hostname_route\", \u0026cloudflare.ZeroTrustNetworkHostnameRouteArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tComment:   pulumi.String(\"example comment\"),\n\t\t\tHostname:  pulumi.String(\"office-1.local\"),\n\t\t\tTunnelId:  pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustNetworkHostnameRoute;\nimport com.pulumi.cloudflare.ZeroTrustNetworkHostnameRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustNetworkHostnameRoute = new ZeroTrustNetworkHostnameRoute(\"exampleZeroTrustNetworkHostnameRoute\", ZeroTrustNetworkHostnameRouteArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .comment(\"example comment\")\n            .hostname(\"office-1.local\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustNetworkHostnameRoute:\n    type: cloudflare:ZeroTrustNetworkHostnameRoute\n    name: example_zero_trust_network_hostname_route\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      comment: example comment\n      hostname: office-1.local\n      tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustNetworkHostnameRoute:ZeroTrustNetworkHostnameRoute example '\u003caccount_id\u003e/\u003chostname_route_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An optional description of the hostname route.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the route.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "tunnelName": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                }
            },
            "required": [
                "createdAt",
                "deletedAt",
                "tunnelName"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "An optional description of the hostname route.\n"
                },
                "hostname": {
                    "type": "string",
                    "description": "The hostname of the route.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustNetworkHostnameRoute resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "An optional description of the hostname route.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "The hostname of the route.\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "tunnelName": {
                        "type": "string",
                        "description": "A user-friendly name for a tunnel.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustOrganization:ZeroTrustOrganization": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Revoke`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustOrganization = new cloudflare.ZeroTrustOrganization(\"example_zero_trust_organization\", {\n    zoneId: \"zone_id\",\n    allowAuthenticateViaWarp: true,\n    authDomain: \"test.cloudflareaccess.com\",\n    autoRedirectToIdentity: true,\n    customPages: {\n        forbidden: \"699d98642c564d2e855e9661899b7252\",\n        identityDenied: \"699d98642c564d2e855e9661899b7252\",\n    },\n    denyUnmatchedRequests: true,\n    denyUnmatchedRequestsExemptedZoneNames: [\"example.com\"],\n    isUiReadOnly: true,\n    loginDesign: {\n        backgroundColor: \"#c5ed1b\",\n        footerText: \"This is an example description.\",\n        headerText: \"This is an example description.\",\n        logoPath: \"https://example.com/logo.png\",\n        textColor: \"#c5ed1b\",\n    },\n    mfaConfig: {\n        allowedAuthenticators: [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        amrMatchingSessionDuration: \"12h\",\n        requiredAaguids: \"2fc0579f-8113-47ea-b116-bb5a8db9202a\",\n        sessionDuration: \"24h\",\n    },\n    mfaRequiredForAllApps: false,\n    mfaSshPivKeyRequirements: {\n        pinPolicy: \"always\",\n        requireFipsDevice: true,\n        sshKeySizes: [\n            256,\n            2048,\n        ],\n        sshKeyTypes: [\n            \"ecdsa\",\n            \"rsa\",\n        ],\n        touchPolicy: \"always\",\n    },\n    name: \"Widget Corps Internal Applications\",\n    sessionDuration: \"24h\",\n    uiReadOnlyToggleReason: \"Temporarily turn off the UI read only lock to make a change via the UI\",\n    userSeatExpirationInactiveTime: \"730h\",\n    warpAuthSessionDuration: \"24h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_organization = cloudflare.ZeroTrustOrganization(\"example_zero_trust_organization\",\n    zone_id=\"zone_id\",\n    allow_authenticate_via_warp=True,\n    auth_domain=\"test.cloudflareaccess.com\",\n    auto_redirect_to_identity=True,\n    custom_pages={\n        \"forbidden\": \"699d98642c564d2e855e9661899b7252\",\n        \"identity_denied\": \"699d98642c564d2e855e9661899b7252\",\n    },\n    deny_unmatched_requests=True,\n    deny_unmatched_requests_exempted_zone_names=[\"example.com\"],\n    is_ui_read_only=True,\n    login_design={\n        \"background_color\": \"#c5ed1b\",\n        \"footer_text\": \"This is an example description.\",\n        \"header_text\": \"This is an example description.\",\n        \"logo_path\": \"https://example.com/logo.png\",\n        \"text_color\": \"#c5ed1b\",\n    },\n    mfa_config={\n        \"allowed_authenticators\": [\n            \"totp\",\n            \"biometrics\",\n            \"security_key\",\n        ],\n        \"amr_matching_session_duration\": \"12h\",\n        \"required_aaguids\": \"2fc0579f-8113-47ea-b116-bb5a8db9202a\",\n        \"session_duration\": \"24h\",\n    },\n    mfa_required_for_all_apps=False,\n    mfa_ssh_piv_key_requirements={\n        \"pin_policy\": \"always\",\n        \"require_fips_device\": True,\n        \"ssh_key_sizes\": [\n            256,\n            2048,\n        ],\n        \"ssh_key_types\": [\n            \"ecdsa\",\n            \"rsa\",\n        ],\n        \"touch_policy\": \"always\",\n    },\n    name=\"Widget Corps Internal Applications\",\n    session_duration=\"24h\",\n    ui_read_only_toggle_reason=\"Temporarily turn off the UI read only lock to make a change via the UI\",\n    user_seat_expiration_inactive_time=\"730h\",\n    warp_auth_session_duration=\"24h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustOrganization = new Cloudflare.Index.ZeroTrustOrganization(\"example_zero_trust_organization\", new()\n    {\n        ZoneId = \"zone_id\",\n        AllowAuthenticateViaWarp = true,\n        AuthDomain = \"test.cloudflareaccess.com\",\n        AutoRedirectToIdentity = true,\n        CustomPages = new Cloudflare.Inputs.ZeroTrustOrganizationCustomPagesArgs\n        {\n            Forbidden = \"699d98642c564d2e855e9661899b7252\",\n            IdentityDenied = \"699d98642c564d2e855e9661899b7252\",\n        },\n        DenyUnmatchedRequests = true,\n        DenyUnmatchedRequestsExemptedZoneNames = new[]\n        {\n            \"example.com\",\n        },\n        IsUiReadOnly = true,\n        LoginDesign = new Cloudflare.Inputs.ZeroTrustOrganizationLoginDesignArgs\n        {\n            BackgroundColor = \"#c5ed1b\",\n            FooterText = \"This is an example description.\",\n            HeaderText = \"This is an example description.\",\n            LogoPath = \"https://example.com/logo.png\",\n            TextColor = \"#c5ed1b\",\n        },\n        MfaConfig = new Cloudflare.Inputs.ZeroTrustOrganizationMfaConfigArgs\n        {\n            AllowedAuthenticators = new[]\n            {\n                \"totp\",\n                \"biometrics\",\n                \"security_key\",\n            },\n            AmrMatchingSessionDuration = \"12h\",\n            RequiredAaguids = \"2fc0579f-8113-47ea-b116-bb5a8db9202a\",\n            SessionDuration = \"24h\",\n        },\n        MfaRequiredForAllApps = false,\n        MfaSshPivKeyRequirements = new Cloudflare.Inputs.ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs\n        {\n            PinPolicy = \"always\",\n            RequireFipsDevice = true,\n            SshKeySizes = new[]\n            {\n                256,\n                2048,\n            },\n            SshKeyTypes = new[]\n            {\n                \"ecdsa\",\n                \"rsa\",\n            },\n            TouchPolicy = \"always\",\n        },\n        Name = \"Widget Corps Internal Applications\",\n        SessionDuration = \"24h\",\n        UiReadOnlyToggleReason = \"Temporarily turn off the UI read only lock to make a change via the UI\",\n        UserSeatExpirationInactiveTime = \"730h\",\n        WarpAuthSessionDuration = \"24h\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustOrganization(ctx, \"example_zero_trust_organization\", \u0026cloudflare.ZeroTrustOrganizationArgs{\n\t\t\tZoneId:                   pulumi.String(\"zone_id\"),\n\t\t\tAllowAuthenticateViaWarp: pulumi.Bool(true),\n\t\t\tAuthDomain:               pulumi.String(\"test.cloudflareaccess.com\"),\n\t\t\tAutoRedirectToIdentity:   pulumi.Bool(true),\n\t\t\tCustomPages: \u0026cloudflare.ZeroTrustOrganizationCustomPagesArgs{\n\t\t\t\tForbidden:      pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\t\tIdentityDenied: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\t},\n\t\t\tDenyUnmatchedRequests: pulumi.Bool(true),\n\t\t\tDenyUnmatchedRequestsExemptedZoneNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t},\n\t\t\tIsUiReadOnly: pulumi.Bool(true),\n\t\t\tLoginDesign: \u0026cloudflare.ZeroTrustOrganizationLoginDesignArgs{\n\t\t\t\tBackgroundColor: pulumi.String(\"#c5ed1b\"),\n\t\t\t\tFooterText:      pulumi.String(\"This is an example description.\"),\n\t\t\t\tHeaderText:      pulumi.String(\"This is an example description.\"),\n\t\t\t\tLogoPath:        pulumi.String(\"https://example.com/logo.png\"),\n\t\t\t\tTextColor:       pulumi.String(\"#c5ed1b\"),\n\t\t\t},\n\t\t\tMfaConfig: \u0026cloudflare.ZeroTrustOrganizationMfaConfigArgs{\n\t\t\t\tAllowedAuthenticators: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"totp\"),\n\t\t\t\t\tpulumi.String(\"biometrics\"),\n\t\t\t\t\tpulumi.String(\"security_key\"),\n\t\t\t\t},\n\t\t\t\tAmrMatchingSessionDuration: pulumi.String(\"12h\"),\n\t\t\t\tRequiredAaguids:            pulumi.String(\"2fc0579f-8113-47ea-b116-bb5a8db9202a\"),\n\t\t\t\tSessionDuration:            pulumi.String(\"24h\"),\n\t\t\t},\n\t\t\tMfaRequiredForAllApps: pulumi.Bool(false),\n\t\t\tMfaSshPivKeyRequirements: \u0026cloudflare.ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs{\n\t\t\t\tPinPolicy:         pulumi.String(\"always\"),\n\t\t\t\tRequireFipsDevice: pulumi.Bool(true),\n\t\t\t\tSshKeySizes: pulumi.IntArray{\n\t\t\t\t\tpulumi.Int(256),\n\t\t\t\t\tpulumi.Int(2048),\n\t\t\t\t},\n\t\t\t\tSshKeyTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"ecdsa\"),\n\t\t\t\t\tpulumi.String(\"rsa\"),\n\t\t\t\t},\n\t\t\t\tTouchPolicy: pulumi.String(\"always\"),\n\t\t\t},\n\t\t\tName:                           pulumi.String(\"Widget Corps Internal Applications\"),\n\t\t\tSessionDuration:                pulumi.String(\"24h\"),\n\t\t\tUiReadOnlyToggleReason:         pulumi.String(\"Temporarily turn off the UI read only lock to make a change via the UI\"),\n\t\t\tUserSeatExpirationInactiveTime: pulumi.String(\"730h\"),\n\t\t\tWarpAuthSessionDuration:        pulumi.String(\"24h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustOrganization;\nimport com.pulumi.cloudflare.ZeroTrustOrganizationArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationCustomPagesArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationLoginDesignArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationMfaConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustOrganization = new ZeroTrustOrganization(\"exampleZeroTrustOrganization\", ZeroTrustOrganizationArgs.builder()\n            .zoneId(\"zone_id\")\n            .allowAuthenticateViaWarp(true)\n            .authDomain(\"test.cloudflareaccess.com\")\n            .autoRedirectToIdentity(true)\n            .customPages(ZeroTrustOrganizationCustomPagesArgs.builder()\n                .forbidden(\"699d98642c564d2e855e9661899b7252\")\n                .identityDenied(\"699d98642c564d2e855e9661899b7252\")\n                .build())\n            .denyUnmatchedRequests(true)\n            .denyUnmatchedRequestsExemptedZoneNames(\"example.com\")\n            .isUiReadOnly(true)\n            .loginDesign(ZeroTrustOrganizationLoginDesignArgs.builder()\n                .backgroundColor(\"#c5ed1b\")\n                .footerText(\"This is an example description.\")\n                .headerText(\"This is an example description.\")\n                .logoPath(\"https://example.com/logo.png\")\n                .textColor(\"#c5ed1b\")\n                .build())\n            .mfaConfig(ZeroTrustOrganizationMfaConfigArgs.builder()\n                .allowedAuthenticators(                \n                    \"totp\",\n                    \"biometrics\",\n                    \"security_key\")\n                .amrMatchingSessionDuration(\"12h\")\n                .requiredAaguids(\"2fc0579f-8113-47ea-b116-bb5a8db9202a\")\n                .sessionDuration(\"24h\")\n                .build())\n            .mfaRequiredForAllApps(false)\n            .mfaSshPivKeyRequirements(ZeroTrustOrganizationMfaSshPivKeyRequirementsArgs.builder()\n                .pinPolicy(\"always\")\n                .requireFipsDevice(true)\n                .sshKeySizes(                \n                    256,\n                    2048)\n                .sshKeyTypes(                \n                    \"ecdsa\",\n                    \"rsa\")\n                .touchPolicy(\"always\")\n                .build())\n            .name(\"Widget Corps Internal Applications\")\n            .sessionDuration(\"24h\")\n            .uiReadOnlyToggleReason(\"Temporarily turn off the UI read only lock to make a change via the UI\")\n            .userSeatExpirationInactiveTime(\"730h\")\n            .warpAuthSessionDuration(\"24h\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustOrganization:\n    type: cloudflare:ZeroTrustOrganization\n    name: example_zero_trust_organization\n    properties:\n      zoneId: zone_id\n      allowAuthenticateViaWarp: true\n      authDomain: test.cloudflareaccess.com\n      autoRedirectToIdentity: true\n      customPages:\n        forbidden: 699d98642c564d2e855e9661899b7252\n        identityDenied: 699d98642c564d2e855e9661899b7252\n      denyUnmatchedRequests: true\n      denyUnmatchedRequestsExemptedZoneNames:\n        - example.com\n      isUiReadOnly: true\n      loginDesign:\n        backgroundColor: '#c5ed1b'\n        footerText: This is an example description.\n        headerText: This is an example description.\n        logoPath: https://example.com/logo.png\n        textColor: '#c5ed1b'\n      mfaConfig:\n        allowedAuthenticators:\n          - totp\n          - biometrics\n          - security_key\n        amrMatchingSessionDuration: 12h\n        requiredAaguids: 2fc0579f-8113-47ea-b116-bb5a8db9202a\n        sessionDuration: 24h\n      mfaRequiredForAllApps: false\n      mfaSshPivKeyRequirements:\n        pinPolicy: always\n        requireFipsDevice: true\n        sshKeySizes:\n          - 256\n          - 2048\n        sshKeyTypes:\n          - ecdsa\n          - rsa\n        touchPolicy: always\n      name: Widget Corps Internal Applications\n      sessionDuration: 24h\n      uiReadOnlyToggleReason: Temporarily turn off the UI read only lock to make a change via the UI\n      userSeatExpirationInactiveTime: 730h\n      warpAuthSessionDuration: 24h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n"
                },
                "authDomain": {
                    "type": "string",
                    "description": "The unique subdomain assigned to your Zero Trust organization.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n"
                },
                "customPages": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationCustomPages:ZeroTrustOrganizationCustomPages"
                },
                "denyUnmatchedRequests": {
                    "type": "boolean",
                    "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n"
                },
                "denyUnmatchedRequestsExemptedZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n"
                },
                "isUiReadOnly": {
                    "type": "boolean",
                    "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n"
                },
                "loginDesign": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationLoginDesign:ZeroTrustOrganizationLoginDesign"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationMfaConfig:ZeroTrustOrganizationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                },
                "mfaConfigurationAllowed": {
                    "type": "boolean",
                    "description": "Indicates if this organization can enforce multi-factor authentication (MFA) requirements at the application and policy level.\n"
                },
                "mfaRequiredForAllApps": {
                    "type": "boolean",
                    "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n"
                },
                "mfaSshPivKeyRequirements": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationMfaSshPivKeyRequirements:ZeroTrustOrganizationMfaSshPivKeyRequirements",
                    "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of your Zero Trust organization.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "uiReadOnlyToggleReason": {
                    "type": "string",
                    "description": "A description of the reason why the UI read only field is being toggled.\n"
                },
                "userSeatExpirationInactiveTime": {
                    "type": "string",
                    "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n"
                },
                "warpAuthSessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "required": [
                "allowAuthenticateViaWarp",
                "autoRedirectToIdentity",
                "isUiReadOnly",
                "mfaConfigurationAllowed",
                "mfaRequiredForAllApps",
                "uiReadOnlyToggleReason"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                },
                "allowAuthenticateViaWarp": {
                    "type": "boolean",
                    "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n"
                },
                "authDomain": {
                    "type": "string",
                    "description": "The unique subdomain assigned to your Zero Trust organization.\n"
                },
                "autoRedirectToIdentity": {
                    "type": "boolean",
                    "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n"
                },
                "customPages": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationCustomPages:ZeroTrustOrganizationCustomPages"
                },
                "denyUnmatchedRequests": {
                    "type": "boolean",
                    "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n"
                },
                "denyUnmatchedRequestsExemptedZoneNames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n"
                },
                "isUiReadOnly": {
                    "type": "boolean",
                    "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n"
                },
                "loginDesign": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationLoginDesign:ZeroTrustOrganizationLoginDesign"
                },
                "mfaConfig": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationMfaConfig:ZeroTrustOrganizationMfaConfig",
                    "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                },
                "mfaConfigurationAllowed": {
                    "type": "boolean",
                    "description": "Indicates if this organization can enforce multi-factor authentication (MFA) requirements at the application and policy level.\n"
                },
                "mfaRequiredForAllApps": {
                    "type": "boolean",
                    "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n"
                },
                "mfaSshPivKeyRequirements": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationMfaSshPivKeyRequirements:ZeroTrustOrganizationMfaSshPivKeyRequirements",
                    "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of your Zero Trust organization.\n"
                },
                "sessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                },
                "uiReadOnlyToggleReason": {
                    "type": "string",
                    "description": "A description of the reason why the UI read only field is being toggled.\n"
                },
                "userSeatExpirationInactiveTime": {
                    "type": "string",
                    "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n"
                },
                "warpAuthSessionDuration": {
                    "type": "string",
                    "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustOrganization resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "allowAuthenticateViaWarp": {
                        "type": "boolean",
                        "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n"
                    },
                    "authDomain": {
                        "type": "string",
                        "description": "The unique subdomain assigned to your Zero Trust organization.\n"
                    },
                    "autoRedirectToIdentity": {
                        "type": "boolean",
                        "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n"
                    },
                    "customPages": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationCustomPages:ZeroTrustOrganizationCustomPages"
                    },
                    "denyUnmatchedRequests": {
                        "type": "boolean",
                        "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n"
                    },
                    "denyUnmatchedRequestsExemptedZoneNames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n"
                    },
                    "isUiReadOnly": {
                        "type": "boolean",
                        "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n"
                    },
                    "loginDesign": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationLoginDesign:ZeroTrustOrganizationLoginDesign"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationMfaConfig:ZeroTrustOrganizationMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                    },
                    "mfaConfigurationAllowed": {
                        "type": "boolean",
                        "description": "Indicates if this organization can enforce multi-factor authentication (MFA) requirements at the application and policy level.\n"
                    },
                    "mfaRequiredForAllApps": {
                        "type": "boolean",
                        "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n"
                    },
                    "mfaSshPivKeyRequirements": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustOrganizationMfaSshPivKeyRequirements:ZeroTrustOrganizationMfaSshPivKeyRequirements",
                        "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of your Zero Trust organization.\n"
                    },
                    "sessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n"
                    },
                    "uiReadOnlyToggleReason": {
                        "type": "string",
                        "description": "A description of the reason why the UI read only field is being toggled.\n"
                    },
                    "userSeatExpirationInactiveTime": {
                        "type": "string",
                        "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n"
                    },
                    "warpAuthSessionDuration": {
                        "type": "string",
                        "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/accessOrganization:AccessOrganization"
                }
            ]
        },
        "cloudflare:index/zeroTrustRiskBehavior:ZeroTrustRiskBehavior": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustRiskBehavior = new cloudflare.ZeroTrustRiskBehavior(\"example_zero_trust_risk_behavior\", {\n    accountId: \"account_id\",\n    behaviors: {\n        foo: {\n            enabled: true,\n            riskLevel: \"low\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_risk_behavior = cloudflare.ZeroTrustRiskBehavior(\"example_zero_trust_risk_behavior\",\n    account_id=\"account_id\",\n    behaviors={\n        \"foo\": {\n            \"enabled\": True,\n            \"risk_level\": \"low\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustRiskBehavior = new Cloudflare.Index.ZeroTrustRiskBehavior(\"example_zero_trust_risk_behavior\", new()\n    {\n        AccountId = \"account_id\",\n        Behaviors = \n        {\n            { \"foo\", new Cloudflare.Inputs.ZeroTrustRiskBehaviorBehaviorsArgs\n            {\n                Enabled = true,\n                RiskLevel = \"low\",\n            } },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustRiskBehavior(ctx, \"example_zero_trust_risk_behavior\", \u0026cloudflare.ZeroTrustRiskBehaviorArgs{\n\t\t\tAccountId: pulumi.String(\"account_id\"),\n\t\t\tBehaviors: cloudflare.ZeroTrustRiskBehaviorBehaviorsMap{\n\t\t\t\t\"foo\": \u0026cloudflare.ZeroTrustRiskBehaviorBehaviorsArgs{\n\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t\tRiskLevel: pulumi.String(\"low\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustRiskBehavior;\nimport com.pulumi.cloudflare.ZeroTrustRiskBehaviorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustRiskBehavior = new ZeroTrustRiskBehavior(\"exampleZeroTrustRiskBehavior\", ZeroTrustRiskBehaviorArgs.builder()\n            .accountId(\"account_id\")\n            .behaviors(Map.of(\"foo\", ZeroTrustRiskBehaviorBehaviorsArgs.builder()\n                .enabled(true)\n                .riskLevel(\"low\")\n                .build()))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustRiskBehavior:\n    type: cloudflare:ZeroTrustRiskBehavior\n    name: example_zero_trust_risk_behavior\n    properties:\n      accountId: account_id\n      behaviors:\n        foo:\n          enabled: true\n          riskLevel: low\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "behaviors": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustRiskBehaviorBehaviors:ZeroTrustRiskBehaviorBehaviors"
                    }
                }
            },
            "required": [
                "behaviors"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "behaviors": {
                    "type": "object",
                    "additionalProperties": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustRiskBehaviorBehaviors:ZeroTrustRiskBehaviorBehaviors"
                    }
                }
            },
            "requiredInputs": [
                "behaviors"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustRiskBehavior resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "behaviors": {
                        "type": "object",
                        "additionalProperties": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustRiskBehaviorBehaviors:ZeroTrustRiskBehaviorBehaviors"
                        }
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/riskBehavior:RiskBehavior"
                }
            ]
        },
        "cloudflare:index/zeroTrustRiskScoringIntegration:ZeroTrustRiskScoringIntegration": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustRiskScoringIntegration = new cloudflare.ZeroTrustRiskScoringIntegration(\"example_zero_trust_risk_scoring_integration\", {\n    accountId: \"account_id\",\n    integrationType: \"Okta\",\n    tenantUrl: \"https://example.com\",\n    referenceId: \"reference_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_risk_scoring_integration = cloudflare.ZeroTrustRiskScoringIntegration(\"example_zero_trust_risk_scoring_integration\",\n    account_id=\"account_id\",\n    integration_type=\"Okta\",\n    tenant_url=\"https://example.com\",\n    reference_id=\"reference_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustRiskScoringIntegration = new Cloudflare.Index.ZeroTrustRiskScoringIntegration(\"example_zero_trust_risk_scoring_integration\", new()\n    {\n        AccountId = \"account_id\",\n        IntegrationType = \"Okta\",\n        TenantUrl = \"https://example.com\",\n        ReferenceId = \"reference_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustRiskScoringIntegration(ctx, \"example_zero_trust_risk_scoring_integration\", \u0026cloudflare.ZeroTrustRiskScoringIntegrationArgs{\n\t\t\tAccountId:       pulumi.String(\"account_id\"),\n\t\t\tIntegrationType: pulumi.String(\"Okta\"),\n\t\t\tTenantUrl:       pulumi.String(\"https://example.com\"),\n\t\t\tReferenceId:     pulumi.String(\"reference_id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustRiskScoringIntegration;\nimport com.pulumi.cloudflare.ZeroTrustRiskScoringIntegrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustRiskScoringIntegration = new ZeroTrustRiskScoringIntegration(\"exampleZeroTrustRiskScoringIntegration\", ZeroTrustRiskScoringIntegrationArgs.builder()\n            .accountId(\"account_id\")\n            .integrationType(\"Okta\")\n            .tenantUrl(\"https://example.com\")\n            .referenceId(\"reference_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustRiskScoringIntegration:\n    type: cloudflare:ZeroTrustRiskScoringIntegration\n    name: example_zero_trust_risk_scoring_integration\n    properties:\n      accountId: account_id\n      integrationType: Okta\n      tenantUrl: https://example.com\n      referenceId: reference_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustRiskScoringIntegration:ZeroTrustRiskScoringIntegration example '\u003caccount_id\u003e/\u003cintegration_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string"
                },
                "accountTag": {
                    "type": "string",
                    "description": "The Cloudflare account tag.\n"
                },
                "active": {
                    "type": "boolean",
                    "description": "Whether this integration is enabled. If disabled, no risk changes will be exported to the third-party.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "When the integration was created in RFC3339 format.\n"
                },
                "integrationType": {
                    "type": "string",
                    "description": "Available values: \"Okta\".\n"
                },
                "referenceId": {
                    "type": "string",
                    "description": "A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4).\nhttps://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider\n"
                },
                "tenantUrl": {
                    "type": "string",
                    "description": "The base url of the tenant, e.g. \"https://tenant.okta.com\".\n"
                },
                "wellKnownUrl": {
                    "type": "string",
                    "description": "The URL for the Shared Signals Framework configuration, e.g. \"/.well-known/sse-configuration/{integration*uuid}/\". https://openid.net/specs/openid-sse-framework-1*0.html#rfc.section.6.2.1.\n"
                }
            },
            "required": [
                "accountTag",
                "createdAt",
                "integrationType",
                "tenantUrl",
                "wellKnownUrl"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string"
                },
                "active": {
                    "type": "boolean",
                    "description": "Whether this integration is enabled. If disabled, no risk changes will be exported to the third-party.\n"
                },
                "integrationType": {
                    "type": "string",
                    "description": "Available values: \"Okta\".\n"
                },
                "referenceId": {
                    "type": "string",
                    "description": "A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4).\nhttps://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider\n"
                },
                "tenantUrl": {
                    "type": "string",
                    "description": "The base url of the tenant, e.g. \"https://tenant.okta.com\".\n"
                }
            },
            "requiredInputs": [
                "integrationType",
                "tenantUrl"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustRiskScoringIntegration resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "accountTag": {
                        "type": "string",
                        "description": "The Cloudflare account tag.\n"
                    },
                    "active": {
                        "type": "boolean",
                        "description": "Whether this integration is enabled. If disabled, no risk changes will be exported to the third-party.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "When the integration was created in RFC3339 format.\n"
                    },
                    "integrationType": {
                        "type": "string",
                        "description": "Available values: \"Okta\".\n"
                    },
                    "referenceId": {
                        "type": "string",
                        "description": "A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4).\nhttps://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider\n"
                    },
                    "tenantUrl": {
                        "type": "string",
                        "description": "The base url of the tenant, e.g. \"https://tenant.okta.com\".\n"
                    },
                    "wellKnownUrl": {
                        "type": "string",
                        "description": "The URL for the Shared Signals Framework configuration, e.g. \"/.well-known/sse-configuration/{integration*uuid}/\". https://openid.net/specs/openid-sse-framework-1*0.html#rfc.section.6.2.1.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zeroTrustTunnelCloudflared:ZeroTrustTunnelCloudflared": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflared = new cloudflare.ZeroTrustTunnelCloudflared(\"example_zero_trust_tunnel_cloudflared\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"blog\",\n    configSrc: \"cloudflare\",\n    tunnelSecret: \"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared = cloudflare.ZeroTrustTunnelCloudflared(\"example_zero_trust_tunnel_cloudflared\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"blog\",\n    config_src=\"cloudflare\",\n    tunnel_secret=\"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflared = new Cloudflare.Index.ZeroTrustTunnelCloudflared(\"example_zero_trust_tunnel_cloudflared\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"blog\",\n        ConfigSrc = \"cloudflare\",\n        TunnelSecret = \"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflared(ctx, \"example_zero_trust_tunnel_cloudflared\", \u0026cloudflare.ZeroTrustTunnelCloudflaredArgs{\n\t\t\tAccountId:    pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:         pulumi.String(\"blog\"),\n\t\t\tConfigSrc:    pulumi.String(\"cloudflare\"),\n\t\t\tTunnelSecret: pulumi.String(\"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflared;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflared = new ZeroTrustTunnelCloudflared(\"exampleZeroTrustTunnelCloudflared\", ZeroTrustTunnelCloudflaredArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"blog\")\n            .configSrc(\"cloudflare\")\n            .tunnelSecret(\"AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflared:\n    type: cloudflare:ZeroTrustTunnelCloudflared\n    name: example_zero_trust_tunnel_cloudflared\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: blog\n      configSrc: cloudflare\n      tunnelSecret: AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustTunnelCloudflared:ZeroTrustTunnelCloudflared example '\u003caccount_id\u003e/\u003ctunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "accountTag": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "configSrc": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "connections": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConnection:ZeroTrustTunnelCloudflaredConnection"
                    },
                    "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                    "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                },
                "connsActiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                },
                "connsInactiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Metadata associated with the tunnel.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "remoteConfig": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can be configured remotely from the Zero Trust dashboard. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tunnel must be configured locally on the origin machine.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" configSrc \" pulumi-lang-dotnet=\" ConfigSrc \" pulumi-lang-go=\" configSrc \" pulumi-lang-python=\" config_src \" pulumi-lang-yaml=\" configSrc \" pulumi-lang-java=\" configSrc \"\u003e configSrc \u003c/span\u003efield instead."
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "tunType": {
                    "type": "string",
                    "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                },
                "tunnelSecret": {
                    "type": "string",
                    "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                    "secret": true
                }
            },
            "required": [
                "accountTag",
                "configSrc",
                "connections",
                "connsActiveAt",
                "connsInactiveAt",
                "createdAt",
                "deletedAt",
                "metadata",
                "name",
                "remoteConfig",
                "status",
                "tunType"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "configSrc": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "tunnelSecret": {
                    "type": "string",
                    "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                    "secret": true
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustTunnelCloudflared resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "accountTag": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "configSrc": {
                        "type": "string",
                        "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                    },
                    "connections": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConnection:ZeroTrustTunnelCloudflaredConnection"
                        },
                        "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                        "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                    },
                    "connsActiveAt": {
                        "type": "string",
                        "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                    },
                    "connsInactiveAt": {
                        "type": "string",
                        "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "metadata": {
                        "type": "string",
                        "description": "Metadata associated with the tunnel.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for a tunnel.\n"
                    },
                    "remoteConfig": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can be configured remotely from the Zero Trust dashboard. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tunnel must be configured locally on the origin machine.\n",
                        "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" configSrc \" pulumi-lang-dotnet=\" ConfigSrc \" pulumi-lang-go=\" configSrc \" pulumi-lang-python=\" config_src \" pulumi-lang-yaml=\" configSrc \" pulumi-lang-java=\" configSrc \"\u003e configSrc \u003c/span\u003efield instead."
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                    },
                    "tunType": {
                        "type": "string",
                        "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                    },
                    "tunnelSecret": {
                        "type": "string",
                        "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                        "secret": true
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnel:Tunnel"
                }
            ]
        },
        "cloudflare:index/zeroTrustTunnelCloudflaredConfig:ZeroTrustTunnelCloudflaredConfig": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredConfig = new cloudflare.ZeroTrustTunnelCloudflaredConfig(\"example_zero_trust_tunnel_cloudflared_config\", {\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    config: {\n        ingresses: [{\n            hostname: \"tunnel.example.com\",\n            service: \"https://localhost:8001\",\n            originRequest: {\n                access: {\n                    audTag: [\"string\"],\n                    teamName: \"zero-trust-organization-name\",\n                    required: false,\n                },\n                caPool: \"caPool\",\n                connectTimeout: 10,\n                disableChunkedEncoding: true,\n                http2Origin: true,\n                httpHostHeader: \"httpHostHeader\",\n                keepAliveConnections: 100,\n                keepAliveTimeout: 90,\n                matchSnItoHost: false,\n                noHappyEyeballs: false,\n                noTlsVerify: false,\n                originServerName: \"originServerName\",\n                proxyType: \"proxyType\",\n                tcpKeepAlive: 30,\n                tlsTimeout: 10,\n            },\n            path: \"subpath\",\n        }],\n        originRequest: {\n            access: {\n                audTags: [\"string\"],\n                teamName: \"zero-trust-organization-name\",\n                required: false,\n            },\n            caPool: \"caPool\",\n            connectTimeout: 10,\n            disableChunkedEncoding: true,\n            http2Origin: true,\n            httpHostHeader: \"httpHostHeader\",\n            keepAliveConnections: 100,\n            keepAliveTimeout: 90,\n            matchSnItoHost: false,\n            noHappyEyeballs: false,\n            noTlsVerify: false,\n            originServerName: \"originServerName\",\n            proxyType: \"proxyType\",\n            tcpKeepAlive: 30,\n            tlsTimeout: 10,\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_config = cloudflare.ZeroTrustTunnelCloudflaredConfig(\"example_zero_trust_tunnel_cloudflared_config\",\n    account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    config={\n        \"ingresses\": [{\n            \"hostname\": \"tunnel.example.com\",\n            \"service\": \"https://localhost:8001\",\n            \"origin_request\": {\n                \"access\": {\n                    \"aud_tag\": [\"string\"],\n                    \"team_name\": \"zero-trust-organization-name\",\n                    \"required\": False,\n                },\n                \"ca_pool\": \"caPool\",\n                \"connect_timeout\": 10,\n                \"disable_chunked_encoding\": True,\n                \"http2_origin\": True,\n                \"http_host_header\": \"httpHostHeader\",\n                \"keep_alive_connections\": 100,\n                \"keep_alive_timeout\": 90,\n                \"match_sn_ito_host\": False,\n                \"no_happy_eyeballs\": False,\n                \"no_tls_verify\": False,\n                \"origin_server_name\": \"originServerName\",\n                \"proxy_type\": \"proxyType\",\n                \"tcp_keep_alive\": 30,\n                \"tls_timeout\": 10,\n            },\n            \"path\": \"subpath\",\n        }],\n        \"origin_request\": {\n            \"access\": {\n                \"aud_tags\": [\"string\"],\n                \"team_name\": \"zero-trust-organization-name\",\n                \"required\": False,\n            },\n            \"ca_pool\": \"caPool\",\n            \"connect_timeout\": 10,\n            \"disable_chunked_encoding\": True,\n            \"http2_origin\": True,\n            \"http_host_header\": \"httpHostHeader\",\n            \"keep_alive_connections\": 100,\n            \"keep_alive_timeout\": 90,\n            \"match_sn_ito_host\": False,\n            \"no_happy_eyeballs\": False,\n            \"no_tls_verify\": False,\n            \"origin_server_name\": \"originServerName\",\n            \"proxy_type\": \"proxyType\",\n            \"tcp_keep_alive\": 30,\n            \"tls_timeout\": 10,\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredConfig = new Cloudflare.Index.ZeroTrustTunnelCloudflaredConfig(\"example_zero_trust_tunnel_cloudflared_config\", new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        Config = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigArgs\n        {\n            Ingresses = new[]\n            {\n                new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigIngressArgs\n                {\n                    Hostname = \"tunnel.example.com\",\n                    Service = \"https://localhost:8001\",\n                    OriginRequest = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestArgs\n                    {\n                        Access = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccessArgs\n                        {\n                            AudTag = new[]\n                            {\n                                \"string\",\n                            },\n                            TeamName = \"zero-trust-organization-name\",\n                            Required = false,\n                        },\n                        CaPool = \"caPool\",\n                        ConnectTimeout = 10,\n                        DisableChunkedEncoding = true,\n                        Http2Origin = true,\n                        HttpHostHeader = \"httpHostHeader\",\n                        KeepAliveConnections = 100,\n                        KeepAliveTimeout = 90,\n                        MatchSnItoHost = false,\n                        NoHappyEyeballs = false,\n                        NoTlsVerify = false,\n                        OriginServerName = \"originServerName\",\n                        ProxyType = \"proxyType\",\n                        TcpKeepAlive = 30,\n                        TlsTimeout = 10,\n                    },\n                    Path = \"subpath\",\n                },\n            },\n            OriginRequest = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs\n            {\n                Access = new Cloudflare.Inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs\n                {\n                    AudTags = new[]\n                    {\n                        \"string\",\n                    },\n                    TeamName = \"zero-trust-organization-name\",\n                    Required = false,\n                },\n                CaPool = \"caPool\",\n                ConnectTimeout = 10,\n                DisableChunkedEncoding = true,\n                Http2Origin = true,\n                HttpHostHeader = \"httpHostHeader\",\n                KeepAliveConnections = 100,\n                KeepAliveTimeout = 90,\n                MatchSnItoHost = false,\n                NoHappyEyeballs = false,\n                NoTlsVerify = false,\n                OriginServerName = \"originServerName\",\n                ProxyType = \"proxyType\",\n                TcpKeepAlive = 30,\n                TlsTimeout = 10,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflaredConfig(ctx, \"example_zero_trust_tunnel_cloudflared_config\", \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigArgs{\n\t\t\tAccountId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTunnelId:  pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tConfig: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigArgs{\n\t\t\t\tIngresses: cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressArray{\n\t\t\t\t\t\u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressArgs{\n\t\t\t\t\t\tHostname: pulumi.String(\"tunnel.example.com\"),\n\t\t\t\t\t\tService:  pulumi.String(\"https://localhost:8001\"),\n\t\t\t\t\t\tOriginRequest: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestArgs{\n\t\t\t\t\t\t\tAccess: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccessArgs{\n\t\t\t\t\t\t\t\tAudTag: []string{\n\t\t\t\t\t\t\t\t\t\"string\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTeamName: pulumi.String(\"zero-trust-organization-name\"),\n\t\t\t\t\t\t\t\tRequired: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tCaPool:                 pulumi.String(\"caPool\"),\n\t\t\t\t\t\t\tConnectTimeout:         pulumi.Int(10),\n\t\t\t\t\t\t\tDisableChunkedEncoding: pulumi.Bool(true),\n\t\t\t\t\t\t\tHttp2Origin:            pulumi.Bool(true),\n\t\t\t\t\t\t\tHttpHostHeader:         pulumi.String(\"httpHostHeader\"),\n\t\t\t\t\t\t\tKeepAliveConnections:   pulumi.Int(100),\n\t\t\t\t\t\t\tKeepAliveTimeout:       pulumi.Int(90),\n\t\t\t\t\t\t\tMatchSnItoHost:         pulumi.Bool(false),\n\t\t\t\t\t\t\tNoHappyEyeballs:        pulumi.Bool(false),\n\t\t\t\t\t\t\tNoTlsVerify:            pulumi.Bool(false),\n\t\t\t\t\t\t\tOriginServerName:       pulumi.String(\"originServerName\"),\n\t\t\t\t\t\t\tProxyType:              pulumi.String(\"proxyType\"),\n\t\t\t\t\t\t\tTcpKeepAlive:           pulumi.Int(30),\n\t\t\t\t\t\t\tTlsTimeout:             pulumi.Int(10),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tPath: pulumi.String(\"subpath\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tOriginRequest: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs{\n\t\t\t\t\tAccess: \u0026cloudflare.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs{\n\t\t\t\t\t\tAudTags: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTeamName: pulumi.String(\"zero-trust-organization-name\"),\n\t\t\t\t\t\tRequired: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tCaPool:                 pulumi.String(\"caPool\"),\n\t\t\t\t\tConnectTimeout:         pulumi.Int(10),\n\t\t\t\t\tDisableChunkedEncoding: pulumi.Bool(true),\n\t\t\t\t\tHttp2Origin:            pulumi.Bool(true),\n\t\t\t\t\tHttpHostHeader:         pulumi.String(\"httpHostHeader\"),\n\t\t\t\t\tKeepAliveConnections:   pulumi.Int(100),\n\t\t\t\t\tKeepAliveTimeout:       pulumi.Int(90),\n\t\t\t\t\tMatchSnItoHost:         pulumi.Bool(false),\n\t\t\t\t\tNoHappyEyeballs:        pulumi.Bool(false),\n\t\t\t\t\tNoTlsVerify:            pulumi.Bool(false),\n\t\t\t\t\tOriginServerName:       pulumi.String(\"originServerName\"),\n\t\t\t\t\tProxyType:              pulumi.String(\"proxyType\"),\n\t\t\t\t\tTcpKeepAlive:           pulumi.Int(30),\n\t\t\t\t\tTlsTimeout:             pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredConfig;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustTunnelCloudflaredConfigConfigArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs;\nimport com.pulumi.cloudflare.inputs.ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflaredConfig = new ZeroTrustTunnelCloudflaredConfig(\"exampleZeroTrustTunnelCloudflaredConfig\", ZeroTrustTunnelCloudflaredConfigArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .config(ZeroTrustTunnelCloudflaredConfigConfigArgs.builder()\n                .ingresses(ZeroTrustTunnelCloudflaredConfigConfigIngressArgs.builder()\n                    .hostname(\"tunnel.example.com\")\n                    .service(\"https://localhost:8001\")\n                    .originRequest(ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestArgs.builder()\n                        .access(ZeroTrustTunnelCloudflaredConfigConfigIngressOriginRequestAccessArgs.builder()\n                            .audTag(List.of(\"string\"))\n                            .teamName(\"zero-trust-organization-name\")\n                            .required(false)\n                            .build())\n                        .caPool(\"caPool\")\n                        .connectTimeout(10)\n                        .disableChunkedEncoding(true)\n                        .http2Origin(true)\n                        .httpHostHeader(\"httpHostHeader\")\n                        .keepAliveConnections(100)\n                        .keepAliveTimeout(90)\n                        .matchSnItoHost(false)\n                        .noHappyEyeballs(false)\n                        .noTlsVerify(false)\n                        .originServerName(\"originServerName\")\n                        .proxyType(\"proxyType\")\n                        .tcpKeepAlive(30)\n                        .tlsTimeout(10)\n                        .build())\n                    .path(\"subpath\")\n                    .build())\n                .originRequest(ZeroTrustTunnelCloudflaredConfigConfigOriginRequestArgs.builder()\n                    .access(ZeroTrustTunnelCloudflaredConfigConfigOriginRequestAccessArgs.builder()\n                        .audTags(\"string\")\n                        .teamName(\"zero-trust-organization-name\")\n                        .required(false)\n                        .build())\n                    .caPool(\"caPool\")\n                    .connectTimeout(10)\n                    .disableChunkedEncoding(true)\n                    .http2Origin(true)\n                    .httpHostHeader(\"httpHostHeader\")\n                    .keepAliveConnections(100)\n                    .keepAliveTimeout(90)\n                    .matchSnItoHost(false)\n                    .noHappyEyeballs(false)\n                    .noTlsVerify(false)\n                    .originServerName(\"originServerName\")\n                    .proxyType(\"proxyType\")\n                    .tcpKeepAlive(30)\n                    .tlsTimeout(10)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflaredConfig:\n    type: cloudflare:ZeroTrustTunnelCloudflaredConfig\n    name: example_zero_trust_tunnel_cloudflared_config\n    properties:\n      accountId: 023e105f4ecef8ad9ca31a8372d0c353\n      tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n      config:\n        ingresses:\n          - hostname: tunnel.example.com\n            service: https://localhost:8001\n            originRequest:\n              access:\n                audTag:\n                  - string\n                teamName: zero-trust-organization-name\n                required: false\n              caPool: caPool\n              connectTimeout: 10\n              disableChunkedEncoding: true\n              http2Origin: true\n              httpHostHeader: httpHostHeader\n              keepAliveConnections: 100\n              keepAliveTimeout: 90\n              matchSnItoHost: false\n              noHappyEyeballs: false\n              noTlsVerify: false\n              originServerName: originServerName\n              proxyType: proxyType\n              tcpKeepAlive: 30\n              tlsTimeout: 10\n            path: subpath\n        originRequest:\n          access:\n            audTags:\n              - string\n            teamName: zero-trust-organization-name\n            required: false\n          caPool: caPool\n          connectTimeout: 10\n          disableChunkedEncoding: true\n          http2Origin: true\n          httpHostHeader: httpHostHeader\n          keepAliveConnections: 100\n          keepAliveTimeout: 90\n          matchSnItoHost: false\n          noHappyEyeballs: false\n          noTlsVerify: false\n          originServerName: originServerName\n          proxyType: proxyType\n          tcpKeepAlive: 30\n          tlsTimeout: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustTunnelCloudflaredConfig:ZeroTrustTunnelCloudflaredConfig example '\u003caccount_id\u003e/\u003ctunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfig:ZeroTrustTunnelCloudflaredConfigConfig",
                    "description": "The tunnel configuration and ingress rules.\n"
                },
                "createdAt": {
                    "type": "string"
                },
                "source": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The version of the Tunnel Configuration.\n"
                }
            },
            "required": [
                "config",
                "createdAt",
                "source",
                "tunnelId",
                "version"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "config": {
                    "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfig:ZeroTrustTunnelCloudflaredConfigConfig",
                    "description": "The tunnel configuration and ingress rules.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                }
            },
            "requiredInputs": [
                "tunnelId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustTunnelCloudflaredConfig resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustTunnelCloudflaredConfigConfig:ZeroTrustTunnelCloudflaredConfigConfig",
                        "description": "The tunnel configuration and ingress rules.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "source": {
                        "type": "string",
                        "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "version": {
                        "type": "integer",
                        "description": "The version of the Tunnel Configuration.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnelConfig:TunnelConfig"
                }
            ]
        },
        "cloudflare:index/zeroTrustTunnelCloudflaredRoute:ZeroTrustTunnelCloudflaredRoute": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredRoute = new cloudflare.ZeroTrustTunnelCloudflaredRoute(\"example_zero_trust_tunnel_cloudflared_route\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    network: \"172.16.0.0/16\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    comment: \"Example comment for this route.\",\n    virtualNetworkId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_route = cloudflare.ZeroTrustTunnelCloudflaredRoute(\"example_zero_trust_tunnel_cloudflared_route\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    network=\"172.16.0.0/16\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    comment=\"Example comment for this route.\",\n    virtual_network_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredRoute = new Cloudflare.Index.ZeroTrustTunnelCloudflaredRoute(\"example_zero_trust_tunnel_cloudflared_route\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Network = \"172.16.0.0/16\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        Comment = \"Example comment for this route.\",\n        VirtualNetworkId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflaredRoute(ctx, \"example_zero_trust_tunnel_cloudflared_route\", \u0026cloudflare.ZeroTrustTunnelCloudflaredRouteArgs{\n\t\t\tAccountId:        pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tNetwork:          pulumi.String(\"172.16.0.0/16\"),\n\t\t\tTunnelId:         pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tComment:          pulumi.String(\"Example comment for this route.\"),\n\t\t\tVirtualNetworkId: pulumi.String(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredRoute;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflaredRoute = new ZeroTrustTunnelCloudflaredRoute(\"exampleZeroTrustTunnelCloudflaredRoute\", ZeroTrustTunnelCloudflaredRouteArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .network(\"172.16.0.0/16\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .comment(\"Example comment for this route.\")\n            .virtualNetworkId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflaredRoute:\n    type: cloudflare:ZeroTrustTunnelCloudflaredRoute\n    name: example_zero_trust_tunnel_cloudflared_route\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      network: 172.16.0.0/16\n      tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n      comment: Example comment for this route.\n      virtualNetworkId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustTunnelCloudflaredRoute:ZeroTrustTunnelCloudflaredRoute example '\u003caccount_id\u003e/\u003croute_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the route.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                }
            },
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "network",
                "tunnelId",
                "virtualNetworkId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the route.\n"
                },
                "network": {
                    "type": "string",
                    "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                },
                "tunnelId": {
                    "type": "string",
                    "description": "UUID of the tunnel.\n"
                },
                "virtualNetworkId": {
                    "type": "string",
                    "description": "UUID of the virtual network.\n"
                }
            },
            "requiredInputs": [
                "network",
                "tunnelId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustTunnelCloudflaredRoute resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "Optional remark describing the route.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "network": {
                        "type": "string",
                        "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "virtualNetworkId": {
                        "type": "string",
                        "description": "UUID of the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnelRoute:TunnelRoute"
                }
            ]
        },
        "cloudflare:index/zeroTrustTunnelCloudflaredVirtualNetwork:ZeroTrustTunnelCloudflaredVirtualNetwork": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredVirtualNetwork = new cloudflare.ZeroTrustTunnelCloudflaredVirtualNetwork(\"example_zero_trust_tunnel_cloudflared_virtual_network\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"us-east-1-vpc\",\n    comment: \"Staging VPC for data science\",\n    isDefault: true,\n    isDefaultNetwork: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_virtual_network = cloudflare.ZeroTrustTunnelCloudflaredVirtualNetwork(\"example_zero_trust_tunnel_cloudflared_virtual_network\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"us-east-1-vpc\",\n    comment=\"Staging VPC for data science\",\n    is_default=True,\n    is_default_network=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredVirtualNetwork = new Cloudflare.Index.ZeroTrustTunnelCloudflaredVirtualNetwork(\"example_zero_trust_tunnel_cloudflared_virtual_network\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"us-east-1-vpc\",\n        Comment = \"Staging VPC for data science\",\n        IsDefault = true,\n        IsDefaultNetwork = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelCloudflaredVirtualNetwork(ctx, \"example_zero_trust_tunnel_cloudflared_virtual_network\", \u0026cloudflare.ZeroTrustTunnelCloudflaredVirtualNetworkArgs{\n\t\t\tAccountId:        pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:             pulumi.String(\"us-east-1-vpc\"),\n\t\t\tComment:          pulumi.String(\"Staging VPC for data science\"),\n\t\t\tIsDefault:        pulumi.Bool(true),\n\t\t\tIsDefaultNetwork: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredVirtualNetwork;\nimport com.pulumi.cloudflare.ZeroTrustTunnelCloudflaredVirtualNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelCloudflaredVirtualNetwork = new ZeroTrustTunnelCloudflaredVirtualNetwork(\"exampleZeroTrustTunnelCloudflaredVirtualNetwork\", ZeroTrustTunnelCloudflaredVirtualNetworkArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"us-east-1-vpc\")\n            .comment(\"Staging VPC for data science\")\n            .isDefault(true)\n            .isDefaultNetwork(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelCloudflaredVirtualNetwork:\n    type: cloudflare:ZeroTrustTunnelCloudflaredVirtualNetwork\n    name: example_zero_trust_tunnel_cloudflared_virtual_network\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: us-east-1-vpc\n      comment: Staging VPC for data science\n      isDefault: true\n      isDefaultNetwork: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustTunnelCloudflaredVirtualNetwork:ZeroTrustTunnelCloudflaredVirtualNetwork example '\u003caccount_id\u003e/\u003cvirtual_network_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the virtual network.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" isDefaultNetwork \" pulumi-lang-dotnet=\" IsDefaultNetwork \" pulumi-lang-go=\" isDefaultNetwork \" pulumi-lang-python=\" is_default_network \" pulumi-lang-yaml=\" isDefaultNetwork \" pulumi-lang-java=\" isDefaultNetwork \"\u003e isDefaultNetwork \u003c/span\u003eproperty instead."
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "required": [
                "comment",
                "createdAt",
                "deletedAt",
                "isDefaultNetwork",
                "name"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "comment": {
                    "type": "string",
                    "description": "Optional remark describing the virtual network.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                    "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" isDefaultNetwork \" pulumi-lang-dotnet=\" IsDefaultNetwork \" pulumi-lang-go=\" isDefaultNetwork \" pulumi-lang-python=\" is_default_network \" pulumi-lang-yaml=\" isDefaultNetwork \" pulumi-lang-java=\" isDefaultNetwork \"\u003e isDefaultNetwork \u003c/span\u003eproperty instead."
                },
                "isDefaultNetwork": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for the virtual network.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustTunnelCloudflaredVirtualNetwork resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "Optional remark describing the virtual network.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "isDefault": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                        "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" isDefaultNetwork \" pulumi-lang-dotnet=\" IsDefaultNetwork \" pulumi-lang-go=\" isDefaultNetwork \" pulumi-lang-python=\" is_default_network \" pulumi-lang-yaml=\" isDefaultNetwork \" pulumi-lang-java=\" isDefaultNetwork \"\u003e isDefaultNetwork \u003c/span\u003eproperty instead."
                    },
                    "isDefaultNetwork": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "aliases": [
                {
                    "type": "cloudflare:index/tunnelVirtualNetwork:TunnelVirtualNetwork"
                }
            ]
        },
        "cloudflare:index/zeroTrustTunnelWarpConnector:ZeroTrustTunnelWarpConnector": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: WARP Read`\n- `Cloudflare One Connector: WARP Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelWarpConnector = new cloudflare.ZeroTrustTunnelWarpConnector(\"example_zero_trust_tunnel_warp_connector\", {\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    name: \"blog\",\n    ha: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_warp_connector = cloudflare.ZeroTrustTunnelWarpConnector(\"example_zero_trust_tunnel_warp_connector\",\n    account_id=\"699d98642c564d2e855e9661899b7252\",\n    name=\"blog\",\n    ha=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelWarpConnector = new Cloudflare.Index.ZeroTrustTunnelWarpConnector(\"example_zero_trust_tunnel_warp_connector\", new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Name = \"blog\",\n        Ha = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZeroTrustTunnelWarpConnector(ctx, \"example_zero_trust_tunnel_warp_connector\", \u0026cloudflare.ZeroTrustTunnelWarpConnectorArgs{\n\t\t\tAccountId: pulumi.String(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tName:      pulumi.String(\"blog\"),\n\t\t\tHa:        pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZeroTrustTunnelWarpConnector;\nimport com.pulumi.cloudflare.ZeroTrustTunnelWarpConnectorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZeroTrustTunnelWarpConnector = new ZeroTrustTunnelWarpConnector(\"exampleZeroTrustTunnelWarpConnector\", ZeroTrustTunnelWarpConnectorArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .name(\"blog\")\n            .ha(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZeroTrustTunnelWarpConnector:\n    type: cloudflare:ZeroTrustTunnelWarpConnector\n    name: example_zero_trust_tunnel_warp_connector\n    properties:\n      accountId: 699d98642c564d2e855e9661899b7252\n      name: blog\n      ha: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zeroTrustTunnelWarpConnector:ZeroTrustTunnelWarpConnector example '\u003caccount_id\u003e/\u003ctunnel_id\u003e'\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "accountTag": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "connections": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZeroTrustTunnelWarpConnectorConnection:ZeroTrustTunnelWarpConnectorConnection"
                    },
                    "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                    "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                },
                "connsActiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                },
                "connsInactiveAt": {
                    "type": "string",
                    "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was created.\n"
                },
                "deletedAt": {
                    "type": "string",
                    "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                },
                "ha": {
                    "type": "boolean",
                    "description": "Indicates that the tunnel will be created to be highly available. If omitted, defaults to false.\n"
                },
                "metadata": {
                    "type": "string",
                    "description": "Metadata associated with the tunnel.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                },
                "tunType": {
                    "type": "string",
                    "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                },
                "tunnelSecret": {
                    "type": "string",
                    "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                    "secret": true
                }
            },
            "required": [
                "accountTag",
                "connections",
                "connsActiveAt",
                "connsInactiveAt",
                "createdAt",
                "deletedAt",
                "ha",
                "metadata",
                "name",
                "status",
                "tunType"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Cloudflare account ID\n"
                },
                "ha": {
                    "type": "boolean",
                    "description": "Indicates that the tunnel will be created to be highly available. If omitted, defaults to false.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A user-friendly name for a tunnel.\n"
                },
                "tunnelSecret": {
                    "type": "string",
                    "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                    "secret": true
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZeroTrustTunnelWarpConnector resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "accountTag": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "connections": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZeroTrustTunnelWarpConnectorConnection:ZeroTrustTunnelWarpConnectorConnection"
                        },
                        "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                        "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
                    },
                    "connsActiveAt": {
                        "type": "string",
                        "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n"
                    },
                    "connsInactiveAt": {
                        "type": "string",
                        "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was created.\n"
                    },
                    "deletedAt": {
                        "type": "string",
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n"
                    },
                    "ha": {
                        "type": "boolean",
                        "description": "Indicates that the tunnel will be created to be highly available. If omitted, defaults to false.\n"
                    },
                    "metadata": {
                        "type": "string",
                        "description": "Metadata associated with the tunnel.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for a tunnel.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                    },
                    "tunType": {
                        "type": "string",
                        "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n"
                    },
                    "tunnelSecret": {
                        "type": "string",
                        "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.\n",
                        "secret": true
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zone:Zone": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone DNS Edit`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n- `Zone Zone Edit`\n\n\u003e If you are attempting to sign up a subdomain of a zone you must first have Subdomain Support entitlement for your account.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZone = new cloudflare.Zone(\"example_zone\", {\n    account: {\n        id: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    },\n    name: \"example.com\",\n    type: \"full\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone = cloudflare.Zone(\"example_zone\",\n    account={\n        \"id\": \"023e105f4ecef8ad9ca31a8372d0c353\",\n    },\n    name=\"example.com\",\n    type=\"full\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZone = new Cloudflare.Index.Zone(\"example_zone\", new()\n    {\n        Account = new Cloudflare.Inputs.ZoneAccountArgs\n        {\n            Id = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        },\n        Name = \"example.com\",\n        Type = \"full\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZone(ctx, \"example_zone\", \u0026cloudflare.ZoneArgs{\n\t\t\tAccount: \u0026cloudflare.ZoneAccountArgs{\n\t\t\t\tId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"example.com\"),\n\t\t\tType: pulumi.String(\"full\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.Zone;\nimport com.pulumi.cloudflare.ZoneArgs;\nimport com.pulumi.cloudflare.inputs.ZoneAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZone = new Zone(\"exampleZone\", ZoneArgs.builder()\n            .account(ZoneAccountArgs.builder()\n                .id(\"023e105f4ecef8ad9ca31a8372d0c353\")\n                .build())\n            .name(\"example.com\")\n            .type(\"full\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZone:\n    type: cloudflare:Zone\n    name: example_zone\n    properties:\n      account:\n        id: 023e105f4ecef8ad9ca31a8372d0c353\n      name: example.com\n      type: full\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zone:Zone example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "account": {
                    "$ref": "#/types/cloudflare:index/ZoneAccount:ZoneAccount"
                },
                "activatedOn": {
                    "type": "string",
                    "description": "The last time proof of ownership was detected and the zone was made\nactive.\n"
                },
                "cnameSuffix": {
                    "type": "string",
                    "description": "Allows the customer to use a custom apex.\n*Tenants Only Configuration*.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "When the zone was created.\n"
                },
                "developmentMode": {
                    "type": "number",
                    "description": "The interval (in seconds) from when development mode expires\n(positive integer) or last expired (negative integer) for the\ndomain. If development mode has never been enabled, this value is 0.\n"
                },
                "meta": {
                    "$ref": "#/types/cloudflare:index/ZoneMeta:ZoneMeta",
                    "description": "Metadata about the zone.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When the zone was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The domain name. Per [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4) the overall zone name can be up to 253 characters, with each segment (\"label\") not exceeding 63 characters.\n"
                },
                "nameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The name servers Cloudflare assigns to a zone.\n"
                },
                "originalDnshost": {
                    "type": "string",
                    "description": "DNS host at the time of switching to Cloudflare.\n"
                },
                "originalNameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Original name servers before moving to Cloudflare.\n"
                },
                "originalRegistrar": {
                    "type": "string",
                    "description": "Registrar for the domain at the time of switching to Cloudflare.\n"
                },
                "owner": {
                    "$ref": "#/types/cloudflare:index/ZoneOwner:ZoneOwner",
                    "description": "The owner of the zone.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "Indicates whether the zone is only using Cloudflare DNS services. A\ntrue value means the zone will not receive security or performance\nbenefits.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Legacy permissions based on legacy user membership information.\n",
                    "deprecationMessage": "This has been replaced by Account memberships."
                },
                "plan": {
                    "$ref": "#/types/cloudflare:index/ZonePlan:ZonePlan",
                    "description": "A Zones subscription information.\n",
                    "deprecationMessage": "Please use the `/zones/{zone_id}/subscription` API\nto update a zone's plan. Changing this value will create/cancel\nassociated subscriptions. To view available plans for this zone,\nsee [Zone Plans](https://developers.cloudflare.com/api/resources/zones/subresources/plans/)."
                },
                "status": {
                    "type": "string",
                    "description": "The zone status on Cloudflare.\nAvailable values: \"initializing\", \"pending\", \"active\", \"moved\".\n"
                },
                "tenant": {
                    "$ref": "#/types/cloudflare:index/ZoneTenant:ZoneTenant",
                    "description": "The root organizational unit that this zone belongs to (such as a tenant or organization).\n"
                },
                "tenantUnit": {
                    "$ref": "#/types/cloudflare:index/ZoneTenantUnit:ZoneTenantUnit",
                    "description": "The immediate parent organizational unit that this zone belongs to (such as under a tenant or sub-organization).\n"
                },
                "type": {
                    "type": "string",
                    "description": "A full zone implies that DNS is hosted with Cloudflare. A partial zone is\ntypically a partner-hosted zone or a CNAME setup.\nAvailable values: \"full\", \"partial\", \"secondary\", \"internal\".\n"
                },
                "vanityNameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of domains used for custom name servers. This is only\navailable for Business and Enterprise plans.\n"
                },
                "verificationKey": {
                    "type": "string",
                    "description": "Verification key for partial zone setup.\n"
                }
            },
            "required": [
                "account",
                "activatedOn",
                "cnameSuffix",
                "createdOn",
                "developmentMode",
                "meta",
                "modifiedOn",
                "name",
                "nameServers",
                "originalDnshost",
                "originalNameServers",
                "originalRegistrar",
                "owner",
                "paused",
                "permissions",
                "plan",
                "status",
                "tenant",
                "tenantUnit",
                "type",
                "vanityNameServers",
                "verificationKey"
            ],
            "inputProperties": {
                "account": {
                    "$ref": "#/types/cloudflare:index/ZoneAccount:ZoneAccount"
                },
                "name": {
                    "type": "string",
                    "description": "The domain name. Per [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4) the overall zone name can be up to 253 characters, with each segment (\"label\") not exceeding 63 characters.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "Indicates whether the zone is only using Cloudflare DNS services. A\ntrue value means the zone will not receive security or performance\nbenefits.\n"
                },
                "type": {
                    "type": "string",
                    "description": "A full zone implies that DNS is hosted with Cloudflare. A partial zone is\ntypically a partner-hosted zone or a CNAME setup.\nAvailable values: \"full\", \"partial\", \"secondary\", \"internal\".\n"
                },
                "vanityNameServers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of domains used for custom name servers. This is only\navailable for Business and Enterprise plans.\n"
                }
            },
            "requiredInputs": [
                "account",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Zone resources.\n",
                "properties": {
                    "account": {
                        "$ref": "#/types/cloudflare:index/ZoneAccount:ZoneAccount"
                    },
                    "activatedOn": {
                        "type": "string",
                        "description": "The last time proof of ownership was detected and the zone was made\nactive.\n"
                    },
                    "cnameSuffix": {
                        "type": "string",
                        "description": "Allows the customer to use a custom apex.\n*Tenants Only Configuration*.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "When the zone was created.\n"
                    },
                    "developmentMode": {
                        "type": "number",
                        "description": "The interval (in seconds) from when development mode expires\n(positive integer) or last expired (negative integer) for the\ndomain. If development mode has never been enabled, this value is 0.\n"
                    },
                    "meta": {
                        "$ref": "#/types/cloudflare:index/ZoneMeta:ZoneMeta",
                        "description": "Metadata about the zone.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When the zone was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The domain name. Per [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4) the overall zone name can be up to 253 characters, with each segment (\"label\") not exceeding 63 characters.\n"
                    },
                    "nameServers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The name servers Cloudflare assigns to a zone.\n"
                    },
                    "originalDnshost": {
                        "type": "string",
                        "description": "DNS host at the time of switching to Cloudflare.\n"
                    },
                    "originalNameServers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Original name servers before moving to Cloudflare.\n"
                    },
                    "originalRegistrar": {
                        "type": "string",
                        "description": "Registrar for the domain at the time of switching to Cloudflare.\n"
                    },
                    "owner": {
                        "$ref": "#/types/cloudflare:index/ZoneOwner:ZoneOwner",
                        "description": "The owner of the zone.\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "Indicates whether the zone is only using Cloudflare DNS services. A\ntrue value means the zone will not receive security or performance\nbenefits.\n"
                    },
                    "permissions": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Legacy permissions based on legacy user membership information.\n",
                        "deprecationMessage": "This has been replaced by Account memberships."
                    },
                    "plan": {
                        "$ref": "#/types/cloudflare:index/ZonePlan:ZonePlan",
                        "description": "A Zones subscription information.\n",
                        "deprecationMessage": "Please use the `/zones/{zone_id}/subscription` API\nto update a zone's plan. Changing this value will create/cancel\nassociated subscriptions. To view available plans for this zone,\nsee [Zone Plans](https://developers.cloudflare.com/api/resources/zones/subresources/plans/)."
                    },
                    "status": {
                        "type": "string",
                        "description": "The zone status on Cloudflare.\nAvailable values: \"initializing\", \"pending\", \"active\", \"moved\".\n"
                    },
                    "tenant": {
                        "$ref": "#/types/cloudflare:index/ZoneTenant:ZoneTenant",
                        "description": "The root organizational unit that this zone belongs to (such as a tenant or organization).\n"
                    },
                    "tenantUnit": {
                        "$ref": "#/types/cloudflare:index/ZoneTenantUnit:ZoneTenantUnit",
                        "description": "The immediate parent organizational unit that this zone belongs to (such as under a tenant or sub-organization).\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "A full zone implies that DNS is hosted with Cloudflare. A partial zone is\ntypically a partner-hosted zone or a CNAME setup.\nAvailable values: \"full\", \"partial\", \"secondary\", \"internal\".\n"
                    },
                    "vanityNameServers": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "An array of domains used for custom name servers. This is only\navailable for Business and Enterprise plans.\n"
                    },
                    "verificationKey": {
                        "type": "string",
                        "description": "Verification key for partial zone setup.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneCacheReserve:ZoneCacheReserve": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneCacheReserve = new cloudflare.ZoneCacheReserve(\"example_zone_cache_reserve\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_cache_reserve = cloudflare.ZoneCacheReserve(\"example_zone_cache_reserve\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneCacheReserve = new Cloudflare.Index.ZoneCacheReserve(\"example_zone_cache_reserve\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = \"on\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneCacheReserve(ctx, \"example_zone_cache_reserve\", \u0026cloudflare.ZoneCacheReserveArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue:  pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneCacheReserve;\nimport com.pulumi.cloudflare.ZoneCacheReserveArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneCacheReserve = new ZoneCacheReserve(\"exampleZoneCacheReserve\", ZoneCacheReserveArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(\"on\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneCacheReserve:\n    type: cloudflare:ZoneCacheReserve\n    name: example_zone_cache_reserve\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneCacheReserve:ZoneCacheReserve example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Whether the setting is editable.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time this setting was modified.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the Cache Reserve zone setting.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "editable",
                "modifiedOn",
                "value",
                "zoneId"
            ],
            "inputProperties": {
                "value": {
                    "type": "string",
                    "description": "Value of the Cache Reserve zone setting.\nAvailable values: \"on\", \"off\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneCacheReserve resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Whether the setting is editable.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time this setting was modified.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "Value of the Cache Reserve zone setting.\nAvailable values: \"on\", \"off\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneCacheVariants:ZoneCacheVariants": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneCacheVariants = new cloudflare.ZoneCacheVariants(\"example_zone_cache_variants\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    value: {\n        avifs: [\n            \"image/webp\",\n            \"image/jpeg\",\n        ],\n        bmps: [\n            \"image/webp\",\n            \"image/jpeg\",\n        ],\n        gifs: [\n            \"image/webp\",\n            \"image/jpeg\",\n        ],\n        jp2s: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        jpegs: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        jpgs: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        jpg2s: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        pngs: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        tifs: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        tiffs: [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        webps: [\n            \"image/jpeg\",\n            \"image/avif\",\n        ],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_cache_variants = cloudflare.ZoneCacheVariants(\"example_zone_cache_variants\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    value={\n        \"avifs\": [\n            \"image/webp\",\n            \"image/jpeg\",\n        ],\n        \"bmps\": [\n            \"image/webp\",\n            \"image/jpeg\",\n        ],\n        \"gifs\": [\n            \"image/webp\",\n            \"image/jpeg\",\n        ],\n        \"jp2s\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"jpegs\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"jpgs\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"jpg2s\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"pngs\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"tifs\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"tiffs\": [\n            \"image/webp\",\n            \"image/avif\",\n        ],\n        \"webps\": [\n            \"image/jpeg\",\n            \"image/avif\",\n        ],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneCacheVariants = new Cloudflare.Index.ZoneCacheVariants(\"example_zone_cache_variants\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Value = new Cloudflare.Inputs.ZoneCacheVariantsValueArgs\n        {\n            Avifs = new[]\n            {\n                \"image/webp\",\n                \"image/jpeg\",\n            },\n            Bmps = new[]\n            {\n                \"image/webp\",\n                \"image/jpeg\",\n            },\n            Gifs = new[]\n            {\n                \"image/webp\",\n                \"image/jpeg\",\n            },\n            Jp2s = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Jpegs = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Jpgs = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Jpg2s = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Pngs = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Tifs = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Tiffs = new[]\n            {\n                \"image/webp\",\n                \"image/avif\",\n            },\n            Webps = new[]\n            {\n                \"image/jpeg\",\n                \"image/avif\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneCacheVariants(ctx, \"example_zone_cache_variants\", \u0026cloudflare.ZoneCacheVariantsArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValue: \u0026cloudflare.ZoneCacheVariantsValueArgs{\n\t\t\t\tAvifs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/jpeg\"),\n\t\t\t\t},\n\t\t\t\tBmps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/jpeg\"),\n\t\t\t\t},\n\t\t\t\tGifs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/jpeg\"),\n\t\t\t\t},\n\t\t\t\tJp2s: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tJpegs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tJpgs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tJpg2s: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tPngs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tTifs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tTiffs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/webp\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t\tWebps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"image/jpeg\"),\n\t\t\t\t\tpulumi.String(\"image/avif\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneCacheVariants;\nimport com.pulumi.cloudflare.ZoneCacheVariantsArgs;\nimport com.pulumi.cloudflare.inputs.ZoneCacheVariantsValueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneCacheVariants = new ZoneCacheVariants(\"exampleZoneCacheVariants\", ZoneCacheVariantsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .value(ZoneCacheVariantsValueArgs.builder()\n                .avifs(                \n                    \"image/webp\",\n                    \"image/jpeg\")\n                .bmps(                \n                    \"image/webp\",\n                    \"image/jpeg\")\n                .gifs(                \n                    \"image/webp\",\n                    \"image/jpeg\")\n                .jp2s(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .jpegs(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .jpgs(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .jpg2s(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .pngs(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .tifs(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .tiffs(                \n                    \"image/webp\",\n                    \"image/avif\")\n                .webps(                \n                    \"image/jpeg\",\n                    \"image/avif\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneCacheVariants:\n    type: cloudflare:ZoneCacheVariants\n    name: example_zone_cache_variants\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      value:\n        avifs:\n          - image/webp\n          - image/jpeg\n        bmps:\n          - image/webp\n          - image/jpeg\n        gifs:\n          - image/webp\n          - image/jpeg\n        jp2s:\n          - image/webp\n          - image/avif\n        jpegs:\n          - image/webp\n          - image/avif\n        jpgs:\n          - image/webp\n          - image/avif\n        jpg2s:\n          - image/webp\n          - image/avif\n        pngs:\n          - image/webp\n          - image/avif\n        tifs:\n          - image/webp\n          - image/avif\n        tiffs:\n          - image/webp\n          - image/avif\n        webps:\n          - image/jpeg\n          - image/avif\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneCacheVariants:ZoneCacheVariants example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Whether the setting is editable.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "Last time this setting was modified.\n"
                },
                "value": {
                    "$ref": "#/types/cloudflare:index/ZoneCacheVariantsValue:ZoneCacheVariantsValue",
                    "description": "Value of the zone setting.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "editable",
                "modifiedOn",
                "value",
                "zoneId"
            ],
            "inputProperties": {
                "value": {
                    "$ref": "#/types/cloudflare:index/ZoneCacheVariantsValue:ZoneCacheVariantsValue",
                    "description": "Value of the zone setting.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "value",
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneCacheVariants resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Whether the setting is editable.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "Last time this setting was modified.\n"
                    },
                    "value": {
                        "$ref": "#/types/cloudflare:index/ZoneCacheVariantsValue:ZoneCacheVariantsValue",
                        "description": "Value of the zone setting.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneDnsSettings:ZoneDnsSettings": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n- `Zone DNS Settings Read`\n- `Zone DNS Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneDnsSettings = new cloudflare.ZoneDnsSettings(\"example_zone_dns_settings\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    flattenAllCnames: false,\n    foundationDns: false,\n    internalDns: {\n        referenceZoneId: \"reference_zone_id\",\n    },\n    multiProvider: false,\n    nameservers: {\n        nsSet: 1,\n        type: \"cloudflare.standard\",\n    },\n    nsTtl: 86400,\n    secondaryOverrides: false,\n    soa: {\n        expire: 604800,\n        minTtl: 1800,\n        mname: \"kristina.ns.cloudflare.com\",\n        refresh: 10000,\n        retry: 2400,\n        rname: \"admin.example.com\",\n        ttl: 3600,\n    },\n    zoneMode: \"dns_only\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_dns_settings = cloudflare.ZoneDnsSettings(\"example_zone_dns_settings\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    flatten_all_cnames=False,\n    foundation_dns=False,\n    internal_dns={\n        \"reference_zone_id\": \"reference_zone_id\",\n    },\n    multi_provider=False,\n    nameservers={\n        \"ns_set\": 1,\n        \"type\": \"cloudflare.standard\",\n    },\n    ns_ttl=86400,\n    secondary_overrides=False,\n    soa={\n        \"expire\": 604800,\n        \"min_ttl\": 1800,\n        \"mname\": \"kristina.ns.cloudflare.com\",\n        \"refresh\": 10000,\n        \"retry\": 2400,\n        \"rname\": \"admin.example.com\",\n        \"ttl\": 3600,\n    },\n    zone_mode=\"dns_only\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneDnsSettings = new Cloudflare.Index.ZoneDnsSettings(\"example_zone_dns_settings\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        FlattenAllCnames = false,\n        FoundationDns = false,\n        InternalDns = new Cloudflare.Inputs.ZoneDnsSettingsInternalDnsArgs\n        {\n            ReferenceZoneId = \"reference_zone_id\",\n        },\n        MultiProvider = false,\n        Nameservers = new Cloudflare.Inputs.ZoneDnsSettingsNameserversArgs\n        {\n            NsSet = 1,\n            Type = \"cloudflare.standard\",\n        },\n        NsTtl = 86400,\n        SecondaryOverrides = false,\n        Soa = new Cloudflare.Inputs.ZoneDnsSettingsSoaArgs\n        {\n            Expire = 604800,\n            MinTtl = 1800,\n            Mname = \"kristina.ns.cloudflare.com\",\n            Refresh = 10000,\n            Retry = 2400,\n            Rname = \"admin.example.com\",\n            Ttl = 3600,\n        },\n        ZoneMode = \"dns_only\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneDnsSettings(ctx, \"example_zone_dns_settings\", \u0026cloudflare.ZoneDnsSettingsArgs{\n\t\t\tZoneId:           pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFlattenAllCnames: pulumi.Bool(false),\n\t\t\tFoundationDns:    pulumi.Bool(false),\n\t\t\tInternalDns: \u0026cloudflare.ZoneDnsSettingsInternalDnsArgs{\n\t\t\t\tReferenceZoneId: pulumi.String(\"reference_zone_id\"),\n\t\t\t},\n\t\t\tMultiProvider: pulumi.Bool(false),\n\t\t\tNameservers: \u0026cloudflare.ZoneDnsSettingsNameserversArgs{\n\t\t\t\tNsSet: pulumi.Int(1),\n\t\t\t\tType:  pulumi.String(\"cloudflare.standard\"),\n\t\t\t},\n\t\t\tNsTtl:              pulumi.Float64(86400),\n\t\t\tSecondaryOverrides: pulumi.Bool(false),\n\t\t\tSoa: \u0026cloudflare.ZoneDnsSettingsSoaArgs{\n\t\t\t\tExpire:  pulumi.Float64(604800),\n\t\t\t\tMinTtl:  pulumi.Float64(1800),\n\t\t\t\tMname:   pulumi.String(\"kristina.ns.cloudflare.com\"),\n\t\t\t\tRefresh: pulumi.Float64(10000),\n\t\t\t\tRetry:   pulumi.Float64(2400),\n\t\t\t\tRname:   pulumi.String(\"admin.example.com\"),\n\t\t\t\tTtl:     pulumi.Float64(3600),\n\t\t\t},\n\t\t\tZoneMode: pulumi.String(\"dns_only\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneDnsSettings;\nimport com.pulumi.cloudflare.ZoneDnsSettingsArgs;\nimport com.pulumi.cloudflare.inputs.ZoneDnsSettingsInternalDnsArgs;\nimport com.pulumi.cloudflare.inputs.ZoneDnsSettingsNameserversArgs;\nimport com.pulumi.cloudflare.inputs.ZoneDnsSettingsSoaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneDnsSettings = new ZoneDnsSettings(\"exampleZoneDnsSettings\", ZoneDnsSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .flattenAllCnames(false)\n            .foundationDns(false)\n            .internalDns(ZoneDnsSettingsInternalDnsArgs.builder()\n                .referenceZoneId(\"reference_zone_id\")\n                .build())\n            .multiProvider(false)\n            .nameservers(ZoneDnsSettingsNameserversArgs.builder()\n                .nsSet(1)\n                .type(\"cloudflare.standard\")\n                .build())\n            .nsTtl(86400.0)\n            .secondaryOverrides(false)\n            .soa(ZoneDnsSettingsSoaArgs.builder()\n                .expire(604800.0)\n                .minTtl(1800.0)\n                .mname(\"kristina.ns.cloudflare.com\")\n                .refresh(10000.0)\n                .retry(2400.0)\n                .rname(\"admin.example.com\")\n                .ttl(3600.0)\n                .build())\n            .zoneMode(\"dns_only\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneDnsSettings:\n    type: cloudflare:ZoneDnsSettings\n    name: example_zone_dns_settings\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      flattenAllCnames: false\n      foundationDns: false\n      internalDns:\n        referenceZoneId: reference_zone_id\n      multiProvider: false\n      nameservers:\n        nsSet: 1\n        type: cloudflare.standard\n      nsTtl: 86400\n      secondaryOverrides: false\n      soa:\n        expire: 604800\n        minTtl: 1800\n        mname: kristina.ns.cloudflare.com\n        refresh: 10000\n        retry: 2400\n        rname: admin.example.com\n        ttl: 3600\n      zoneMode: dns_only\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n\u003e This resource does not currently support `pulumi import`.\n\n",
            "properties": {
                "flattenAllCnames": {
                    "type": "boolean",
                    "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.\n"
                },
                "internalDns": {
                    "$ref": "#/types/cloudflare:index/ZoneDnsSettingsInternalDns:ZoneDnsSettingsInternalDns",
                    "description": "Settings for this internal zone.\n"
                },
                "multiProvider": {
                    "type": "boolean",
                    "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.\n"
                },
                "nameservers": {
                    "$ref": "#/types/cloudflare:index/ZoneDnsSettingsNameservers:ZoneDnsSettingsNameservers",
                    "description": "Settings determining the nameservers through which the zone should be available.\n"
                },
                "nsTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the zone's nameserver (NS) records.\n"
                },
                "secondaryOverrides": {
                    "type": "boolean",
                    "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.\n"
                },
                "soa": {
                    "$ref": "#/types/cloudflare:index/ZoneDnsSettingsSoa:ZoneDnsSettingsSoa",
                    "description": "Components of the zone's SOA record.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "zoneMode": {
                    "type": "string",
                    "description": "Whether the zone mode is a regular or CDN/DNS only zone.\nAvailable values: \"standard\", \"cdn*only\", \"dns*only\".\n"
                }
            },
            "inputProperties": {
                "flattenAllCnames": {
                    "type": "boolean",
                    "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.\n"
                },
                "foundationDns": {
                    "type": "boolean",
                    "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.\n"
                },
                "internalDns": {
                    "$ref": "#/types/cloudflare:index/ZoneDnsSettingsInternalDns:ZoneDnsSettingsInternalDns",
                    "description": "Settings for this internal zone.\n"
                },
                "multiProvider": {
                    "type": "boolean",
                    "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.\n"
                },
                "nameservers": {
                    "$ref": "#/types/cloudflare:index/ZoneDnsSettingsNameservers:ZoneDnsSettingsNameservers",
                    "description": "Settings determining the nameservers through which the zone should be available.\n"
                },
                "nsTtl": {
                    "type": "number",
                    "description": "The time to live (TTL) of the zone's nameserver (NS) records.\n"
                },
                "secondaryOverrides": {
                    "type": "boolean",
                    "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.\n"
                },
                "soa": {
                    "$ref": "#/types/cloudflare:index/ZoneDnsSettingsSoa:ZoneDnsSettingsSoa",
                    "description": "Components of the zone's SOA record.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                },
                "zoneMode": {
                    "type": "string",
                    "description": "Whether the zone mode is a regular or CDN/DNS only zone.\nAvailable values: \"standard\", \"cdn*only\", \"dns*only\".\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneDnsSettings resources.\n",
                "properties": {
                    "flattenAllCnames": {
                        "type": "boolean",
                        "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.\n"
                    },
                    "foundationDns": {
                        "type": "boolean",
                        "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.\n"
                    },
                    "internalDns": {
                        "$ref": "#/types/cloudflare:index/ZoneDnsSettingsInternalDns:ZoneDnsSettingsInternalDns",
                        "description": "Settings for this internal zone.\n"
                    },
                    "multiProvider": {
                        "type": "boolean",
                        "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.\n"
                    },
                    "nameservers": {
                        "$ref": "#/types/cloudflare:index/ZoneDnsSettingsNameservers:ZoneDnsSettingsNameservers",
                        "description": "Settings determining the nameservers through which the zone should be available.\n"
                    },
                    "nsTtl": {
                        "type": "number",
                        "description": "The time to live (TTL) of the zone's nameserver (NS) records.\n"
                    },
                    "secondaryOverrides": {
                        "type": "boolean",
                        "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.\n"
                    },
                    "soa": {
                        "$ref": "#/types/cloudflare:index/ZoneDnsSettingsSoa:ZoneDnsSettingsSoa",
                        "description": "Components of the zone's SOA record.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "zoneMode": {
                        "type": "string",
                        "description": "Whether the zone mode is a regular or CDN/DNS only zone.\nAvailable values: \"standard\", \"cdn*only\", \"dns*only\".\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneDnssec:ZoneDnssec": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneDnssec = new cloudflare.ZoneDnssec(\"example_zone_dnssec\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    dnssecMultiSigner: false,\n    dnssecPresigned: true,\n    dnssecUseNsec3: false,\n    status: \"active\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_dnssec = cloudflare.ZoneDnssec(\"example_zone_dnssec\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    dnssec_multi_signer=False,\n    dnssec_presigned=True,\n    dnssec_use_nsec3=False,\n    status=\"active\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneDnssec = new Cloudflare.Index.ZoneDnssec(\"example_zone_dnssec\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DnssecMultiSigner = false,\n        DnssecPresigned = true,\n        DnssecUseNsec3 = false,\n        Status = \"active\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneDnssec(ctx, \"example_zone_dnssec\", \u0026cloudflare.ZoneDnssecArgs{\n\t\t\tZoneId:            pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDnssecMultiSigner: pulumi.Bool(false),\n\t\t\tDnssecPresigned:   pulumi.Bool(true),\n\t\t\tDnssecUseNsec3:    pulumi.Bool(false),\n\t\t\tStatus:            pulumi.String(\"active\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneDnssec;\nimport com.pulumi.cloudflare.ZoneDnssecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneDnssec = new ZoneDnssec(\"exampleZoneDnssec\", ZoneDnssecArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .dnssecMultiSigner(false)\n            .dnssecPresigned(true)\n            .dnssecUseNsec3(false)\n            .status(\"active\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneDnssec:\n    type: cloudflare:ZoneDnssec\n    name: example_zone_dnssec\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      dnssecMultiSigner: false\n      dnssecPresigned: true\n      dnssecUseNsec3: false\n      status: active\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneDnssec:ZoneDnssec example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Algorithm key code."
                },
                "digest": {
                    "type": "string",
                    "description": "Digest hash."
                },
                "digestAlgorithm": {
                    "type": "string",
                    "description": "Type of digest algorithm."
                },
                "digestType": {
                    "type": "string",
                    "description": "Coded type for digest algorithm."
                },
                "dnssecMultiSigner": {
                    "type": "boolean",
                    "description": "If true, multi-signer DNSSEC is enabled on the zone, allowing multiple\nproviders to serve a DNSSEC-signed zone at the same time.\nThis is required for DNSKEY records (except those automatically\ngenerated by Cloudflare) to be added to the zone.\n"
                },
                "dnssecPresigned": {
                    "type": "boolean",
                    "description": "If true, allows Cloudflare to transfer in a DNSSEC-signed zone\nincluding signatures from an external provider, without requiring\nCloudflare to sign any records on the fly.\n\nNote that this feature has some limitations.\nSee [Cloudflare as Secondary](https://developers.cloudflare.com/dns/zone-setups/zone-transfers/cloudflare-as-secondary/setup/#dnssec) for details."
                },
                "dnssecUseNsec3": {
                    "type": "boolean",
                    "description": "If true, enables the use of NSEC3 together with DNSSEC on the zone.\nCombined with setting\u003cspan pulumi-lang-nodejs=\" dnssecPresigned \" pulumi-lang-dotnet=\" DnssecPresigned \" pulumi-lang-go=\" dnssecPresigned \" pulumi-lang-python=\" dnssec_presigned \" pulumi-lang-yaml=\" dnssecPresigned \" pulumi-lang-java=\" dnssecPresigned \"\u003e dnssecPresigned \u003c/span\u003eto true, this enables the use of\nNSEC3 records when transferring in from an external provider.\nIf\u003cspan pulumi-lang-nodejs=\" dnssecPresigned \" pulumi-lang-dotnet=\" DnssecPresigned \" pulumi-lang-go=\" dnssecPresigned \" pulumi-lang-python=\" dnssec_presigned \" pulumi-lang-yaml=\" dnssecPresigned \" pulumi-lang-java=\" dnssecPresigned \"\u003e dnssecPresigned \u003c/span\u003eis instead set to false (default), NSEC3 records will be\ngenerated and signed at request time.\n\nSee [DNSSEC with NSEC3](https://developers.cloudflare.com/dns/dnssec/enable-nsec3/) for details."
                },
                "ds": {
                    "type": "string",
                    "description": "Full DS record."
                },
                "flags": {
                    "type": "number",
                    "description": "Flag for DNSSEC record."
                },
                "keyTag": {
                    "type": "number",
                    "description": "Code for key tag."
                },
                "keyType": {
                    "type": "string",
                    "description": "Algorithm key type."
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "When DNSSEC was last modified."
                },
                "publicKey": {
                    "type": "string",
                    "description": "Public key for DS record."
                },
                "status": {
                    "type": "string",
                    "description": "Status of DNSSEC, based on user-desired state and presence of necessary records.\nAvailable values: \"active\", \"disabled\"."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "algorithm",
                "digest",
                "digestAlgorithm",
                "digestType",
                "ds",
                "flags",
                "keyTag",
                "keyType",
                "modifiedOn",
                "publicKey",
                "zoneId"
            ],
            "inputProperties": {
                "dnssecMultiSigner": {
                    "type": "boolean",
                    "description": "If true, multi-signer DNSSEC is enabled on the zone, allowing multiple\nproviders to serve a DNSSEC-signed zone at the same time.\nThis is required for DNSKEY records (except those automatically\ngenerated by Cloudflare) to be added to the zone.\n"
                },
                "dnssecPresigned": {
                    "type": "boolean",
                    "description": "If true, allows Cloudflare to transfer in a DNSSEC-signed zone\nincluding signatures from an external provider, without requiring\nCloudflare to sign any records on the fly.\n\nNote that this feature has some limitations.\nSee [Cloudflare as Secondary](https://developers.cloudflare.com/dns/zone-setups/zone-transfers/cloudflare-as-secondary/setup/#dnssec) for details."
                },
                "dnssecUseNsec3": {
                    "type": "boolean",
                    "description": "If true, enables the use of NSEC3 together with DNSSEC on the zone.\nCombined with setting\u003cspan pulumi-lang-nodejs=\" dnssecPresigned \" pulumi-lang-dotnet=\" DnssecPresigned \" pulumi-lang-go=\" dnssecPresigned \" pulumi-lang-python=\" dnssec_presigned \" pulumi-lang-yaml=\" dnssecPresigned \" pulumi-lang-java=\" dnssecPresigned \"\u003e dnssecPresigned \u003c/span\u003eto true, this enables the use of\nNSEC3 records when transferring in from an external provider.\nIf\u003cspan pulumi-lang-nodejs=\" dnssecPresigned \" pulumi-lang-dotnet=\" DnssecPresigned \" pulumi-lang-go=\" dnssecPresigned \" pulumi-lang-python=\" dnssec_presigned \" pulumi-lang-yaml=\" dnssecPresigned \" pulumi-lang-java=\" dnssecPresigned \"\u003e dnssecPresigned \u003c/span\u003eis instead set to false (default), NSEC3 records will be\ngenerated and signed at request time.\n\nSee [DNSSEC with NSEC3](https://developers.cloudflare.com/dns/dnssec/enable-nsec3/) for details."
                },
                "status": {
                    "type": "string",
                    "description": "Status of DNSSEC, based on user-desired state and presence of necessary records.\nAvailable values: \"active\", \"disabled\"."
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneDnssec resources.\n",
                "properties": {
                    "algorithm": {
                        "type": "string",
                        "description": "Algorithm key code."
                    },
                    "digest": {
                        "type": "string",
                        "description": "Digest hash."
                    },
                    "digestAlgorithm": {
                        "type": "string",
                        "description": "Type of digest algorithm."
                    },
                    "digestType": {
                        "type": "string",
                        "description": "Coded type for digest algorithm."
                    },
                    "dnssecMultiSigner": {
                        "type": "boolean",
                        "description": "If true, multi-signer DNSSEC is enabled on the zone, allowing multiple\nproviders to serve a DNSSEC-signed zone at the same time.\nThis is required for DNSKEY records (except those automatically\ngenerated by Cloudflare) to be added to the zone.\n"
                    },
                    "dnssecPresigned": {
                        "type": "boolean",
                        "description": "If true, allows Cloudflare to transfer in a DNSSEC-signed zone\nincluding signatures from an external provider, without requiring\nCloudflare to sign any records on the fly.\n\nNote that this feature has some limitations.\nSee [Cloudflare as Secondary](https://developers.cloudflare.com/dns/zone-setups/zone-transfers/cloudflare-as-secondary/setup/#dnssec) for details."
                    },
                    "dnssecUseNsec3": {
                        "type": "boolean",
                        "description": "If true, enables the use of NSEC3 together with DNSSEC on the zone.\nCombined with setting\u003cspan pulumi-lang-nodejs=\" dnssecPresigned \" pulumi-lang-dotnet=\" DnssecPresigned \" pulumi-lang-go=\" dnssecPresigned \" pulumi-lang-python=\" dnssec_presigned \" pulumi-lang-yaml=\" dnssecPresigned \" pulumi-lang-java=\" dnssecPresigned \"\u003e dnssecPresigned \u003c/span\u003eto true, this enables the use of\nNSEC3 records when transferring in from an external provider.\nIf\u003cspan pulumi-lang-nodejs=\" dnssecPresigned \" pulumi-lang-dotnet=\" DnssecPresigned \" pulumi-lang-go=\" dnssecPresigned \" pulumi-lang-python=\" dnssec_presigned \" pulumi-lang-yaml=\" dnssecPresigned \" pulumi-lang-java=\" dnssecPresigned \"\u003e dnssecPresigned \u003c/span\u003eis instead set to false (default), NSEC3 records will be\ngenerated and signed at request time.\n\nSee [DNSSEC with NSEC3](https://developers.cloudflare.com/dns/dnssec/enable-nsec3/) for details."
                    },
                    "ds": {
                        "type": "string",
                        "description": "Full DS record."
                    },
                    "flags": {
                        "type": "number",
                        "description": "Flag for DNSSEC record."
                    },
                    "keyTag": {
                        "type": "number",
                        "description": "Code for key tag."
                    },
                    "keyType": {
                        "type": "string",
                        "description": "Algorithm key type."
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "When DNSSEC was last modified."
                    },
                    "publicKey": {
                        "type": "string",
                        "description": "Public key for DS record."
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of DNSSEC, based on user-desired state and presence of necessary records.\nAvailable values: \"active\", \"disabled\"."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneHold:ZoneHold": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneHold = new cloudflare.ZoneHold(\"example_zone_hold\", {zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\"});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_hold = cloudflare.ZoneHold(\"example_zone_hold\", zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneHold = new Cloudflare.Index.ZoneHold(\"example_zone_hold\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneHold(ctx, \"example_zone_hold\", \u0026cloudflare.ZoneHoldArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneHold;\nimport com.pulumi.cloudflare.ZoneHoldArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneHold = new ZoneHold(\"exampleZoneHold\", ZoneHoldArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneHold:\n    type: cloudflare:ZoneHold\n    name: example_zone_hold\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneHold:ZoneHold example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "hold": {
                    "type": "boolean"
                },
                "holdAfter": {
                    "type": "string",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`holdAfter`\" pulumi-lang-dotnet=\"`HoldAfter`\" pulumi-lang-go=\"`holdAfter`\" pulumi-lang-python=\"`hold_after`\" pulumi-lang-yaml=\"`holdAfter`\" pulumi-lang-java=\"`holdAfter`\"\u003e`holdAfter`\u003c/span\u003e is provided and future-dated, the hold will be temporarily disabled,\nthen automatically re-enabled by the system at the time specified\nin this RFC3339-formatted timestamp. A past-dated \u003cspan pulumi-lang-nodejs=\"`holdAfter`\" pulumi-lang-dotnet=\"`HoldAfter`\" pulumi-lang-go=\"`holdAfter`\" pulumi-lang-python=\"`hold_after`\" pulumi-lang-yaml=\"`holdAfter`\" pulumi-lang-java=\"`holdAfter`\"\u003e`holdAfter`\u003c/span\u003e value will have\nno effect on an existing, enabled hold. Providing an empty string will set its value\nto the current time.\n"
                },
                "includeSubdomains": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the zone hold will extend to block any subdomain of the given zone, as well\nas SSL4SaaS Custom Hostnames. For example, a zone hold on a zone with the hostname\n'example.com' and include_subdomains=true will block 'example.com',\n'staging.example.com', 'api.staging.example.com', etc.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "required": [
                "hold",
                "holdAfter",
                "includeSubdomains",
                "zoneId"
            ],
            "inputProperties": {
                "holdAfter": {
                    "type": "string",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`holdAfter`\" pulumi-lang-dotnet=\"`HoldAfter`\" pulumi-lang-go=\"`holdAfter`\" pulumi-lang-python=\"`hold_after`\" pulumi-lang-yaml=\"`holdAfter`\" pulumi-lang-java=\"`holdAfter`\"\u003e`holdAfter`\u003c/span\u003e is provided and future-dated, the hold will be temporarily disabled,\nthen automatically re-enabled by the system at the time specified\nin this RFC3339-formatted timestamp. A past-dated \u003cspan pulumi-lang-nodejs=\"`holdAfter`\" pulumi-lang-dotnet=\"`HoldAfter`\" pulumi-lang-go=\"`holdAfter`\" pulumi-lang-python=\"`hold_after`\" pulumi-lang-yaml=\"`holdAfter`\" pulumi-lang-java=\"`holdAfter`\"\u003e`holdAfter`\u003c/span\u003e value will have\nno effect on an existing, enabled hold. Providing an empty string will set its value\nto the current time.\n"
                },
                "includeSubdomains": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the zone hold will extend to block any subdomain of the given zone, as well\nas SSL4SaaS Custom Hostnames. For example, a zone hold on a zone with the hostname\n'example.com' and include_subdomains=true will block 'example.com',\n'staging.example.com', 'api.staging.example.com', etc.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier.\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneHold resources.\n",
                "properties": {
                    "hold": {
                        "type": "boolean"
                    },
                    "holdAfter": {
                        "type": "string",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`holdAfter`\" pulumi-lang-dotnet=\"`HoldAfter`\" pulumi-lang-go=\"`holdAfter`\" pulumi-lang-python=\"`hold_after`\" pulumi-lang-yaml=\"`holdAfter`\" pulumi-lang-java=\"`holdAfter`\"\u003e`holdAfter`\u003c/span\u003e is provided and future-dated, the hold will be temporarily disabled,\nthen automatically re-enabled by the system at the time specified\nin this RFC3339-formatted timestamp. A past-dated \u003cspan pulumi-lang-nodejs=\"`holdAfter`\" pulumi-lang-dotnet=\"`HoldAfter`\" pulumi-lang-go=\"`holdAfter`\" pulumi-lang-python=\"`hold_after`\" pulumi-lang-yaml=\"`holdAfter`\" pulumi-lang-java=\"`holdAfter`\"\u003e`holdAfter`\u003c/span\u003e value will have\nno effect on an existing, enabled hold. Providing an empty string will set its value\nto the current time.\n"
                    },
                    "includeSubdomains": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the zone hold will extend to block any subdomain of the given zone, as well\nas SSL4SaaS Custom Hostnames. For example, a zone hold on a zone with the hostname\n'example.com' and include_subdomains=true will block 'example.com',\n'staging.example.com', 'api.staging.example.com', etc.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneLockdown:ZoneLockdown": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneLockdown = new cloudflare.ZoneLockdown(\"example_zone_lockdown\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    configurations: [{\n        target: \"ip\",\n        value: \"198.51.100.4\",\n    }],\n    urls: [\"shop.example.com/*\"],\n    description: \"Prevent multiple login failures to mitigate brute force attacks\",\n    paused: false,\n    priority: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_lockdown = cloudflare.ZoneLockdown(\"example_zone_lockdown\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    configurations=[{\n        \"target\": \"ip\",\n        \"value\": \"198.51.100.4\",\n    }],\n    urls=[\"shop.example.com/*\"],\n    description=\"Prevent multiple login failures to mitigate brute force attacks\",\n    paused=False,\n    priority=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneLockdown = new Cloudflare.Index.ZoneLockdown(\"example_zone_lockdown\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Configurations = new[]\n        {\n            new Cloudflare.Inputs.ZoneLockdownConfigurationArgs\n            {\n                Target = \"ip\",\n                Value = \"198.51.100.4\",\n            },\n        },\n        Urls = new[]\n        {\n            \"shop.example.com/*\",\n        },\n        Description = \"Prevent multiple login failures to mitigate brute force attacks\",\n        Paused = false,\n        Priority = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneLockdown(ctx, \"example_zone_lockdown\", \u0026cloudflare.ZoneLockdownArgs{\n\t\t\tZoneId: pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConfigurations: cloudflare.ZoneLockdownConfigurationArray{\n\t\t\t\t\u0026cloudflare.ZoneLockdownConfigurationArgs{\n\t\t\t\t\tTarget: pulumi.String(\"ip\"),\n\t\t\t\t\tValue:  pulumi.String(\"198.51.100.4\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tUrls: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"shop.example.com/*\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Prevent multiple login failures to mitigate brute force attacks\"),\n\t\t\tPaused:      pulumi.Bool(false),\n\t\t\tPriority:    pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneLockdown;\nimport com.pulumi.cloudflare.ZoneLockdownArgs;\nimport com.pulumi.cloudflare.inputs.ZoneLockdownConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneLockdown = new ZoneLockdown(\"exampleZoneLockdown\", ZoneLockdownArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .configurations(ZoneLockdownConfigurationArgs.builder()\n                .target(\"ip\")\n                .value(\"198.51.100.4\")\n                .build())\n            .urls(\"shop.example.com/*\")\n            .description(\"Prevent multiple login failures to mitigate brute force attacks\")\n            .paused(false)\n            .priority(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneLockdown:\n    type: cloudflare:ZoneLockdown\n    name: example_zone_lockdown\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      configurations:\n        - target: ip\n          value: 198.51.100.4\n      urls:\n        - shop.example.com/*\n      description: Prevent multiple login failures to mitigate brute force attacks\n      paused: false\n      priority: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneLockdown:ZoneLockdown example '\u003czone_id\u003e/\u003clock_downs_id\u003e'\n```\n\n",
            "properties": {
                "configurations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZoneLockdownConfiguration:ZoneLockdownConfiguration"
                    },
                    "description": "A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ipRange`\" pulumi-lang-dotnet=\"`IpRange`\" pulumi-lang-go=\"`ipRange`\" pulumi-lang-python=\"`ip_range`\" pulumi-lang-yaml=\"`ipRange`\" pulumi-lang-java=\"`ipRange`\"\u003e`ipRange`\u003c/span\u003e configurations.\n"
                },
                "createdOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was created.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "The timestamp of when the rule was last modified.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.\n"
                },
                "urls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "required": [
                "configurations",
                "createdOn",
                "modifiedOn",
                "paused",
                "urls"
            ],
            "inputProperties": {
                "configurations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/cloudflare:index/ZoneLockdownConfiguration:ZoneLockdownConfiguration"
                    },
                    "description": "A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ipRange`\" pulumi-lang-dotnet=\"`IpRange`\" pulumi-lang-go=\"`ipRange`\" pulumi-lang-python=\"`ip_range`\" pulumi-lang-yaml=\"`ipRange`\" pulumi-lang-java=\"`ipRange`\"\u003e`ipRange`\u003c/span\u003e configurations.\n"
                },
                "description": {
                    "type": "string",
                    "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                },
                "paused": {
                    "type": "boolean",
                    "description": "When true, indicates that the rule is currently paused.\n"
                },
                "priority": {
                    "type": "number",
                    "description": "The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.\n"
                },
                "urls": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Defines an identifier.\n"
                }
            },
            "requiredInputs": [
                "configurations",
                "urls"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneLockdown resources.\n",
                "properties": {
                    "configurations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/ZoneLockdownConfiguration:ZoneLockdownConfiguration"
                        },
                        "description": "A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ipRange`\" pulumi-lang-dotnet=\"`IpRange`\" pulumi-lang-go=\"`ipRange`\" pulumi-lang-python=\"`ip_range`\" pulumi-lang-yaml=\"`ipRange`\" pulumi-lang-java=\"`ipRange`\"\u003e`ipRange`\u003c/span\u003e configurations.\n"
                    },
                    "createdOn": {
                        "type": "string",
                        "description": "The timestamp of when the rule was created.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The timestamp of when the rule was last modified.\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the rule is currently paused.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.\n"
                    },
                    "urls": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneSetting:ZoneSetting": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n\u003e If using the \u003cspan pulumi-lang-nodejs=\"`sslRecommender`\" pulumi-lang-dotnet=\"`SslRecommender`\" pulumi-lang-go=\"`sslRecommender`\" pulumi-lang-python=\"`ssl_recommender`\" pulumi-lang-yaml=\"`sslRecommender`\" pulumi-lang-java=\"`sslRecommender`\"\u003e`sslRecommender`\u003c/span\u003e zone setting, use the \u003cspan pulumi-lang-nodejs=\"`enabled`\" pulumi-lang-dotnet=\"`Enabled`\" pulumi-lang-go=\"`enabled`\" pulumi-lang-python=\"`enabled`\" pulumi-lang-yaml=\"`enabled`\" pulumi-lang-java=\"`enabled`\"\u003e`enabled`\u003c/span\u003e attribute instead of \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e.\n\n## Available Setting IDs\n\n\u003c!-- BEGIN_ZONE_SETTING_IDS --\u003e\n\u003c!-- This table is auto-generated by scripts/generate-zone-setting-ids from the OpenAPI spec. Do not edit manually. --\u003e\n\nThe following table lists all valid \u003cspan pulumi-lang-nodejs=\"`settingId`\" pulumi-lang-dotnet=\"`SettingId`\" pulumi-lang-go=\"`settingId`\" pulumi-lang-python=\"`setting_id`\" pulumi-lang-yaml=\"`settingId`\" pulumi-lang-java=\"`settingId`\"\u003e`settingId`\u003c/span\u003e values. Some settings may require a specific Cloudflare plan level. For more details, see the [API documentation](https://developers.cloudflare.com/api/resources/zones/subresources/settings/methods/list/).\n\n| Setting ID | Value Type | Description |\n|---|---|---|\n| \u003cspan pulumi-lang-nodejs=\"`0rtt`\" pulumi-lang-dotnet=\"`0rtt`\" pulumi-lang-go=\"`0rtt`\" pulumi-lang-python=\"`0rtt`\" pulumi-lang-yaml=\"`0rtt`\" pulumi-lang-java=\"`0rtt`\"\u003e`0rtt`\u003c/span\u003e | `\"on\"` / `\"off\"` | 0-RTT session resumption enabled for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`advancedDdos`\" pulumi-lang-dotnet=\"`AdvancedDdos`\" pulumi-lang-go=\"`advancedDdos`\" pulumi-lang-python=\"`advanced_ddos`\" pulumi-lang-yaml=\"`advancedDdos`\" pulumi-lang-java=\"`advancedDdos`\"\u003e`advancedDdos`\u003c/span\u003e | `\"on\"` / `\"off\"` | Advanced protection from Distributed Denial of Service (DDoS) attacks on your... |\n| \u003cspan pulumi-lang-nodejs=\"`aegis`\" pulumi-lang-dotnet=\"`Aegis`\" pulumi-lang-go=\"`aegis`\" pulumi-lang-python=\"`aegis`\" pulumi-lang-yaml=\"`aegis`\" pulumi-lang-java=\"`aegis`\"\u003e`aegis`\u003c/span\u003e | Object | Aegis provides dedicated egress IPs (from Cloudflare to your origin) for your... |\n| \u003cspan pulumi-lang-nodejs=\"`alwaysOnline`\" pulumi-lang-dotnet=\"`AlwaysOnline`\" pulumi-lang-go=\"`alwaysOnline`\" pulumi-lang-python=\"`always_online`\" pulumi-lang-yaml=\"`alwaysOnline`\" pulumi-lang-java=\"`alwaysOnline`\"\u003e`alwaysOnline`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, Cloudflare serves limited copies of web pages available from th... |\n| \u003cspan pulumi-lang-nodejs=\"`alwaysUseHttps`\" pulumi-lang-dotnet=\"`AlwaysUseHttps`\" pulumi-lang-go=\"`alwaysUseHttps`\" pulumi-lang-python=\"`always_use_https`\" pulumi-lang-yaml=\"`alwaysUseHttps`\" pulumi-lang-java=\"`alwaysUseHttps`\"\u003e`alwaysUseHttps`\u003c/span\u003e | `\"on\"` / `\"off\"` | Reply to all requests for URLs that use \"http\" with a 301 redirect to the equ... |\n| \u003cspan pulumi-lang-nodejs=\"`automaticHttpsRewrites`\" pulumi-lang-dotnet=\"`AutomaticHttpsRewrites`\" pulumi-lang-go=\"`automaticHttpsRewrites`\" pulumi-lang-python=\"`automatic_https_rewrites`\" pulumi-lang-yaml=\"`automaticHttpsRewrites`\" pulumi-lang-java=\"`automaticHttpsRewrites`\"\u003e`automaticHttpsRewrites`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enable the Automatic HTTPS Rewrites feature for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`automaticPlatformOptimization`\" pulumi-lang-dotnet=\"`AutomaticPlatformOptimization`\" pulumi-lang-go=\"`automaticPlatformOptimization`\" pulumi-lang-python=\"`automatic_platform_optimization`\" pulumi-lang-yaml=\"`automaticPlatformOptimization`\" pulumi-lang-java=\"`automaticPlatformOptimization`\"\u003e`automaticPlatformOptimization`\u003c/span\u003e | Object | [Automatic Platform Optimization for WordPress](https://developers.cloudflare... |\n| \u003cspan pulumi-lang-nodejs=\"`brotli`\" pulumi-lang-dotnet=\"`Brotli`\" pulumi-lang-go=\"`brotli`\" pulumi-lang-python=\"`brotli`\" pulumi-lang-yaml=\"`brotli`\" pulumi-lang-java=\"`brotli`\"\u003e`brotli`\u003c/span\u003e | `\"on\"` / `\"off\"` | When the client requesting an asset supports the Brotli compression algorithm... |\n| \u003cspan pulumi-lang-nodejs=\"`browserCacheTtl`\" pulumi-lang-dotnet=\"`BrowserCacheTtl`\" pulumi-lang-go=\"`browserCacheTtl`\" pulumi-lang-python=\"`browser_cache_ttl`\" pulumi-lang-yaml=\"`browserCacheTtl`\" pulumi-lang-java=\"`browserCacheTtl`\"\u003e`browserCacheTtl`\u003c/span\u003e | Number | Browser Cache TTL (in seconds) specifies how long Cloudflare-cached resources... |\n| \u003cspan pulumi-lang-nodejs=\"`browserCheck`\" pulumi-lang-dotnet=\"`BrowserCheck`\" pulumi-lang-go=\"`browserCheck`\" pulumi-lang-python=\"`browser_check`\" pulumi-lang-yaml=\"`browserCheck`\" pulumi-lang-java=\"`browserCheck`\"\u003e`browserCheck`\u003c/span\u003e | `\"on\"` / `\"off\"` | Browser Integrity Check is similar to Bad Behavior and looks for common HTTP ... |\n| \u003cspan pulumi-lang-nodejs=\"`cacheLevel`\" pulumi-lang-dotnet=\"`CacheLevel`\" pulumi-lang-go=\"`cacheLevel`\" pulumi-lang-python=\"`cache_level`\" pulumi-lang-yaml=\"`cacheLevel`\" pulumi-lang-java=\"`cacheLevel`\"\u003e`cacheLevel`\u003c/span\u003e | `\"aggressive\"`, `\"basic\"`, `\"simplified\"` | Cache Level functions based off the setting level. The basic setting will cac... |\n| \u003cspan pulumi-lang-nodejs=\"`challengeTtl`\" pulumi-lang-dotnet=\"`ChallengeTtl`\" pulumi-lang-go=\"`challengeTtl`\" pulumi-lang-python=\"`challenge_ttl`\" pulumi-lang-yaml=\"`challengeTtl`\" pulumi-lang-java=\"`challengeTtl`\"\u003e`challengeTtl`\u003c/span\u003e | Number (14 values) | Specify how long a visitor is allowed access to your site after successfully ... |\n| \u003cspan pulumi-lang-nodejs=\"`ciphers`\" pulumi-lang-dotnet=\"`Ciphers`\" pulumi-lang-go=\"`ciphers`\" pulumi-lang-python=\"`ciphers`\" pulumi-lang-yaml=\"`ciphers`\" pulumi-lang-java=\"`ciphers`\"\u003e`ciphers`\u003c/span\u003e | Array of string | An allowlist of ciphers for TLS termination. These ciphers must be in the Bor... |\n| \u003cspan pulumi-lang-nodejs=\"`cnameFlattening`\" pulumi-lang-dotnet=\"`CnameFlattening`\" pulumi-lang-go=\"`cnameFlattening`\" pulumi-lang-python=\"`cname_flattening`\" pulumi-lang-yaml=\"`cnameFlattening`\" pulumi-lang-java=\"`cnameFlattening`\"\u003e`cnameFlattening`\u003c/span\u003e | `\u003cspan pulumi-lang-nodejs=\"\"flattenAtRoot\"\" pulumi-lang-dotnet=\"\"FlattenAtRoot\"\" pulumi-lang-go=\"\"flattenAtRoot\"\" pulumi-lang-python=\"\"flatten_at_root\"\" pulumi-lang-yaml=\"\"flattenAtRoot\"\" pulumi-lang-java=\"\"flattenAtRoot\"\"\u003e\"flattenAtRoot\"\u003c/span\u003e`, `\u003cspan pulumi-lang-nodejs=\"\"flattenAll\"\" pulumi-lang-dotnet=\"\"FlattenAll\"\" pulumi-lang-go=\"\"flattenAll\"\" pulumi-lang-python=\"\"flatten_all\"\" pulumi-lang-yaml=\"\"flattenAll\"\" pulumi-lang-java=\"\"flattenAll\"\"\u003e\"flattenAll\"\u003c/span\u003e` | Whether or not cname flattening is on. |\n| \u003cspan pulumi-lang-nodejs=\"`contentConverter`\" pulumi-lang-dotnet=\"`ContentConverter`\" pulumi-lang-go=\"`contentConverter`\" pulumi-lang-python=\"`content_converter`\" pulumi-lang-yaml=\"`contentConverter`\" pulumi-lang-java=\"`contentConverter`\"\u003e`contentConverter`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled and the client sends an Accept header requesting text/markdown, ... |\n| \u003cspan pulumi-lang-nodejs=\"`developmentMode`\" pulumi-lang-dotnet=\"`DevelopmentMode`\" pulumi-lang-go=\"`developmentMode`\" pulumi-lang-python=\"`development_mode`\" pulumi-lang-yaml=\"`developmentMode`\" pulumi-lang-java=\"`developmentMode`\"\u003e`developmentMode`\u003c/span\u003e | `\"on\"` / `\"off\"` | Development Mode temporarily allows you to enter development mode for your we... |\n| \u003cspan pulumi-lang-nodejs=\"`earlyHints`\" pulumi-lang-dotnet=\"`EarlyHints`\" pulumi-lang-go=\"`earlyHints`\" pulumi-lang-python=\"`early_hints`\" pulumi-lang-yaml=\"`earlyHints`\" pulumi-lang-java=\"`earlyHints`\"\u003e`earlyHints`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, Cloudflare will attempt to speed up overall page loads by servi... |\n| \u003cspan pulumi-lang-nodejs=\"`edgeCacheTtl`\" pulumi-lang-dotnet=\"`EdgeCacheTtl`\" pulumi-lang-go=\"`edgeCacheTtl`\" pulumi-lang-python=\"`edge_cache_ttl`\" pulumi-lang-yaml=\"`edgeCacheTtl`\" pulumi-lang-java=\"`edgeCacheTtl`\"\u003e`edgeCacheTtl`\u003c/span\u003e | Number (21 values) | Time (in seconds) that a resource will be ensured to remain on Cloudflare's c... |\n| \u003cspan pulumi-lang-nodejs=\"`emailObfuscation`\" pulumi-lang-dotnet=\"`EmailObfuscation`\" pulumi-lang-go=\"`emailObfuscation`\" pulumi-lang-python=\"`email_obfuscation`\" pulumi-lang-yaml=\"`emailObfuscation`\" pulumi-lang-java=\"`emailObfuscation`\"\u003e`emailObfuscation`\u003c/span\u003e | `\"on\"` / `\"off\"` | Encrypt email adresses on your web page from bots, while keeping them visible... |\n| \u003cspan pulumi-lang-nodejs=\"`h2Prioritization`\" pulumi-lang-dotnet=\"`H2Prioritization`\" pulumi-lang-go=\"`h2Prioritization`\" pulumi-lang-python=\"`h2_prioritization`\" pulumi-lang-yaml=\"`h2Prioritization`\" pulumi-lang-java=\"`h2Prioritization`\"\u003e`h2Prioritization`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"custom\"` | HTTP/2 Edge Prioritization optimises the delivery of resources served through... |\n| \u003cspan pulumi-lang-nodejs=\"`hotlinkProtection`\" pulumi-lang-dotnet=\"`HotlinkProtection`\" pulumi-lang-go=\"`hotlinkProtection`\" pulumi-lang-python=\"`hotlink_protection`\" pulumi-lang-yaml=\"`hotlinkProtection`\" pulumi-lang-java=\"`hotlinkProtection`\"\u003e`hotlinkProtection`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, the Hotlink Protection option ensures that other sites cannot s... |\n| \u003cspan pulumi-lang-nodejs=\"`http2`\" pulumi-lang-dotnet=\"`Http2`\" pulumi-lang-go=\"`http2`\" pulumi-lang-python=\"`http2`\" pulumi-lang-yaml=\"`http2`\" pulumi-lang-java=\"`http2`\"\u003e`http2`\u003c/span\u003e | `\"on\"` / `\"off\"` | HTTP2 enabled for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`http3`\" pulumi-lang-dotnet=\"`Http3`\" pulumi-lang-go=\"`http3`\" pulumi-lang-python=\"`http3`\" pulumi-lang-yaml=\"`http3`\" pulumi-lang-java=\"`http3`\"\u003e`http3`\u003c/span\u003e | `\"on\"` / `\"off\"` | HTTP3 enabled for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`imageResizing`\" pulumi-lang-dotnet=\"`ImageResizing`\" pulumi-lang-go=\"`imageResizing`\" pulumi-lang-python=\"`image_resizing`\" pulumi-lang-yaml=\"`imageResizing`\" pulumi-lang-java=\"`imageResizing`\"\u003e`imageResizing`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"open\"` | Image Transformations provides on-demand resizing, conversion and optimizatio... |\n| \u003cspan pulumi-lang-nodejs=\"`ipGeolocation`\" pulumi-lang-dotnet=\"`IpGeolocation`\" pulumi-lang-go=\"`ipGeolocation`\" pulumi-lang-python=\"`ip_geolocation`\" pulumi-lang-yaml=\"`ipGeolocation`\" pulumi-lang-java=\"`ipGeolocation`\"\u003e`ipGeolocation`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enable IP Geolocation to have Cloudflare geolocate visitors to your website a... |\n| \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enable IPv6 on all subdomains that are Cloudflare enabled.  (https://support.... |\n| \u003cspan pulumi-lang-nodejs=\"`maxUpload`\" pulumi-lang-dotnet=\"`MaxUpload`\" pulumi-lang-go=\"`maxUpload`\" pulumi-lang-python=\"`max_upload`\" pulumi-lang-yaml=\"`maxUpload`\" pulumi-lang-java=\"`maxUpload`\"\u003e`maxUpload`\u003c/span\u003e | Number (18 values) | Maximum size of an allowable upload. |\n| \u003cspan pulumi-lang-nodejs=\"`minTlsVersion`\" pulumi-lang-dotnet=\"`MinTlsVersion`\" pulumi-lang-go=\"`minTlsVersion`\" pulumi-lang-python=\"`min_tls_version`\" pulumi-lang-yaml=\"`minTlsVersion`\" pulumi-lang-java=\"`minTlsVersion`\"\u003e`minTlsVersion`\u003c/span\u003e | `\"1.0\"`, `\"1.1\"`, `\"1.2\"`, `\"1.3\"` | Only accepts HTTPS requests that use at least the TLS protocol version specif... |\n| \u003cspan pulumi-lang-nodejs=\"`mirage`\" pulumi-lang-dotnet=\"`Mirage`\" pulumi-lang-go=\"`mirage`\" pulumi-lang-python=\"`mirage`\" pulumi-lang-yaml=\"`mirage`\" pulumi-lang-java=\"`mirage`\"\u003e`mirage`\u003c/span\u003e | `\"on\"` / `\"off\"` | Automatically optimize image loading for website visitors on mobile devices. ... |\n| \u003cspan pulumi-lang-nodejs=\"`nel`\" pulumi-lang-dotnet=\"`Nel`\" pulumi-lang-go=\"`nel`\" pulumi-lang-python=\"`nel`\" pulumi-lang-yaml=\"`nel`\" pulumi-lang-java=\"`nel`\"\u003e`nel`\u003c/span\u003e | Object | Enable Network Error Logging reporting on your zone. (Beta) |\n| \u003cspan pulumi-lang-nodejs=\"`opportunisticEncryption`\" pulumi-lang-dotnet=\"`OpportunisticEncryption`\" pulumi-lang-go=\"`opportunisticEncryption`\" pulumi-lang-python=\"`opportunistic_encryption`\" pulumi-lang-yaml=\"`opportunisticEncryption`\" pulumi-lang-java=\"`opportunisticEncryption`\"\u003e`opportunisticEncryption`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enables the Opportunistic Encryption feature for a zone. |\n| \u003cspan pulumi-lang-nodejs=\"`opportunisticOnion`\" pulumi-lang-dotnet=\"`OpportunisticOnion`\" pulumi-lang-go=\"`opportunisticOnion`\" pulumi-lang-python=\"`opportunistic_onion`\" pulumi-lang-yaml=\"`opportunisticOnion`\" pulumi-lang-java=\"`opportunisticOnion`\"\u003e`opportunisticOnion`\u003c/span\u003e | `\"on\"` / `\"off\"` | Add an Alt-Svc header to all legitimate requests from Tor, allowing the conne... |\n| \u003cspan pulumi-lang-nodejs=\"`orangeToOrange`\" pulumi-lang-dotnet=\"`OrangeToOrange`\" pulumi-lang-go=\"`orangeToOrange`\" pulumi-lang-python=\"`orange_to_orange`\" pulumi-lang-yaml=\"`orangeToOrange`\" pulumi-lang-java=\"`orangeToOrange`\"\u003e`orangeToOrange`\u003c/span\u003e | `\"on\"` / `\"off\"` | Orange to Orange (O2O) allows zones on Cloudflare to CNAME to other zones als... |\n| \u003cspan pulumi-lang-nodejs=\"`originErrorPagePassThru`\" pulumi-lang-dotnet=\"`OriginErrorPagePassThru`\" pulumi-lang-go=\"`originErrorPagePassThru`\" pulumi-lang-python=\"`origin_error_page_pass_thru`\" pulumi-lang-yaml=\"`originErrorPagePassThru`\" pulumi-lang-java=\"`originErrorPagePassThru`\"\u003e`originErrorPagePassThru`\u003c/span\u003e | `\"on\"` / `\"off\"` | Cloudflare will proxy customer error pages on any 502,504 errors on origin se... |\n| \u003cspan pulumi-lang-nodejs=\"`originH2MaxStreams`\" pulumi-lang-dotnet=\"`OriginH2MaxStreams`\" pulumi-lang-go=\"`originH2MaxStreams`\" pulumi-lang-python=\"`origin_h2_max_streams`\" pulumi-lang-yaml=\"`originH2MaxStreams`\" pulumi-lang-java=\"`originH2MaxStreams`\"\u003e`originH2MaxStreams`\u003c/span\u003e | Number | Origin H2 Max Streams configures the max number of concurrent requests that C... |\n| \u003cspan pulumi-lang-nodejs=\"`originMaxHttpVersion`\" pulumi-lang-dotnet=\"`OriginMaxHttpVersion`\" pulumi-lang-go=\"`originMaxHttpVersion`\" pulumi-lang-python=\"`origin_max_http_version`\" pulumi-lang-yaml=\"`originMaxHttpVersion`\" pulumi-lang-java=\"`originMaxHttpVersion`\"\u003e`originMaxHttpVersion`\u003c/span\u003e | `\"2\"`, `\"1\"` | Origin Max HTTP Setting Version sets the highest HTTP version Cloudflare will... |\n| \u003cspan pulumi-lang-nodejs=\"`polish`\" pulumi-lang-dotnet=\"`Polish`\" pulumi-lang-go=\"`polish`\" pulumi-lang-python=\"`polish`\" pulumi-lang-yaml=\"`polish`\" pulumi-lang-java=\"`polish`\"\u003e`polish`\u003c/span\u003e | `\"off\"`, `\"lossless\"`, `\"lossy\"` | Removes metadata and compresses your images for faster page load times. Basic... |\n| \u003cspan pulumi-lang-nodejs=\"`prefetchPreload`\" pulumi-lang-dotnet=\"`PrefetchPreload`\" pulumi-lang-go=\"`prefetchPreload`\" pulumi-lang-python=\"`prefetch_preload`\" pulumi-lang-yaml=\"`prefetchPreload`\" pulumi-lang-java=\"`prefetchPreload`\"\u003e`prefetchPreload`\u003c/span\u003e | `\"on\"` / `\"off\"` | Cloudflare will prefetch any URLs that are included in the response headers. ... |\n| \u003cspan pulumi-lang-nodejs=\"`privacyPass`\" pulumi-lang-dotnet=\"`PrivacyPass`\" pulumi-lang-go=\"`privacyPass`\" pulumi-lang-python=\"`privacy_pass`\" pulumi-lang-yaml=\"`privacyPass`\" pulumi-lang-java=\"`privacyPass`\"\u003e`privacyPass`\u003c/span\u003e | `\"on\"` / `\"off\"` | Privacy Pass v1 was a browser extension developed by the Privacy Pass Team to... |\n| \u003cspan pulumi-lang-nodejs=\"`proxyReadTimeout`\" pulumi-lang-dotnet=\"`ProxyReadTimeout`\" pulumi-lang-go=\"`proxyReadTimeout`\" pulumi-lang-python=\"`proxy_read_timeout`\" pulumi-lang-yaml=\"`proxyReadTimeout`\" pulumi-lang-java=\"`proxyReadTimeout`\"\u003e`proxyReadTimeout`\u003c/span\u003e | Number | Maximum time between two read operations from origin. |\n| \u003cspan pulumi-lang-nodejs=\"`pseudoIpv4`\" pulumi-lang-dotnet=\"`PseudoIpv4`\" pulumi-lang-go=\"`pseudoIpv4`\" pulumi-lang-python=\"`pseudo_ipv4`\" pulumi-lang-yaml=\"`pseudoIpv4`\" pulumi-lang-java=\"`pseudoIpv4`\"\u003e`pseudoIpv4`\u003c/span\u003e | `\"off\"`, `\u003cspan pulumi-lang-nodejs=\"\"addHeader\"\" pulumi-lang-dotnet=\"\"AddHeader\"\" pulumi-lang-go=\"\"addHeader\"\" pulumi-lang-python=\"\"add_header\"\" pulumi-lang-yaml=\"\"addHeader\"\" pulumi-lang-java=\"\"addHeader\"\"\u003e\"addHeader\"\u003c/span\u003e`, `\u003cspan pulumi-lang-nodejs=\"\"overwriteHeader\"\" pulumi-lang-dotnet=\"\"OverwriteHeader\"\" pulumi-lang-go=\"\"overwriteHeader\"\" pulumi-lang-python=\"\"overwrite_header\"\" pulumi-lang-yaml=\"\"overwriteHeader\"\" pulumi-lang-java=\"\"overwriteHeader\"\"\u003e\"overwriteHeader\"\u003c/span\u003e` | The value set for the Pseudo IPv4 setting. |\n| \u003cspan pulumi-lang-nodejs=\"`redirectsForAiTraining`\" pulumi-lang-dotnet=\"`RedirectsForAiTraining`\" pulumi-lang-go=\"`redirectsForAiTraining`\" pulumi-lang-python=\"`redirects_for_ai_training`\" pulumi-lang-yaml=\"`redirectsForAiTraining`\" pulumi-lang-java=\"`redirectsForAiTraining`\"\u003e`redirectsForAiTraining`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, Cloudflare will redirect verified AI training crawlers to canon... |\n| \u003cspan pulumi-lang-nodejs=\"`replaceInsecureJs`\" pulumi-lang-dotnet=\"`ReplaceInsecureJs`\" pulumi-lang-go=\"`replaceInsecureJs`\" pulumi-lang-python=\"`replace_insecure_js`\" pulumi-lang-yaml=\"`replaceInsecureJs`\" pulumi-lang-java=\"`replaceInsecureJs`\"\u003e`replaceInsecureJs`\u003c/span\u003e | `\"on\"` / `\"off\"` | Automatically replace insecure JavaScript libraries with safer and faster alt... |\n| \u003cspan pulumi-lang-nodejs=\"`responseBuffering`\" pulumi-lang-dotnet=\"`ResponseBuffering`\" pulumi-lang-go=\"`responseBuffering`\" pulumi-lang-python=\"`response_buffering`\" pulumi-lang-yaml=\"`responseBuffering`\" pulumi-lang-java=\"`responseBuffering`\"\u003e`responseBuffering`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enables or disables buffering of responses from the proxied server. Cloudflar... |\n| \u003cspan pulumi-lang-nodejs=\"`rocketLoader`\" pulumi-lang-dotnet=\"`RocketLoader`\" pulumi-lang-go=\"`rocketLoader`\" pulumi-lang-python=\"`rocket_loader`\" pulumi-lang-yaml=\"`rocketLoader`\" pulumi-lang-java=\"`rocketLoader`\"\u003e`rocketLoader`\u003c/span\u003e | `\"on\"` / `\"off\"` | Rocket Loader is a general-purpose asynchronous JavaScript optimisation that ... |\n| \u003cspan pulumi-lang-nodejs=\"`securityHeader`\" pulumi-lang-dotnet=\"`SecurityHeader`\" pulumi-lang-go=\"`securityHeader`\" pulumi-lang-python=\"`security_header`\" pulumi-lang-yaml=\"`securityHeader`\" pulumi-lang-java=\"`securityHeader`\"\u003e`securityHeader`\u003c/span\u003e | Object | Cloudflare security header for a zone. |\n| \u003cspan pulumi-lang-nodejs=\"`securityLevel`\" pulumi-lang-dotnet=\"`SecurityLevel`\" pulumi-lang-go=\"`securityLevel`\" pulumi-lang-python=\"`security_level`\" pulumi-lang-yaml=\"`securityLevel`\" pulumi-lang-java=\"`securityLevel`\"\u003e`securityLevel`\u003c/span\u003e | `\"off\"`, `\u003cspan pulumi-lang-nodejs=\"\"essentiallyOff\"\" pulumi-lang-dotnet=\"\"EssentiallyOff\"\" pulumi-lang-go=\"\"essentiallyOff\"\" pulumi-lang-python=\"\"essentially_off\"\" pulumi-lang-yaml=\"\"essentiallyOff\"\" pulumi-lang-java=\"\"essentiallyOff\"\"\u003e\"essentiallyOff\"\u003c/span\u003e`, `\"low\"`, `\"medium\"`, `\"high\"`, `\u003cspan pulumi-lang-nodejs=\"\"underAttack\"\" pulumi-lang-dotnet=\"\"UnderAttack\"\" pulumi-lang-go=\"\"underAttack\"\" pulumi-lang-python=\"\"under_attack\"\" pulumi-lang-yaml=\"\"underAttack\"\" pulumi-lang-java=\"\"underAttack\"\"\u003e\"underAttack\"\u003c/span\u003e` | Choose the appropriate security profile for your website, which will automati... |\n| \u003cspan pulumi-lang-nodejs=\"`serverSideExclude`\" pulumi-lang-dotnet=\"`ServerSideExclude`\" pulumi-lang-go=\"`serverSideExclude`\" pulumi-lang-python=\"`server_side_exclude`\" pulumi-lang-yaml=\"`serverSideExclude`\" pulumi-lang-java=\"`serverSideExclude`\"\u003e`serverSideExclude`\u003c/span\u003e | `\"on\"` / `\"off\"` | If there is sensitive content on your website that you want visible to real v... |\n| \u003cspan pulumi-lang-nodejs=\"`sha1Support`\" pulumi-lang-dotnet=\"`Sha1Support`\" pulumi-lang-go=\"`sha1Support`\" pulumi-lang-python=\"`sha1_support`\" pulumi-lang-yaml=\"`sha1Support`\" pulumi-lang-java=\"`sha1Support`\"\u003e`sha1Support`\u003c/span\u003e | `\"on\"` / `\"off\"` | Allow SHA1 support. |\n| \u003cspan pulumi-lang-nodejs=\"`sortQueryStringForCache`\" pulumi-lang-dotnet=\"`SortQueryStringForCache`\" pulumi-lang-go=\"`sortQueryStringForCache`\" pulumi-lang-python=\"`sort_query_string_for_cache`\" pulumi-lang-yaml=\"`sortQueryStringForCache`\" pulumi-lang-java=\"`sortQueryStringForCache`\"\u003e`sortQueryStringForCache`\u003c/span\u003e | `\"on\"` / `\"off\"` | Cloudflare will treat files with the same query strings as the same file in c... |\n| \u003cspan pulumi-lang-nodejs=\"`ssl`\" pulumi-lang-dotnet=\"`Ssl`\" pulumi-lang-go=\"`ssl`\" pulumi-lang-python=\"`ssl`\" pulumi-lang-yaml=\"`ssl`\" pulumi-lang-java=\"`ssl`\"\u003e`ssl`\u003c/span\u003e | `\"off\"`, `\"flexible\"`, `\"full\"`, `\"strict\"` | SSL encrypts your visitor's connection and safeguards credit card numbers and... |\n| \u003cspan pulumi-lang-nodejs=\"`sslRecommender`\" pulumi-lang-dotnet=\"`SslRecommender`\" pulumi-lang-go=\"`sslRecommender`\" pulumi-lang-python=\"`ssl_recommender`\" pulumi-lang-yaml=\"`sslRecommender`\" pulumi-lang-java=\"`sslRecommender`\"\u003e`sslRecommender`\u003c/span\u003e | Uses \u003cspan pulumi-lang-nodejs=\"`enabled`\" pulumi-lang-dotnet=\"`Enabled`\" pulumi-lang-go=\"`enabled`\" pulumi-lang-python=\"`enabled`\" pulumi-lang-yaml=\"`enabled`\" pulumi-lang-java=\"`enabled`\"\u003e`enabled`\u003c/span\u003e attr | Enrollment in the SSL/TLS Recommender service which tries to detect and recom... |\n| \u003cspan pulumi-lang-nodejs=\"`tls12Only`\" pulumi-lang-dotnet=\"`Tls12Only`\" pulumi-lang-go=\"`tls12Only`\" pulumi-lang-python=\"`tls_1_2_only`\" pulumi-lang-yaml=\"`tls12Only`\" pulumi-lang-java=\"`tls12Only`\"\u003e`tls12Only`\u003c/span\u003e | `\"on\"` / `\"off\"` | Only allows TLS1.2. |\n| \u003cspan pulumi-lang-nodejs=\"`tls13`\" pulumi-lang-dotnet=\"`Tls13`\" pulumi-lang-go=\"`tls13`\" pulumi-lang-python=\"`tls_1_3`\" pulumi-lang-yaml=\"`tls13`\" pulumi-lang-java=\"`tls13`\"\u003e`tls13`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"zrt\"` | Enables Crypto TLS 1.3 feature for a zone. |\n| \u003cspan pulumi-lang-nodejs=\"`tlsClientAuth`\" pulumi-lang-dotnet=\"`TlsClientAuth`\" pulumi-lang-go=\"`tlsClientAuth`\" pulumi-lang-python=\"`tls_client_auth`\" pulumi-lang-yaml=\"`tlsClientAuth`\" pulumi-lang-java=\"`tlsClientAuth`\"\u003e`tlsClientAuth`\u003c/span\u003e | `\"on\"` / `\"off\"` | TLS Client Auth requires Cloudflare to connect to your origin server using a ... |\n| \u003cspan pulumi-lang-nodejs=\"`transformations`\" pulumi-lang-dotnet=\"`Transformations`\" pulumi-lang-go=\"`transformations`\" pulumi-lang-python=\"`transformations`\" pulumi-lang-yaml=\"`transformations`\" pulumi-lang-java=\"`transformations`\"\u003e`transformations`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"open\"` | Media Transformations provides on-demand resizing, conversion and optimizatio... |\n| \u003cspan pulumi-lang-nodejs=\"`transformationsAllowedOrigins`\" pulumi-lang-dotnet=\"`TransformationsAllowedOrigins`\" pulumi-lang-go=\"`transformationsAllowedOrigins`\" pulumi-lang-python=\"`transformations_allowed_origins`\" pulumi-lang-yaml=\"`transformationsAllowedOrigins`\" pulumi-lang-java=\"`transformationsAllowedOrigins`\"\u003e`transformationsAllowedOrigins`\u003c/span\u003e | String | Media Transformations Allowed Origins restricts transformations for images an... |\n| \u003cspan pulumi-lang-nodejs=\"`trueClientIpHeader`\" pulumi-lang-dotnet=\"`TrueClientIpHeader`\" pulumi-lang-go=\"`trueClientIpHeader`\" pulumi-lang-python=\"`true_client_ip_header`\" pulumi-lang-yaml=\"`trueClientIpHeader`\" pulumi-lang-java=\"`trueClientIpHeader`\"\u003e`trueClientIpHeader`\u003c/span\u003e | `\"on\"` / `\"off\"` | Allows customer to continue to use True Client IP (Akamai feature) in the hea... |\n| \u003cspan pulumi-lang-nodejs=\"`waf`\" pulumi-lang-dotnet=\"`Waf`\" pulumi-lang-go=\"`waf`\" pulumi-lang-python=\"`waf`\" pulumi-lang-yaml=\"`waf`\" pulumi-lang-java=\"`waf`\"\u003e`waf`\u003c/span\u003e | `\"on\"` / `\"off\"` | The WAF examines HTTP requests to your website.  It inspects both GET and POS... |\n| \u003cspan pulumi-lang-nodejs=\"`webp`\" pulumi-lang-dotnet=\"`Webp`\" pulumi-lang-go=\"`webp`\" pulumi-lang-python=\"`webp`\" pulumi-lang-yaml=\"`webp`\" pulumi-lang-java=\"`webp`\"\u003e`webp`\u003c/span\u003e | `\"on\"` / `\"off\"` | When the client requesting the image supports the WebP image codec, and WebP ... |\n| \u003cspan pulumi-lang-nodejs=\"`websockets`\" pulumi-lang-dotnet=\"`Websockets`\" pulumi-lang-go=\"`websockets`\" pulumi-lang-python=\"`websockets`\" pulumi-lang-yaml=\"`websockets`\" pulumi-lang-java=\"`websockets`\"\u003e`websockets`\u003c/span\u003e | `\"on\"` / `\"off\"` | WebSockets are open connections sustained between the client and the origin s... |\n\n\u003c!-- END_ZONE_SETTING_IDS --\u003e\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\n// Basic on/off setting\nconst alwaysOnline = new cloudflare.ZoneSetting(\"always_online\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"always_online\",\n    value: \"on\",\n});\n// String value with specific choices\nconst minTlsVersion = new cloudflare.ZoneSetting(\"min_tls_version\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"min_tls_version\",\n    value: \"1.2\",\n});\n// Numeric value\nconst browserCacheTtl = new cloudflare.ZoneSetting(\"browser_cache_ttl\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"browser_cache_ttl\",\n    value: 14400,\n});\n// Array/List value\nconst ciphers = new cloudflare.ZoneSetting(\"ciphers\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"ciphers\",\n    value: [\n        \"ECDHE-ECDSA-AES128-GCM-SHA256\",\n        \"ECDHE-ECDSA-CHACHA20-POLY1305\",\n    ],\n});\n// Nested object value\nconst securityHeader = new cloudflare.ZoneSetting(\"security_header\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"security_header\",\n    value: {\n        strictTransportSecurity: {\n            enabled: true,\n            includeSubdomains: true,\n            maxAge: 86400,\n            nosniff: true,\n            preload: false,\n        },\n    },\n});\n// Special case: ssl_recommender uses 'enabled' instead of 'value'\nconst sslRecommender = new cloudflare.ZoneSetting(\"ssl_recommender\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"ssl_recommender\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\n# Basic on/off setting\nalways_online = cloudflare.ZoneSetting(\"always_online\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"always_online\",\n    value=\"on\")\n# String value with specific choices\nmin_tls_version = cloudflare.ZoneSetting(\"min_tls_version\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"min_tls_version\",\n    value=\"1.2\")\n# Numeric value\nbrowser_cache_ttl = cloudflare.ZoneSetting(\"browser_cache_ttl\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"browser_cache_ttl\",\n    value=14400)\n# Array/List value\nciphers = cloudflare.ZoneSetting(\"ciphers\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"ciphers\",\n    value=[\n        \"ECDHE-ECDSA-AES128-GCM-SHA256\",\n        \"ECDHE-ECDSA-CHACHA20-POLY1305\",\n    ])\n# Nested object value\nsecurity_header = cloudflare.ZoneSetting(\"security_header\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"security_header\",\n    value={\n        \"strictTransportSecurity\": {\n            \"enabled\": True,\n            \"includeSubdomains\": True,\n            \"maxAge\": 86400,\n            \"nosniff\": True,\n            \"preload\": False,\n        },\n    })\n# Special case: ssl_recommender uses 'enabled' instead of 'value'\nssl_recommender = cloudflare.ZoneSetting(\"ssl_recommender\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"ssl_recommender\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Basic on/off setting\n    var alwaysOnline = new Cloudflare.Index.ZoneSetting(\"always_online\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"always_online\",\n        Value = \"on\",\n    });\n\n    // String value with specific choices\n    var minTlsVersion = new Cloudflare.Index.ZoneSetting(\"min_tls_version\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"min_tls_version\",\n        Value = \"1.2\",\n    });\n\n    // Numeric value\n    var browserCacheTtl = new Cloudflare.Index.ZoneSetting(\"browser_cache_ttl\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"browser_cache_ttl\",\n        Value = 14400,\n    });\n\n    // Array/List value\n    var ciphers = new Cloudflare.Index.ZoneSetting(\"ciphers\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"ciphers\",\n        Value = new[]\n        {\n            \"ECDHE-ECDSA-AES128-GCM-SHA256\",\n            \"ECDHE-ECDSA-CHACHA20-POLY1305\",\n        },\n    });\n\n    // Nested object value\n    var securityHeader = new Cloudflare.Index.ZoneSetting(\"security_header\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"security_header\",\n        Value = new Dictionary\u003cstring, object?\u003e\n        {\n            [\"strictTransportSecurity\"] = new Dictionary\u003cstring, object?\u003e\n            {\n                [\"enabled\"] = true,\n                [\"includeSubdomains\"] = true,\n                [\"maxAge\"] = 86400,\n                [\"nosniff\"] = true,\n                [\"preload\"] = false,\n            },\n        },\n    });\n\n    // Special case: ssl_recommender uses 'enabled' instead of 'value'\n    var sslRecommender = new Cloudflare.Index.ZoneSetting(\"ssl_recommender\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"ssl_recommender\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Basic on/off setting\n\t\t_, err := cloudflare.NewZoneSetting(ctx, \"always_online\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"always_online\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// String value with specific choices\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"min_tls_version\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"min_tls_version\"),\n\t\t\tValue:     pulumi.Any(\"1.2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Numeric value\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"browser_cache_ttl\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"browser_cache_ttl\"),\n\t\t\tValue:     pulumi.Any(14400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Array/List value\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"ciphers\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"ciphers\"),\n\t\t\tValue: pulumi.Any{\n\t\t\t\t\"ECDHE-ECDSA-AES128-GCM-SHA256\",\n\t\t\t\t\"ECDHE-ECDSA-CHACHA20-POLY1305\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Nested object value\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"security_header\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"security_header\"),\n\t\t\tValue: pulumi.Any(map[string]interface{}{\n\t\t\t\t\"strictTransportSecurity\": map[string]interface{}{\n\t\t\t\t\t\"enabled\":           true,\n\t\t\t\t\t\"includeSubdomains\": true,\n\t\t\t\t\t\"maxAge\":            86400,\n\t\t\t\t\t\"nosniff\":           true,\n\t\t\t\t\t\"preload\":           false,\n\t\t\t\t},\n\t\t\t}),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Special case: ssl_recommender uses 'enabled' instead of 'value'\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"ssl_recommender\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"ssl_recommender\"),\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSetting;\nimport com.pulumi.cloudflare.ZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Basic on/off setting\n        var alwaysOnline = new ZoneSetting(\"alwaysOnline\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"always_online\")\n            .value(\"on\")\n            .build());\n\n        // String value with specific choices\n        var minTlsVersion = new ZoneSetting(\"minTlsVersion\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"min_tls_version\")\n            .value(\"1.2\")\n            .build());\n\n        // Numeric value\n        var browserCacheTtl = new ZoneSetting(\"browserCacheTtl\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"browser_cache_ttl\")\n            .value(14400)\n            .build());\n\n        // Array/List value\n        var ciphers = new ZoneSetting(\"ciphers\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"ciphers\")\n            .value(            \n                \"ECDHE-ECDSA-AES128-GCM-SHA256\",\n                \"ECDHE-ECDSA-CHACHA20-POLY1305\")\n            .build());\n\n        // Nested object value\n        var securityHeader = new ZoneSetting(\"securityHeader\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"security_header\")\n            .value(Map.of(\"strictTransportSecurity\", Map.ofEntries(\n                Map.entry(\"enabled\", true),\n                Map.entry(\"includeSubdomains\", true),\n                Map.entry(\"maxAge\", 86400),\n                Map.entry(\"nosniff\", true),\n                Map.entry(\"preload\", false)\n            )))\n            .build());\n\n        // Special case: ssl_recommender uses 'enabled' instead of 'value'\n        var sslRecommender = new ZoneSetting(\"sslRecommender\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"ssl_recommender\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Basic on/off setting\n  alwaysOnline:\n    type: cloudflare:ZoneSetting\n    name: always_online\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: always_online\n      value: on\n  # String value with specific choices\n  minTlsVersion:\n    type: cloudflare:ZoneSetting\n    name: min_tls_version\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: min_tls_version\n      value: '1.2'\n  # Numeric value\n  browserCacheTtl:\n    type: cloudflare:ZoneSetting\n    name: browser_cache_ttl\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: browser_cache_ttl\n      value: 14400 # 4 hours in seconds\n  # Array/List value\n  ciphers:\n    type: cloudflare:ZoneSetting\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: ciphers\n      value:\n        - ECDHE-ECDSA-AES128-GCM-SHA256\n        - ECDHE-ECDSA-CHACHA20-POLY1305\n  # Nested object value\n  securityHeader:\n    type: cloudflare:ZoneSetting\n    name: security_header\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: security_header\n      value:\n        strictTransportSecurity:\n          enabled: true\n          includeSubdomains: true\n          maxAge: 86400\n          nosniff: true\n          preload: false\n  # Special case: ssl_recommender uses 'enabled' instead of 'value'\n  sslRecommender:\n    type: cloudflare:ZoneSetting\n    name: ssl_recommender\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: ssl_recommender\n      enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Additional Examples\n\n### String Value with Choices\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\n// Minimum TLS Version\nconst minTls = new cloudflare.ZoneSetting(\"min_tls\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"min_tls_version\",\n    value: \"1.2\",\n});\n// SSL/TLS Mode\nconst ssl = new cloudflare.ZoneSetting(\"ssl\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"ssl\",\n    value: \"strict\",\n});\n// Security Level\nconst securityLevel = new cloudflare.ZoneSetting(\"security_level\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"security_level\",\n    value: \"medium\",\n});\n// Cache Level\nconst cacheLevel = new cloudflare.ZoneSetting(\"cache_level\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"cache_level\",\n    value: \"aggressive\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\n# Minimum TLS Version\nmin_tls = cloudflare.ZoneSetting(\"min_tls\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"min_tls_version\",\n    value=\"1.2\")\n# SSL/TLS Mode\nssl = cloudflare.ZoneSetting(\"ssl\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"ssl\",\n    value=\"strict\")\n# Security Level\nsecurity_level = cloudflare.ZoneSetting(\"security_level\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"security_level\",\n    value=\"medium\")\n# Cache Level\ncache_level = cloudflare.ZoneSetting(\"cache_level\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"cache_level\",\n    value=\"aggressive\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Minimum TLS Version\n    var minTls = new Cloudflare.Index.ZoneSetting(\"min_tls\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"min_tls_version\",\n        Value = \"1.2\",\n    });\n\n    // SSL/TLS Mode\n    var ssl = new Cloudflare.Index.ZoneSetting(\"ssl\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"ssl\",\n        Value = \"strict\",\n    });\n\n    // Security Level\n    var securityLevel = new Cloudflare.Index.ZoneSetting(\"security_level\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"security_level\",\n        Value = \"medium\",\n    });\n\n    // Cache Level\n    var cacheLevel = new Cloudflare.Index.ZoneSetting(\"cache_level\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"cache_level\",\n        Value = \"aggressive\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Minimum TLS Version\n\t\t_, err := cloudflare.NewZoneSetting(ctx, \"min_tls\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"min_tls_version\"),\n\t\t\tValue:     pulumi.Any(\"1.2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// SSL/TLS Mode\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"ssl\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"ssl\"),\n\t\t\tValue:     pulumi.Any(\"strict\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Security Level\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"security_level\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"security_level\"),\n\t\t\tValue:     pulumi.Any(\"medium\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Cache Level\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"cache_level\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"cache_level\"),\n\t\t\tValue:     pulumi.Any(\"aggressive\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSetting;\nimport com.pulumi.cloudflare.ZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Minimum TLS Version\n        var minTls = new ZoneSetting(\"minTls\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"min_tls_version\")\n            .value(\"1.2\")\n            .build());\n\n        // SSL/TLS Mode\n        var ssl = new ZoneSetting(\"ssl\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"ssl\")\n            .value(\"strict\")\n            .build());\n\n        // Security Level\n        var securityLevel = new ZoneSetting(\"securityLevel\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"security_level\")\n            .value(\"medium\")\n            .build());\n\n        // Cache Level\n        var cacheLevel = new ZoneSetting(\"cacheLevel\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"cache_level\")\n            .value(\"aggressive\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Minimum TLS Version\n  minTls:\n    type: cloudflare:ZoneSetting\n    name: min_tls\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: min_tls_version\n      value: '1.2'\n  # SSL/TLS Mode\n  ssl:\n    type: cloudflare:ZoneSetting\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: ssl\n      value: strict\n  # Security Level\n  securityLevel:\n    type: cloudflare:ZoneSetting\n    name: security_level\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: security_level\n      value: medium\n  # Cache Level\n  cacheLevel:\n    type: cloudflare:ZoneSetting\n    name: cache_level\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: cache_level\n      value: aggressive\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Numeric Values\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\n// Browser Cache TTL\nconst browserCacheTtl = new cloudflare.ZoneSetting(\"browser_cache_ttl\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"browser_cache_ttl\",\n    value: 14400,\n});\n// Challenge TTL\nconst challengeTtl = new cloudflare.ZoneSetting(\"challenge_ttl\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"challenge_ttl\",\n    value: 1800,\n});\n// Max Upload Size\nconst maxUpload = new cloudflare.ZoneSetting(\"max_upload\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"max_upload\",\n    value: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\n# Browser Cache TTL\nbrowser_cache_ttl = cloudflare.ZoneSetting(\"browser_cache_ttl\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"browser_cache_ttl\",\n    value=14400)\n# Challenge TTL\nchallenge_ttl = cloudflare.ZoneSetting(\"challenge_ttl\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"challenge_ttl\",\n    value=1800)\n# Max Upload Size\nmax_upload = cloudflare.ZoneSetting(\"max_upload\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"max_upload\",\n    value=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Browser Cache TTL\n    var browserCacheTtl = new Cloudflare.Index.ZoneSetting(\"browser_cache_ttl\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"browser_cache_ttl\",\n        Value = 14400,\n    });\n\n    // Challenge TTL\n    var challengeTtl = new Cloudflare.Index.ZoneSetting(\"challenge_ttl\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"challenge_ttl\",\n        Value = 1800,\n    });\n\n    // Max Upload Size\n    var maxUpload = new Cloudflare.Index.ZoneSetting(\"max_upload\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"max_upload\",\n        Value = 100,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Browser Cache TTL\n\t\t_, err := cloudflare.NewZoneSetting(ctx, \"browser_cache_ttl\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"browser_cache_ttl\"),\n\t\t\tValue:     pulumi.Any(14400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Challenge TTL\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"challenge_ttl\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"challenge_ttl\"),\n\t\t\tValue:     pulumi.Any(1800),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Max Upload Size\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"max_upload\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"max_upload\"),\n\t\t\tValue:     pulumi.Any(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSetting;\nimport com.pulumi.cloudflare.ZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Browser Cache TTL\n        var browserCacheTtl = new ZoneSetting(\"browserCacheTtl\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"browser_cache_ttl\")\n            .value(14400)\n            .build());\n\n        // Challenge TTL\n        var challengeTtl = new ZoneSetting(\"challengeTtl\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"challenge_ttl\")\n            .value(1800)\n            .build());\n\n        // Max Upload Size\n        var maxUpload = new ZoneSetting(\"maxUpload\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"max_upload\")\n            .value(100)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Browser Cache TTL\n  browserCacheTtl:\n    type: cloudflare:ZoneSetting\n    name: browser_cache_ttl\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: browser_cache_ttl\n      value: 14400 # Seconds (4 hours). Common values: 30, 60, 120, 300, 1200, 1800, 3600, 7200, 10800, 14400, 18000, 28800, 43200, 57600, 72000, 86400, 172800, 259200, 345600, 432000, 691200, 1382400, 2073600, 2678400, 5356800, 16070400, 31536000\n  # Challenge TTL\n  challengeTtl:\n    type: cloudflare:ZoneSetting\n    name: challenge_ttl\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: challenge_ttl\n      value: 1800 # Seconds (30 minutes). Range: 300-2592000\n  # Max Upload Size\n  maxUpload:\n    type: cloudflare:ZoneSetting\n    name: max_upload\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: max_upload\n      value: 100 # MB. Range: 1-5000 (depending on plan)\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Special Cases\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\n// 0-RTT (Zero Round Trip Time)\nconst zeroRtt = new cloudflare.ZoneSetting(\"zero_rtt\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"0rtt\",\n    value: \"on\",\n});\n// Network Error Logging (NEL)\nconst nel = new cloudflare.ZoneSetting(\"nel\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"nel\",\n    value: {\n        enabled: true,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\n# 0-RTT (Zero Round Trip Time)\nzero_rtt = cloudflare.ZoneSetting(\"zero_rtt\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"0rtt\",\n    value=\"on\")\n# Network Error Logging (NEL)\nnel = cloudflare.ZoneSetting(\"nel\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"nel\",\n    value={\n        \"enabled\": True,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // 0-RTT (Zero Round Trip Time)\n    var zeroRtt = new Cloudflare.Index.ZoneSetting(\"zero_rtt\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"0rtt\",\n        Value = \"on\",\n    });\n\n    // Network Error Logging (NEL)\n    var nel = new Cloudflare.Index.ZoneSetting(\"nel\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"nel\",\n        Value = new Dictionary\u003cstring, object?\u003e\n        {\n            [\"enabled\"] = true,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// 0-RTT (Zero Round Trip Time)\n\t\t_, err := cloudflare.NewZoneSetting(ctx, \"zero_rtt\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"0rtt\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Network Error Logging (NEL)\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"nel\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: pulumi.String(\"nel\"),\n\t\t\tValue: pulumi.Any(map[string]interface{}{\n\t\t\t\t\"enabled\": true,\n\t\t\t}),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSetting;\nimport com.pulumi.cloudflare.ZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // 0-RTT (Zero Round Trip Time)\n        var zeroRtt = new ZoneSetting(\"zeroRtt\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"0rtt\")\n            .value(\"on\")\n            .build());\n\n        // Network Error Logging (NEL)\n        var nel = new ZoneSetting(\"nel\", ZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"nel\")\n            .value(Map.of(\"enabled\", true))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # 0-RTT (Zero Round Trip Time)\n  zeroRtt:\n    type: cloudflare:ZoneSetting\n    name: zero_rtt\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: 0rtt\n      value: on\n  # Network Error Logging (NEL)\n  nel:\n    type: cloudflare:ZoneSetting\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      settingId: nel\n      value:\n        enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Common Configuration Sets\n\n### Security Hardening Configuration\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\n// Enable HTTPS everywhere\nconst alwaysUseHttps = new cloudflare.ZoneSetting(\"always_use_https\", {\n    zoneId: zoneId,\n    settingId: \"always_use_https\",\n    value: \"on\",\n});\n// Automatic HTTPS Rewrites\nconst automaticHttpsRewrites = new cloudflare.ZoneSetting(\"automatic_https_rewrites\", {\n    zoneId: zoneId,\n    settingId: \"automatic_https_rewrites\",\n    value: \"on\",\n});\n// Minimum TLS 1.2\nconst minTlsVersion = new cloudflare.ZoneSetting(\"min_tls_version\", {\n    zoneId: zoneId,\n    settingId: \"min_tls_version\",\n    value: \"1.2\",\n});\n// Enable TLS 1.3\nconst tls13 = new cloudflare.ZoneSetting(\"tls_1_3\", {\n    zoneId: zoneId,\n    settingId: \"tls_1_3\",\n    value: \"on\",\n});\n// Strict SSL\nconst ssl = new cloudflare.ZoneSetting(\"ssl\", {\n    zoneId: zoneId,\n    settingId: \"ssl\",\n    value: \"strict\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\n# Enable HTTPS everywhere\nalways_use_https = cloudflare.ZoneSetting(\"always_use_https\",\n    zone_id=zone_id,\n    setting_id=\"always_use_https\",\n    value=\"on\")\n# Automatic HTTPS Rewrites\nautomatic_https_rewrites = cloudflare.ZoneSetting(\"automatic_https_rewrites\",\n    zone_id=zone_id,\n    setting_id=\"automatic_https_rewrites\",\n    value=\"on\")\n# Minimum TLS 1.2\nmin_tls_version = cloudflare.ZoneSetting(\"min_tls_version\",\n    zone_id=zone_id,\n    setting_id=\"min_tls_version\",\n    value=\"1.2\")\n# Enable TLS 1.3\ntls13 = cloudflare.ZoneSetting(\"tls_1_3\",\n    zone_id=zone_id,\n    setting_id=\"tls_1_3\",\n    value=\"on\")\n# Strict SSL\nssl = cloudflare.ZoneSetting(\"ssl\",\n    zone_id=zone_id,\n    setting_id=\"ssl\",\n    value=\"strict\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Enable HTTPS everywhere\n    var alwaysUseHttps = new Cloudflare.Index.ZoneSetting(\"always_use_https\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"always_use_https\",\n        Value = \"on\",\n    });\n\n    // Automatic HTTPS Rewrites\n    var automaticHttpsRewrites = new Cloudflare.Index.ZoneSetting(\"automatic_https_rewrites\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"automatic_https_rewrites\",\n        Value = \"on\",\n    });\n\n    // Minimum TLS 1.2\n    var minTlsVersion = new Cloudflare.Index.ZoneSetting(\"min_tls_version\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"min_tls_version\",\n        Value = \"1.2\",\n    });\n\n    // Enable TLS 1.3\n    var tls13 = new Cloudflare.Index.ZoneSetting(\"tls_1_3\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"tls_1_3\",\n        Value = \"on\",\n    });\n\n    // Strict SSL\n    var ssl = new Cloudflare.Index.ZoneSetting(\"ssl\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"ssl\",\n        Value = \"strict\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Enable HTTPS everywhere\n\t\t_, err := cloudflare.NewZoneSetting(ctx, \"always_use_https\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"always_use_https\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Automatic HTTPS Rewrites\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"automatic_https_rewrites\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"automatic_https_rewrites\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Minimum TLS 1.2\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"min_tls_version\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"min_tls_version\"),\n\t\t\tValue:     pulumi.Any(\"1.2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Enable TLS 1.3\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"tls_1_3\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"tls_1_3\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Strict SSL\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"ssl\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"ssl\"),\n\t\t\tValue:     pulumi.Any(\"strict\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSetting;\nimport com.pulumi.cloudflare.ZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Enable HTTPS everywhere\n        var alwaysUseHttps = new ZoneSetting(\"alwaysUseHttps\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"always_use_https\")\n            .value(\"on\")\n            .build());\n\n        // Automatic HTTPS Rewrites\n        var automaticHttpsRewrites = new ZoneSetting(\"automaticHttpsRewrites\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"automatic_https_rewrites\")\n            .value(\"on\")\n            .build());\n\n        // Minimum TLS 1.2\n        var minTlsVersion = new ZoneSetting(\"minTlsVersion\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"min_tls_version\")\n            .value(\"1.2\")\n            .build());\n\n        // Enable TLS 1.3\n        var tls13 = new ZoneSetting(\"tls13\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"tls_1_3\")\n            .value(\"on\")\n            .build());\n\n        // Strict SSL\n        var ssl = new ZoneSetting(\"ssl\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"ssl\")\n            .value(\"strict\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Enable HTTPS everywhere\n  alwaysUseHttps:\n    type: cloudflare:ZoneSetting\n    name: always_use_https\n    properties:\n      zoneId: ${zoneId}\n      settingId: always_use_https\n      value: on\n  # Automatic HTTPS Rewrites\n  automaticHttpsRewrites:\n    type: cloudflare:ZoneSetting\n    name: automatic_https_rewrites\n    properties:\n      zoneId: ${zoneId}\n      settingId: automatic_https_rewrites\n      value: on\n  # Minimum TLS 1.2\n  minTlsVersion:\n    type: cloudflare:ZoneSetting\n    name: min_tls_version\n    properties:\n      zoneId: ${zoneId}\n      settingId: min_tls_version\n      value: '1.2'\n  # Enable TLS 1.3\n  tls13:\n    type: cloudflare:ZoneSetting\n    name: tls_1_3\n    properties:\n      zoneId: ${zoneId}\n      settingId: tls_1_3\n      value: on\n  # Strict SSL\n  ssl:\n    type: cloudflare:ZoneSetting\n    properties:\n      zoneId: ${zoneId}\n      settingId: ssl\n      value: strict\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Performance Optimization Configuration\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\n// Enable HTTP/3\nconst http3 = new cloudflare.ZoneSetting(\"http3\", {\n    zoneId: zoneId,\n    settingId: \"http3\",\n    value: \"on\",\n});\n// Enable Brotli Compression\nconst brotli = new cloudflare.ZoneSetting(\"brotli\", {\n    zoneId: zoneId,\n    settingId: \"brotli\",\n    value: \"on\",\n});\n// Early Hints\nconst earlyHints = new cloudflare.ZoneSetting(\"early_hints\", {\n    zoneId: zoneId,\n    settingId: \"early_hints\",\n    value: \"on\",\n});\n// Aggressive Caching\nconst cacheLevel = new cloudflare.ZoneSetting(\"cache_level\", {\n    zoneId: zoneId,\n    settingId: \"cache_level\",\n    value: \"aggressive\",\n});\n// Browser Cache TTL\nconst browserCache = new cloudflare.ZoneSetting(\"browser_cache\", {\n    zoneId: zoneId,\n    settingId: \"browser_cache_ttl\",\n    value: 14400,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\n# Enable HTTP/3\nhttp3 = cloudflare.ZoneSetting(\"http3\",\n    zone_id=zone_id,\n    setting_id=\"http3\",\n    value=\"on\")\n# Enable Brotli Compression\nbrotli = cloudflare.ZoneSetting(\"brotli\",\n    zone_id=zone_id,\n    setting_id=\"brotli\",\n    value=\"on\")\n# Early Hints\nearly_hints = cloudflare.ZoneSetting(\"early_hints\",\n    zone_id=zone_id,\n    setting_id=\"early_hints\",\n    value=\"on\")\n# Aggressive Caching\ncache_level = cloudflare.ZoneSetting(\"cache_level\",\n    zone_id=zone_id,\n    setting_id=\"cache_level\",\n    value=\"aggressive\")\n# Browser Cache TTL\nbrowser_cache = cloudflare.ZoneSetting(\"browser_cache\",\n    zone_id=zone_id,\n    setting_id=\"browser_cache_ttl\",\n    value=14400)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Enable HTTP/3\n    var http3 = new Cloudflare.Index.ZoneSetting(\"http3\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"http3\",\n        Value = \"on\",\n    });\n\n    // Enable Brotli Compression\n    var brotli = new Cloudflare.Index.ZoneSetting(\"brotli\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"brotli\",\n        Value = \"on\",\n    });\n\n    // Early Hints\n    var earlyHints = new Cloudflare.Index.ZoneSetting(\"early_hints\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"early_hints\",\n        Value = \"on\",\n    });\n\n    // Aggressive Caching\n    var cacheLevel = new Cloudflare.Index.ZoneSetting(\"cache_level\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"cache_level\",\n        Value = \"aggressive\",\n    });\n\n    // Browser Cache TTL\n    var browserCache = new Cloudflare.Index.ZoneSetting(\"browser_cache\", new()\n    {\n        ZoneId = zoneId,\n        SettingId = \"browser_cache_ttl\",\n        Value = 14400,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Enable HTTP/3\n\t\t_, err := cloudflare.NewZoneSetting(ctx, \"http3\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"http3\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Enable Brotli Compression\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"brotli\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"brotli\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Early Hints\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"early_hints\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"early_hints\"),\n\t\t\tValue:     pulumi.Any(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Aggressive Caching\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"cache_level\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"cache_level\"),\n\t\t\tValue:     pulumi.Any(\"aggressive\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Browser Cache TTL\n\t\t_, err = cloudflare.NewZoneSetting(ctx, \"browser_cache\", \u0026cloudflare.ZoneSettingArgs{\n\t\t\tZoneId:    pulumi.Any(zoneId),\n\t\t\tSettingId: pulumi.String(\"browser_cache_ttl\"),\n\t\t\tValue:     pulumi.Any(14400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSetting;\nimport com.pulumi.cloudflare.ZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Enable HTTP/3\n        var http3 = new ZoneSetting(\"http3\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"http3\")\n            .value(\"on\")\n            .build());\n\n        // Enable Brotli Compression\n        var brotli = new ZoneSetting(\"brotli\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"brotli\")\n            .value(\"on\")\n            .build());\n\n        // Early Hints\n        var earlyHints = new ZoneSetting(\"earlyHints\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"early_hints\")\n            .value(\"on\")\n            .build());\n\n        // Aggressive Caching\n        var cacheLevel = new ZoneSetting(\"cacheLevel\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"cache_level\")\n            .value(\"aggressive\")\n            .build());\n\n        // Browser Cache TTL\n        var browserCache = new ZoneSetting(\"browserCache\", ZoneSettingArgs.builder()\n            .zoneId(zoneId)\n            .settingId(\"browser_cache_ttl\")\n            .value(14400)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Enable HTTP/3\n  http3:\n    type: cloudflare:ZoneSetting\n    properties:\n      zoneId: ${zoneId}\n      settingId: http3\n      value: on\n  # Enable Brotli Compression\n  brotli:\n    type: cloudflare:ZoneSetting\n    properties:\n      zoneId: ${zoneId}\n      settingId: brotli\n      value: on\n  # Early Hints\n  earlyHints:\n    type: cloudflare:ZoneSetting\n    name: early_hints\n    properties:\n      zoneId: ${zoneId}\n      settingId: early_hints\n      value: on\n  # Aggressive Caching\n  cacheLevel:\n    type: cloudflare:ZoneSetting\n    name: cache_level\n    properties:\n      zoneId: ${zoneId}\n      settingId: cache_level\n      value: aggressive\n  # Browser Cache TTL\n  browserCache:\n    type: cloudflare:ZoneSetting\n    name: browser_cache\n    properties:\n      zoneId: ${zoneId}\n      settingId: browser_cache_ttl\n      value: 14400 # 4 hours\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneSetting:ZoneSetting example '\u003czone_id\u003e/\u003csetting_id\u003e'\n```\n\n",
            "properties": {
                "editable": {
                    "type": "boolean",
                    "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level).\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "ssl-recommender enrollment setting.\n"
                },
                "modifiedOn": {
                    "type": "string",
                    "description": "last time this setting was modified.\n"
                },
                "settingId": {
                    "type": "string",
                    "description": "Setting name\n"
                },
                "timeRemaining": {
                    "type": "number",
                    "description": "Value of the zone setting.\nNotes: The interval (in seconds) from when development mode expires (positive integer) or last expired (negative integer) for the domain. If development mode has never been enabled, this value is false.\n"
                },
                "value": {
                    "$ref": "pulumi.json#/Any",
                    "description": "Current value of the zone setting.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "required": [
                "editable",
                "enabled",
                "modifiedOn",
                "settingId",
                "timeRemaining",
                "value"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "ssl-recommender enrollment setting.\n"
                },
                "settingId": {
                    "type": "string",
                    "description": "Setting name\n"
                },
                "value": {
                    "$ref": "pulumi.json#/Any",
                    "description": "Current value of the zone setting.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "requiredInputs": [
                "settingId",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneSetting resources.\n",
                "properties": {
                    "editable": {
                        "type": "boolean",
                        "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level).\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "ssl-recommender enrollment setting.\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "last time this setting was modified.\n"
                    },
                    "settingId": {
                        "type": "string",
                        "description": "Setting name\n"
                    },
                    "timeRemaining": {
                        "type": "number",
                        "description": "Value of the zone setting.\nNotes: The interval (in seconds) from when development mode expires (positive integer) or last expired (negative integer) for the domain. If development mode has never been enabled, this value is false.\n"
                    },
                    "value": {
                        "$ref": "pulumi.json#/Any",
                        "description": "Current value of the zone setting.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            }
        },
        "cloudflare:index/zoneSubscription:ZoneSubscription": {
            "description": "Accepted Permissions\n\n- `Billing Read`\n- `Billing Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneSubscription = new cloudflare.ZoneSubscription(\"example_zone_subscription\", {\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    frequency: \"monthly\",\n    ratePlan: {\n        id: \"free\",\n        currency: \"USD\",\n        externallyManaged: false,\n        isContract: false,\n        publicName: \"Business Plan\",\n        scope: \"zone\",\n        sets: [\"string\"],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_subscription = cloudflare.ZoneSubscription(\"example_zone_subscription\",\n    zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    frequency=\"monthly\",\n    rate_plan={\n        \"id\": \"free\",\n        \"currency\": \"USD\",\n        \"externally_managed\": False,\n        \"is_contract\": False,\n        \"public_name\": \"Business Plan\",\n        \"scope\": \"zone\",\n        \"sets\": [\"string\"],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneSubscription = new Cloudflare.Index.ZoneSubscription(\"example_zone_subscription\", new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Frequency = \"monthly\",\n        RatePlan = new Cloudflare.Inputs.ZoneSubscriptionRatePlanArgs\n        {\n            Id = \"free\",\n            Currency = \"USD\",\n            ExternallyManaged = false,\n            IsContract = false,\n            PublicName = \"Business Plan\",\n            Scope = \"zone\",\n            Sets = new[]\n            {\n                \"string\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.NewZoneSubscription(ctx, \"example_zone_subscription\", \u0026cloudflare.ZoneSubscriptionArgs{\n\t\t\tZoneId:    pulumi.String(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFrequency: pulumi.String(\"monthly\"),\n\t\t\tRatePlan: \u0026cloudflare.ZoneSubscriptionRatePlanArgs{\n\t\t\t\tId:                pulumi.String(\"free\"),\n\t\t\t\tCurrency:          pulumi.String(\"USD\"),\n\t\t\t\tExternallyManaged: pulumi.Bool(false),\n\t\t\t\tIsContract:        pulumi.Bool(false),\n\t\t\t\tPublicName:        pulumi.String(\"Business Plan\"),\n\t\t\t\tScope:             pulumi.String(\"zone\"),\n\t\t\t\tSets: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.ZoneSubscription;\nimport com.pulumi.cloudflare.ZoneSubscriptionArgs;\nimport com.pulumi.cloudflare.inputs.ZoneSubscriptionRatePlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleZoneSubscription = new ZoneSubscription(\"exampleZoneSubscription\", ZoneSubscriptionArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .frequency(\"monthly\")\n            .ratePlan(ZoneSubscriptionRatePlanArgs.builder()\n                .id(\"free\")\n                .currency(\"USD\")\n                .externallyManaged(false)\n                .isContract(false)\n                .publicName(\"Business Plan\")\n                .scope(\"zone\")\n                .sets(\"string\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleZoneSubscription:\n    type: cloudflare:ZoneSubscription\n    name: example_zone_subscription\n    properties:\n      zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n      frequency: monthly\n      ratePlan:\n        id: free\n        currency: USD\n        externallyManaged: false\n        isContract: false\n        publicName: Business Plan\n        scope: zone\n        sets:\n          - string\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import cloudflare:index/zoneSubscription:ZoneSubscription example '\u003czone_id\u003e'\n```\n\n",
            "properties": {
                "currency": {
                    "type": "string",
                    "description": "The monetary unit in which pricing information is displayed.\n"
                },
                "currentPeriodEnd": {
                    "type": "string",
                    "description": "The end of the current period and also when the next billing is due.\n"
                },
                "currentPeriodStart": {
                    "type": "string",
                    "description": "When the current billing period started. May match initial*period*start if this is the first period.\n"
                },
                "frequency": {
                    "type": "string",
                    "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\nNote: Some plans may not support frequency configuration and will return \"not-applicable\".\n"
                },
                "price": {
                    "type": "number",
                    "description": "The price of the subscription that will be billed, in US dollars.\n"
                },
                "ratePlan": {
                    "$ref": "#/types/cloudflare:index/ZoneSubscriptionRatePlan:ZoneSubscriptionRatePlan",
                    "description": "The rate plan applied to the subscription.\n"
                },
                "state": {
                    "type": "string",
                    "description": "The state that the subscription is in.\nAvailable values: \"Trial\", \"Provisioned\", \"Paid\", \"AwaitingPayment\", \"Cancelled\", \"Failed\", \"Expired\".\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "required": [
                "currency",
                "currentPeriodEnd",
                "currentPeriodStart",
                "frequency",
                "price",
                "ratePlan",
                "state",
                "zoneId"
            ],
            "inputProperties": {
                "frequency": {
                    "type": "string",
                    "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\nNote: Some plans may not support frequency configuration and will return \"not-applicable\".\n"
                },
                "ratePlan": {
                    "$ref": "#/types/cloudflare:index/ZoneSubscriptionRatePlan:ZoneSubscriptionRatePlan",
                    "description": "The rate plan applied to the subscription.\n"
                },
                "zoneId": {
                    "type": "string",
                    "description": "Identifier\n"
                }
            },
            "requiredInputs": [
                "zoneId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ZoneSubscription resources.\n",
                "properties": {
                    "currency": {
                        "type": "string",
                        "description": "The monetary unit in which pricing information is displayed.\n"
                    },
                    "currentPeriodEnd": {
                        "type": "string",
                        "description": "The end of the current period and also when the next billing is due.\n"
                    },
                    "currentPeriodStart": {
                        "type": "string",
                        "description": "When the current billing period started. May match initial*period*start if this is the first period.\n"
                    },
                    "frequency": {
                        "type": "string",
                        "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\nNote: Some plans may not support frequency configuration and will return \"not-applicable\".\n"
                    },
                    "price": {
                        "type": "number",
                        "description": "The price of the subscription that will be billed, in US dollars.\n"
                    },
                    "ratePlan": {
                        "$ref": "#/types/cloudflare:index/ZoneSubscriptionRatePlan:ZoneSubscriptionRatePlan",
                        "description": "The rate plan applied to the subscription.\n"
                    },
                    "state": {
                        "type": "string",
                        "description": "The state that the subscription is in.\nAvailable values: \"Trial\", \"Provisioned\", \"Paid\", \"AwaitingPayment\", \"Cancelled\", \"Failed\", \"Expired\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            }
        }
    },
    "functions": {
        "cloudflare:index/getAccessRule:getAccessRule": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccessRule = cloudflare.getAccessRule({\n    ruleId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_access_rule = cloudflare.get_access_rule(rule_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccessRule = Cloudflare.Index.GetAccessRule.Invoke(new()\n    {\n        RuleId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccessRule(ctx, \u0026cloudflare.LookupAccessRuleArgs{\n\t\t\tRuleId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccessRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccessRule = CloudflareFunctions.getAccessRule(GetAccessRuleArgs.builder()\n            .ruleId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccessRule:\n    fn::invoke:\n      function: cloudflare:getAccessRule\n      arguments:\n        ruleId: 023e105f4ecef8ad9ca31a8372d0c353\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccessRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccessRuleFilter:getAccessRuleFilter"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "Unique identifier for a rule.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccessRule.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "allowedModes": {
                        "description": "The available actions that a rule can apply to a matched request.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "configuration": {
                        "$ref": "#/types/cloudflare:index/getAccessRuleConfiguration:getAccessRuleConfiguration",
                        "description": "The rule configuration.\n"
                    },
                    "createdOn": {
                        "description": "The timestamp of when the rule was created.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccessRuleFilter:getAccessRuleFilter"
                    },
                    "id": {
                        "description": "Unique identifier for a rule.\n",
                        "type": "string"
                    },
                    "mode": {
                        "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "The timestamp of when the rule was last modified.\n",
                        "type": "string"
                    },
                    "notes": {
                        "description": "An informative summary of the rule, typically used as a reminder or explanation.\n",
                        "type": "string"
                    },
                    "ruleId": {
                        "description": "Unique identifier for a rule.\n",
                        "type": "string"
                    },
                    "scope": {
                        "$ref": "#/types/cloudflare:index/getAccessRuleScope:getAccessRuleScope",
                        "description": "All zones owned by the user will have the rule applied.\n"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "allowedModes",
                    "configuration",
                    "createdOn",
                    "id",
                    "mode",
                    "modifiedOn",
                    "notes",
                    "scope"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccessRules:getAccessRules": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccessRules = cloudflare.getAccessRules({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n    configuration: {\n        target: \"ip\",\n        value: \"198.51.100.4\",\n    },\n    direction: \"desc\",\n    mode: \"challenge\",\n    notes: \"my note\",\n    order: \"mode\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_access_rules = cloudflare.get_access_rules(account_id=\"account_id\",\n    zone_id=\"zone_id\",\n    configuration={\n        \"target\": \"ip\",\n        \"value\": \"198.51.100.4\",\n    },\n    direction=\"desc\",\n    mode=\"challenge\",\n    notes=\"my note\",\n    order=\"mode\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccessRules = Cloudflare.Index.GetAccessRules.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n        Configuration = new Cloudflare.Inputs.GetAccessRulesConfigurationInputArgs\n        {\n            Target = \"ip\",\n            Value = \"198.51.100.4\",\n        },\n        Direction = \"desc\",\n        Mode = \"challenge\",\n        Notes = \"my note\",\n        Order = \"mode\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccessRules(ctx, \u0026cloudflare.LookupAccessRulesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t\tConfiguration: cloudflare.GetAccessRulesConfiguration{\n\t\t\t\tTarget: pulumi.StringRef(\"ip\"),\n\t\t\t\tValue:  pulumi.StringRef(\"198.51.100.4\"),\n\t\t\t},\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t\tMode:      pulumi.StringRef(\"challenge\"),\n\t\t\tNotes:     pulumi.StringRef(\"my note\"),\n\t\t\tOrder:     pulumi.StringRef(\"mode\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccessRulesArgs;\nimport com.pulumi.cloudflare.inputs.GetAccessRulesConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccessRules = CloudflareFunctions.getAccessRules(GetAccessRulesArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .configuration(GetAccessRulesConfigurationArgs.builder()\n                .target(\"ip\")\n                .value(\"198.51.100.4\")\n                .build())\n            .direction(\"desc\")\n            .mode(\"challenge\")\n            .notes(\"my note\")\n            .order(\"mode\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccessRules:\n    fn::invoke:\n      function: cloudflare:getAccessRules\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n        configuration:\n          target: ip\n          value: 198.51.100.4\n        direction: desc\n        mode: challenge\n        notes: my note\n        order: mode\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccessRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "configuration": {
                        "$ref": "#/types/cloudflare:index/getAccessRulesConfiguration:getAccessRulesConfiguration"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Defines the direction used to sort returned rules.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "match": {
                        "type": "string",
                        "description": "Defines the search requirements. When set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, all the search requirements must match. When set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, only one of the search requirements has to match.\nAvailable values: \"any\", \"all\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "mode": {
                        "type": "string",
                        "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n"
                    },
                    "notes": {
                        "type": "string",
                        "description": "Defines the string to search for in the notes of existing IP Access rules.\nNotes: For example, the string 'attack' would match IP Access rules with notes 'Attack 26/02' and 'Attack 27/02'. The search is case insensitive.\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Defines the field used to sort returned rules.\nAvailable values: \"configuration.target\", \"configuration.value\", \"mode\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccessRules.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "configuration": {
                        "$ref": "#/types/cloudflare:index/getAccessRulesConfiguration:getAccessRulesConfiguration"
                    },
                    "direction": {
                        "description": "Defines the direction used to sort returned rules.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "match": {
                        "description": "Defines the search requirements. When set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, all the search requirements must match. When set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, only one of the search requirements has to match.\nAvailable values: \"any\", \"all\".\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "mode": {
                        "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"whitelist\", \"js*challenge\", \"managed*challenge\".\n",
                        "type": "string"
                    },
                    "notes": {
                        "description": "Defines the string to search for in the notes of existing IP Access rules.\nNotes: For example, the string 'attack' would match IP Access rules with notes 'Attack 26/02' and 'Attack 27/02'. The search is case insensitive.\n",
                        "type": "string"
                    },
                    "order": {
                        "description": "Defines the field used to sort returned rules.\nAvailable values: \"configuration.target\", \"configuration.value\", \"mode\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccessRulesResult:getAccessRulesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "match",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccount:getAccount": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Billing Read`\n- `Billing Write`\n- `DDoS Botnet Feed Read`\n- `DDoS Botnet Feed Write`\n- `DDoS Protection Read`\n- `DDoS Protection Write`\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n- `DNS View Read`\n- `DNS View Write`\n- `Load Balancers Account Read`\n- `Load Balancers Account Write`\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n- `SCIM Provisioning`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccount = cloudflare.getAccount({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account = cloudflare.get_account(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccount = Cloudflare.Index.GetAccount.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccount(ctx, \u0026cloudflare.LookupAccountArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccount = CloudflareFunctions.getAccount(GetAccountArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccount:\n    fn::invoke:\n      function: cloudflare:getAccount\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccount.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountFilter:getAccountFilter"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccount.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "Timestamp for the creation of the account\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountFilter:getAccountFilter"
                    },
                    "id": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "managedBy": {
                        "$ref": "#/types/cloudflare:index/getAccountManagedBy:getAccountManagedBy",
                        "description": "Parent container details\n"
                    },
                    "name": {
                        "description": "Account name\n",
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/getAccountSettings:getAccountSettings",
                        "description": "Account settings\n"
                    },
                    "type": {
                        "description": "Available values: \"standard\", \"enterprise\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "id",
                    "managedBy",
                    "name",
                    "settings",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountApiTokenPermissionGroups:getAccountApiTokenPermissionGroups": {
            "description": "Accepted Permissions\n\n- `Account API Tokens Read`\n- `Account API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountApiTokenPermissionGroups = cloudflare.getAccountApiTokenPermissionGroups({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"Account%20Settings%20Write\",\n    scope: \"com.cloudflare.api.account.zone\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_api_token_permission_groups = cloudflare.get_account_api_token_permission_groups(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"Account%20Settings%20Write\",\n    scope=\"com.cloudflare.api.account.zone\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountApiTokenPermissionGroups = Cloudflare.Index.GetAccountApiTokenPermissionGroups.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"Account%20Settings%20Write\",\n        Scope = \"com.cloudflare.api.account.zone\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountApiTokenPermissionGroups(ctx, \u0026cloudflare.GetAccountApiTokenPermissionGroupsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.StringRef(\"Account%20Settings%20Write\"),\n\t\t\tScope:     pulumi.StringRef(\"com.cloudflare.api.account.zone\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountApiTokenPermissionGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountApiTokenPermissionGroups = CloudflareFunctions.getAccountApiTokenPermissionGroups(GetAccountApiTokenPermissionGroupsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"Account%20Settings%20Write\")\n            .scope(\"com.cloudflare.api.account.zone\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountApiTokenPermissionGroups:\n    fn::invoke:\n      function: cloudflare:getAccountApiTokenPermissionGroups\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        name: Account%20Settings%20Write\n        scope: com.cloudflare.api.account.zone\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountApiTokenPermissionGroups.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Filter by the name of the permission group.\nThe value must be URL-encoded.\n"
                    },
                    "scope": {
                        "type": "string",
                        "description": "Filter by the scope of the permission group.\nThe value must be URL-encoded.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountApiTokenPermissionGroups.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "name": {
                        "description": "Filter by the name of the permission group.\nThe value must be URL-encoded.\n",
                        "type": "string"
                    },
                    "permissionGroups": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountApiTokenPermissionGroupsPermissionGroup:getAccountApiTokenPermissionGroupsPermissionGroup"
                        },
                        "type": "array"
                    },
                    "scope": {
                        "description": "Filter by the scope of the permission group.\nThe value must be URL-encoded.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "permissionGroups",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountApiTokenPermissionGroupsList:getAccountApiTokenPermissionGroupsList": {
            "description": "Accepted Permissions\n\n- `Account API Tokens Read`\n- `Account API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountApiTokenPermissionGroupsList = cloudflare.getAccountApiTokenPermissionGroupsList({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"Account%20Settings%20Write\",\n    scope: \"com.cloudflare.api.account.zone\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_api_token_permission_groups_list = cloudflare.get_account_api_token_permission_groups_list(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"Account%20Settings%20Write\",\n    scope=\"com.cloudflare.api.account.zone\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountApiTokenPermissionGroupsList = Cloudflare.Index.GetAccountApiTokenPermissionGroupsList.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"Account%20Settings%20Write\",\n        Scope = \"com.cloudflare.api.account.zone\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountApiTokenPermissionGroupsList(ctx, \u0026cloudflare.LookupAccountApiTokenPermissionGroupsListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.StringRef(\"Account%20Settings%20Write\"),\n\t\t\tScope:     pulumi.StringRef(\"com.cloudflare.api.account.zone\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountApiTokenPermissionGroupsListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountApiTokenPermissionGroupsList = CloudflareFunctions.getAccountApiTokenPermissionGroupsList(GetAccountApiTokenPermissionGroupsListArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"Account%20Settings%20Write\")\n            .scope(\"com.cloudflare.api.account.zone\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountApiTokenPermissionGroupsList:\n    fn::invoke:\n      function: cloudflare:getAccountApiTokenPermissionGroupsList\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        name: Account%20Settings%20Write\n        scope: com.cloudflare.api.account.zone\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountApiTokenPermissionGroupsList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Filter by the name of the permission group.\nThe value must be URL-encoded.\n"
                    },
                    "scope": {
                        "type": "string",
                        "description": "Filter by the scope of the permission group.\nThe value must be URL-encoded.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountApiTokenPermissionGroupsList.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Filter by the name of the permission group.\nThe value must be URL-encoded.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountApiTokenPermissionGroupsListResult:getAccountApiTokenPermissionGroupsListResult"
                        },
                        "type": "array"
                    },
                    "scope": {
                        "description": "Filter by the scope of the permission group.\nThe value must be URL-encoded.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountDnsSettings:getAccountDnsSettings": {
            "description": "Accepted Permissions\n\n- `Account DNS Settings Read`\n- `Account DNS Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountDnsSettings = cloudflare.getAccountDnsSettings({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_dns_settings = cloudflare.get_account_dns_settings(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountDnsSettings = Cloudflare.Index.GetAccountDnsSettings.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountDnsSettings(ctx, \u0026cloudflare.LookupAccountDnsSettingsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountDnsSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountDnsSettings = CloudflareFunctions.getAccountDnsSettings(GetAccountDnsSettingsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountDnsSettings:\n    fn::invoke:\n      function: cloudflare:getAccountDnsSettings\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountDnsSettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountDnsSettings.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "enforceDnsOnly": {
                        "description": "When enabled, forces all proxied DNS records in the account to behave as DNS-only at the edge, regardless of each record's individual proxy setting. Note that this account-level override does not modify the records themselves; it only affects how they are served at the edge. See more on [Enforce DNS-only](https://developers.cloudflare.com/dns/proxy-status/enforce-dns-only).\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "zoneDefaults": {
                        "$ref": "#/types/cloudflare:index/getAccountDnsSettingsZoneDefaults:getAccountDnsSettingsZoneDefaults"
                    }
                },
                "required": [
                    "enforceDnsOnly",
                    "zoneDefaults",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountDnsSettingsInternalView:getAccountDnsSettingsInternalView": {
            "description": "Accepted Permissions\n\n- `DNS View Read`\n- `DNS View Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountDnsSettingsInternalView = cloudflare.getAccountDnsSettingsInternalView({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    viewId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_dns_settings_internal_view = cloudflare.get_account_dns_settings_internal_view(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    view_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountDnsSettingsInternalView = Cloudflare.Index.GetAccountDnsSettingsInternalView.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ViewId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountDnsSettingsInternalView(ctx, \u0026cloudflare.LookupAccountDnsSettingsInternalViewArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tViewId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountDnsSettingsInternalViewArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountDnsSettingsInternalView = CloudflareFunctions.getAccountDnsSettingsInternalView(GetAccountDnsSettingsInternalViewArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .viewId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountDnsSettingsInternalView:\n    fn::invoke:\n      function: cloudflare:getAccountDnsSettingsInternalView\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        viewId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountDnsSettingsInternalView.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountDnsSettingsInternalViewFilter:getAccountDnsSettingsInternalViewFilter"
                    },
                    "viewId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountDnsSettingsInternalView.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "createdTime": {
                        "description": "When the view was created.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountDnsSettingsInternalViewFilter:getAccountDnsSettingsInternalViewFilter"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedTime": {
                        "description": "When the view was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the view.\n",
                        "type": "string"
                    },
                    "viewId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "zones": {
                        "description": "The list of zones linked to this view.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "createdTime",
                    "id",
                    "modifiedTime",
                    "name",
                    "zones"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountDnsSettingsInternalViews:getAccountDnsSettingsInternalViews": {
            "description": "Accepted Permissions\n\n- `DNS View Read`\n- `DNS View Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountDnsSettingsInternalViews = cloudflare.getAccountDnsSettingsInternalViews({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: {\n        contains: \"view\",\n        endswith: \"ew\",\n        exact: \"my view\",\n        startswith: \"my\",\n    },\n    order: \"name\",\n    zoneId: \"ae29bea30e2e427ba9cd8d78b628177b\",\n    zoneName: \"www.example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_dns_settings_internal_views = cloudflare.get_account_dns_settings_internal_views(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name={\n        \"contains\": \"view\",\n        \"endswith\": \"ew\",\n        \"exact\": \"my view\",\n        \"startswith\": \"my\",\n    },\n    order=\"name\",\n    zone_id=\"ae29bea30e2e427ba9cd8d78b628177b\",\n    zone_name=\"www.example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountDnsSettingsInternalViews = Cloudflare.Index.GetAccountDnsSettingsInternalViews.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = new Cloudflare.Inputs.GetAccountDnsSettingsInternalViewsNameInputArgs\n        {\n            Contains = \"view\",\n            Endswith = \"ew\",\n            Exact = \"my view\",\n            Startswith = \"my\",\n        },\n        Order = \"name\",\n        ZoneId = \"ae29bea30e2e427ba9cd8d78b628177b\",\n        ZoneName = \"www.example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountDnsSettingsInternalViews(ctx, \u0026cloudflare.LookupAccountDnsSettingsInternalViewsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName: cloudflare.GetAccountDnsSettingsInternalViewsName{\n\t\t\t\tContains:   pulumi.StringRef(\"view\"),\n\t\t\t\tEndswith:   pulumi.StringRef(\"ew\"),\n\t\t\t\tExact:      pulumi.StringRef(\"my view\"),\n\t\t\t\tStartswith: pulumi.StringRef(\"my\"),\n\t\t\t},\n\t\t\tOrder:    pulumi.StringRef(\"name\"),\n\t\t\tZoneId:   pulumi.StringRef(\"ae29bea30e2e427ba9cd8d78b628177b\"),\n\t\t\tZoneName: pulumi.StringRef(\"www.example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountDnsSettingsInternalViewsArgs;\nimport com.pulumi.cloudflare.inputs.GetAccountDnsSettingsInternalViewsNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountDnsSettingsInternalViews = CloudflareFunctions.getAccountDnsSettingsInternalViews(GetAccountDnsSettingsInternalViewsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(GetAccountDnsSettingsInternalViewsNameArgs.builder()\n                .contains(\"view\")\n                .endswith(\"ew\")\n                .exact(\"my view\")\n                .startswith(\"my\")\n                .build())\n            .order(\"name\")\n            .zoneId(\"ae29bea30e2e427ba9cd8d78b628177b\")\n            .zoneName(\"www.example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountDnsSettingsInternalViews:\n    fn::invoke:\n      function: cloudflare:getAccountDnsSettingsInternalViews\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        name:\n          contains: view\n          endswith: ew\n          exact: my view\n          startswith: my\n        order: name\n        zoneId: ae29bea30e2e427ba9cd8d78b628177b\n        zoneName: www.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountDnsSettingsInternalViews.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order DNS views in.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "match": {
                        "type": "string",
                        "description": "Whether to match all search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead.\nAvailable values: \"any\", \"all\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "$ref": "#/types/cloudflare:index/getAccountDnsSettingsInternalViewsName:getAccountDnsSettingsInternalViewsName"
                    },
                    "order": {
                        "type": "string",
                        "description": "Field to order DNS views by.\nAvailable values: \"name\", \"created*on\", \"modified*on\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "A zone ID that exists in the zones list for the view.\n"
                    },
                    "zoneName": {
                        "type": "string",
                        "description": "A zone name that exists in the zones list for the view.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountDnsSettingsInternalViews.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Direction to order DNS views in.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "match": {
                        "description": "Whether to match all search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead.\nAvailable values: \"any\", \"all\".\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "$ref": "#/types/cloudflare:index/getAccountDnsSettingsInternalViewsName:getAccountDnsSettingsInternalViewsName"
                    },
                    "order": {
                        "description": "Field to order DNS views by.\nAvailable values: \"name\", \"created*on\", \"modified*on\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountDnsSettingsInternalViewsResult:getAccountDnsSettingsInternalViewsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "A zone ID that exists in the zones list for the view.\n",
                        "type": "string"
                    },
                    "zoneName": {
                        "description": "A zone name that exists in the zones list for the view.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "direction",
                    "match",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountMember:getAccountMember": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountMember = cloudflare.getAccountMember({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    memberId: \"4536bcfad5faccb111b47003c79917fa\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_member = cloudflare.get_account_member(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    member_id=\"4536bcfad5faccb111b47003c79917fa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountMember = Cloudflare.Index.GetAccountMember.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        MemberId = \"4536bcfad5faccb111b47003c79917fa\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountMember(ctx, \u0026cloudflare.LookupAccountMemberArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tMemberId:  pulumi.StringRef(\"4536bcfad5faccb111b47003c79917fa\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountMember = CloudflareFunctions.getAccountMember(GetAccountMemberArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .memberId(\"4536bcfad5faccb111b47003c79917fa\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountMember:\n    fn::invoke:\n      function: cloudflare:getAccountMember\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        memberId: 4536bcfad5faccb111b47003c79917fa\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountMember.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberFilter:getAccountMemberFilter"
                    },
                    "memberId": {
                        "type": "string",
                        "description": "Membership identifier tag.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountMember.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "email": {
                        "description": "The contact email address of the user.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberFilter:getAccountMemberFilter"
                    },
                    "id": {
                        "description": "Membership identifier tag.\n",
                        "type": "string"
                    },
                    "memberId": {
                        "description": "Membership identifier tag.\n",
                        "type": "string"
                    },
                    "policies": {
                        "description": "Access policy for the membership\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountMemberPolicy:getAccountMemberPolicy"
                        },
                        "type": "array"
                    },
                    "roles": {
                        "description": "Roles assigned to this Member.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountMemberRole:getAccountMemberRole"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "A member's status in the account.\nAvailable values: \"accepted\", \"pending\".\n",
                        "type": "string"
                    },
                    "user": {
                        "$ref": "#/types/cloudflare:index/getAccountMemberUser:getAccountMemberUser",
                        "description": "Details of the user associated to the membership.\n"
                    }
                },
                "required": [
                    "email",
                    "id",
                    "policies",
                    "roles",
                    "status",
                    "user"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountMembers:getAccountMembers": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountMembers = cloudflare.getAccountMembers({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"desc\",\n    order: \"status\",\n    status: \"accepted\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_members = cloudflare.get_account_members(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"desc\",\n    order=\"status\",\n    status=\"accepted\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountMembers = Cloudflare.Index.GetAccountMembers.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"desc\",\n        Order = \"status\",\n        Status = \"accepted\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountMembers(ctx, \u0026cloudflare.LookupAccountMembersArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t\tOrder:     pulumi.StringRef(\"status\"),\n\t\t\tStatus:    pulumi.StringRef(\"accepted\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountMembersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountMembers = CloudflareFunctions.getAccountMembers(GetAccountMembersArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"desc\")\n            .order(\"status\")\n            .status(\"accepted\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountMembers:\n    fn::invoke:\n      function: cloudflare:getAccountMembers\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: desc\n        order: status\n        status: accepted\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountMembers.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Field to order results by.\nAvailable values: \"user.first*name\", \"user.last*name\", \"user.email\", \"status\".\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "A member's status in the account.\nAvailable values: \"accepted\", \"pending\", \"rejected\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountMembers.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "Field to order results by.\nAvailable values: \"user.first*name\", \"user.last*name\", \"user.email\", \"status\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountMembersResult:getAccountMembersResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "A member's status in the account.\nAvailable values: \"accepted\", \"pending\", \"rejected\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountPermissionGroup:getAccountPermissionGroup": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Billing Read`\n- `Billing Write`\n- `DDoS Botnet Feed Read`\n- `DDoS Botnet Feed Write`\n- `DDoS Protection Read`\n- `DDoS Protection Write`\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n- `DNS View Read`\n- `DNS View Write`\n- `Load Balancers Account Read`\n- `Load Balancers Account Write`\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n- `SCIM Provisioning`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountPermissionGroup = cloudflare.getAccountPermissionGroup({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    permissionGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_permission_group = cloudflare.get_account_permission_group(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    permission_group_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountPermissionGroup = Cloudflare.Index.GetAccountPermissionGroup.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PermissionGroupId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountPermissionGroup(ctx, \u0026cloudflare.GetAccountPermissionGroupArgs{\n\t\t\tAccountId:         pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPermissionGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountPermissionGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountPermissionGroup = CloudflareFunctions.getAccountPermissionGroup(GetAccountPermissionGroupArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .permissionGroupId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountPermissionGroup:\n    fn::invoke:\n      function: cloudflare:getAccountPermissionGroup\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        permissionGroupId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountPermissionGroup.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "permissionGroupId": {
                        "type": "string",
                        "description": "Permission Group identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "permissionGroupId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAccountPermissionGroup.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier of the permission group.\n",
                        "type": "string"
                    },
                    "meta": {
                        "$ref": "#/types/cloudflare:index/getAccountPermissionGroupMeta:getAccountPermissionGroupMeta",
                        "description": "Attributes associated to the permission group.\n"
                    },
                    "name": {
                        "description": "Name of the permission group.\n",
                        "type": "string"
                    },
                    "permissionGroupId": {
                        "description": "Permission Group identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "meta",
                    "name",
                    "permissionGroupId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountPermissionGroups:getAccountPermissionGroups": {
            "description": "Accepted Permissions\n\n- `Account Firewall Access Rules Read`\n- `Account Firewall Access Rules Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Billing Read`\n- `Billing Write`\n- `DDoS Botnet Feed Read`\n- `DDoS Botnet Feed Write`\n- `DDoS Protection Read`\n- `DDoS Protection Write`\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n- `DNS View Read`\n- `DNS View Write`\n- `Load Balancers Account Read`\n- `Load Balancers Account Write`\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n- `SCIM Provisioning`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountPermissionGroups = cloudflare.getAccountPermissionGroups({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"6d7f2f5f5b1d4a0e9081fdc98d432fd1\",\n    label: \"labelOfThePermissionGroup\",\n    name: \"NameOfThePermissionGroup\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_permission_groups = cloudflare.get_account_permission_groups(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"6d7f2f5f5b1d4a0e9081fdc98d432fd1\",\n    label=\"labelOfThePermissionGroup\",\n    name=\"NameOfThePermissionGroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountPermissionGroups = Cloudflare.Index.GetAccountPermissionGroups.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"6d7f2f5f5b1d4a0e9081fdc98d432fd1\",\n        Label = \"labelOfThePermissionGroup\",\n        Name = \"NameOfThePermissionGroup\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountPermissionGroups(ctx, \u0026cloudflare.LookupAccountPermissionGroupsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:        pulumi.StringRef(\"6d7f2f5f5b1d4a0e9081fdc98d432fd1\"),\n\t\t\tLabel:     pulumi.StringRef(\"labelOfThePermissionGroup\"),\n\t\t\tName:      pulumi.StringRef(\"NameOfThePermissionGroup\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountPermissionGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountPermissionGroups = CloudflareFunctions.getAccountPermissionGroups(GetAccountPermissionGroupsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"6d7f2f5f5b1d4a0e9081fdc98d432fd1\")\n            .label(\"labelOfThePermissionGroup\")\n            .name(\"NameOfThePermissionGroup\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountPermissionGroups:\n    fn::invoke:\n      function: cloudflare:getAccountPermissionGroups\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: 6d7f2f5f5b1d4a0e9081fdc98d432fd1\n        label: labelOfThePermissionGroup\n        name: NameOfThePermissionGroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountPermissionGroups.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "ID of the permission group to be fetched.\n"
                    },
                    "label": {
                        "type": "string",
                        "description": "Label of the permission group to be fetched.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the permission group to be fetched.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountPermissionGroups.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "ID of the permission group to be fetched.\n",
                        "type": "string"
                    },
                    "label": {
                        "description": "Label of the permission group to be fetched.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Name of the permission group to be fetched.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountPermissionGroupsResult:getAccountPermissionGroupsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountRole:getAccountRole": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountRole = cloudflare.getAccountRole({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    roleId: \"3536bcfad5faccb999b47003c79917fb\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_role = cloudflare.get_account_role(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    role_id=\"3536bcfad5faccb999b47003c79917fb\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountRole = Cloudflare.Index.GetAccountRole.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RoleId = \"3536bcfad5faccb999b47003c79917fb\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountRole(ctx, \u0026cloudflare.GetAccountRoleArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRoleId:    \"3536bcfad5faccb999b47003c79917fb\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountRole = CloudflareFunctions.getAccountRole(GetAccountRoleArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .roleId(\"3536bcfad5faccb999b47003c79917fb\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountRole:\n    fn::invoke:\n      function: cloudflare:getAccountRole\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        roleId: 3536bcfad5faccb999b47003c79917fb\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountRole.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "roleId": {
                        "type": "string",
                        "description": "Role identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "roleId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAccountRole.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "Description of role's permissions.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Role identifier tag.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Role name.\n",
                        "type": "string"
                    },
                    "permissions": {
                        "$ref": "#/types/cloudflare:index/getAccountRolePermissions:getAccountRolePermissions"
                    },
                    "roleId": {
                        "description": "Role identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "id",
                    "name",
                    "permissions",
                    "roleId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountRoles:getAccountRoles": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountRoles = cloudflare.getAccountRoles({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_roles = cloudflare.get_account_roles(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountRoles = Cloudflare.Index.GetAccountRoles.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountRoles(ctx, \u0026cloudflare.LookupAccountRolesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountRolesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountRoles = CloudflareFunctions.getAccountRoles(GetAccountRolesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountRoles:\n    fn::invoke:\n      function: cloudflare:getAccountRoles\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountRoles.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountRoles.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountRolesResult:getAccountRolesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountSubscription:getAccountSubscription": {
            "description": "Accepted Permissions\n\n- `Billing Read`\n- `Billing Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountSubscription = cloudflare.getAccountSubscription({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_subscription = cloudflare.get_account_subscription(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountSubscription = Cloudflare.Index.GetAccountSubscription.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountSubscription(ctx, \u0026cloudflare.LookupAccountSubscriptionArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountSubscriptionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountSubscription = CloudflareFunctions.getAccountSubscription(GetAccountSubscriptionArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountSubscription:\n    fn::invoke:\n      function: cloudflare:getAccountSubscription\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountSubscription.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountSubscription.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "currency": {
                        "description": "The monetary unit in which pricing information is displayed.\n",
                        "type": "string"
                    },
                    "currentPeriodEnd": {
                        "description": "The end of the current period and also when the next billing is due.\n",
                        "type": "string"
                    },
                    "currentPeriodStart": {
                        "description": "When the current billing period started. May match initial*period*start if this is the first period.\n",
                        "type": "string"
                    },
                    "frequency": {
                        "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "price": {
                        "description": "The price of the subscription that will be billed, in US dollars.\n",
                        "type": "number"
                    },
                    "ratePlan": {
                        "$ref": "#/types/cloudflare:index/getAccountSubscriptionRatePlan:getAccountSubscriptionRatePlan",
                        "description": "The rate plan applied to the subscription.\n"
                    },
                    "state": {
                        "description": "The state that the subscription is in.\nAvailable values: \"Trial\", \"Provisioned\", \"Paid\", \"AwaitingPayment\", \"Cancelled\", \"Failed\", \"Expired\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "currency",
                    "currentPeriodEnd",
                    "currentPeriodStart",
                    "frequency",
                    "id",
                    "price",
                    "ratePlan",
                    "state"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountToken:getAccountToken": {
            "description": "Accepted Permissions\n\n- `Account API Tokens Read`\n- `Account API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountToken = cloudflare.getAccountToken({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    tokenId: \"ed17574386854bf78a67040be0a770b0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_token = cloudflare.get_account_token(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    token_id=\"ed17574386854bf78a67040be0a770b0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountToken = Cloudflare.Index.GetAccountToken.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TokenId = \"ed17574386854bf78a67040be0a770b0\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountToken(ctx, \u0026cloudflare.LookupAccountTokenArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTokenId:   pulumi.StringRef(\"ed17574386854bf78a67040be0a770b0\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountToken = CloudflareFunctions.getAccountToken(GetAccountTokenArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .tokenId(\"ed17574386854bf78a67040be0a770b0\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountToken:\n    fn::invoke:\n      function: cloudflare:getAccountToken\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        tokenId: ed17574386854bf78a67040be0a770b0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountToken.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountTokenFilter:getAccountTokenFilter"
                    },
                    "tokenId": {
                        "type": "string",
                        "description": "Token identifier tag.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountToken.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "condition": {
                        "$ref": "#/types/cloudflare:index/getAccountTokenCondition:getAccountTokenCondition"
                    },
                    "expiresOn": {
                        "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAccountTokenFilter:getAccountTokenFilter"
                    },
                    "id": {
                        "description": "Token identifier tag.\n",
                        "type": "string"
                    },
                    "issuedOn": {
                        "description": "The time on which the token was created.\n",
                        "type": "string"
                    },
                    "lastUsedOn": {
                        "description": "Last time the token was used.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time the token was modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Token name.\n",
                        "type": "string"
                    },
                    "notBefore": {
                        "description": "The time before which the token MUST NOT be accepted for processing.\n",
                        "type": "string"
                    },
                    "policies": {
                        "description": "List of access policies assigned to the token.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountTokenPolicy:getAccountTokenPolicy"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n",
                        "type": "string"
                    },
                    "tokenId": {
                        "description": "Token identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "condition",
                    "expiresOn",
                    "id",
                    "issuedOn",
                    "lastUsedOn",
                    "modifiedOn",
                    "name",
                    "notBefore",
                    "policies",
                    "status"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccountTokens:getAccountTokens": {
            "description": "Accepted Permissions\n\n- `Account API Tokens Read`\n- `Account API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccountTokens = cloudflare.getAccountTokens({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"desc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_account_tokens = cloudflare.get_account_tokens(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"desc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccountTokens = Cloudflare.Index.GetAccountTokens.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"desc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccountTokens(ctx, \u0026cloudflare.LookupAccountTokensArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountTokensArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccountTokens = CloudflareFunctions.getAccountTokens(GetAccountTokensArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"desc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccountTokens:\n    fn::invoke:\n      function: cloudflare:getAccountTokens\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: desc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccountTokens.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccountTokens.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountTokensResult:getAccountTokensResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAccounts:getAccounts": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAccounts = cloudflare.getAccounts({\n    direction: \"desc\",\n    name: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_accounts = cloudflare.get_accounts(direction=\"desc\",\n    name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAccounts = Cloudflare.Index.GetAccounts.Invoke(new()\n    {\n        Direction = \"desc\",\n        Name = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAccounts(ctx, \u0026cloudflare.LookupAccountsArgs{\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t\tName:      pulumi.StringRef(\"example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAccountsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAccounts = CloudflareFunctions.getAccounts(GetAccountsArgs.builder()\n            .direction(\"desc\")\n            .name(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAccounts:\n    fn::invoke:\n      function: cloudflare:getAccounts\n      arguments:\n        direction: desc\n        name: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAccounts.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the account.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAccounts.\n",
                "properties": {
                    "direction": {
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Name of the account.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAccountsResult:getAccountsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAddressMap:getAddressMap": {
            "description": "Accepted Permissions\n\n- `Address Maps Read`\n- `Address Maps Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAddressMap = cloudflare.getAddressMap({\n    accountId: \"258def64c72dae45f3e4c8516e2111f2\",\n    addressMapId: \"055817b111884e0227e1be16a0be6ee0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_address_map = cloudflare.get_address_map(account_id=\"258def64c72dae45f3e4c8516e2111f2\",\n    address_map_id=\"055817b111884e0227e1be16a0be6ee0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAddressMap = Cloudflare.Index.GetAddressMap.Invoke(new()\n    {\n        AccountId = \"258def64c72dae45f3e4c8516e2111f2\",\n        AddressMapId = \"055817b111884e0227e1be16a0be6ee0\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAddressMap(ctx, \u0026cloudflare.LookupAddressMapArgs{\n\t\t\tAccountId:    pulumi.StringRef(\"258def64c72dae45f3e4c8516e2111f2\"),\n\t\t\tAddressMapId: \"055817b111884e0227e1be16a0be6ee0\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAddressMapArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAddressMap = CloudflareFunctions.getAddressMap(GetAddressMapArgs.builder()\n            .accountId(\"258def64c72dae45f3e4c8516e2111f2\")\n            .addressMapId(\"055817b111884e0227e1be16a0be6ee0\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAddressMap:\n    fn::invoke:\n      function: cloudflare:getAddressMap\n      arguments:\n        accountId: 258def64c72dae45f3e4c8516e2111f2\n        addressMapId: 055817b111884e0227e1be16a0be6ee0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAddressMap.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier of a Cloudflare account.\n"
                    },
                    "addressMapId": {
                        "type": "string",
                        "description": "Identifier of an Address Map.\n"
                    }
                },
                "type": "object",
                "required": [
                    "addressMapId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAddressMap.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier of a Cloudflare account.\n",
                        "type": "string"
                    },
                    "addressMapId": {
                        "description": "Identifier of an Address Map.\n",
                        "type": "string"
                    },
                    "canDelete": {
                        "description": "If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.\n",
                        "type": "boolean"
                    },
                    "canModifyIps": {
                        "description": "If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.\n",
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "defaultSni": {
                        "description": "If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "An optional description field which may be used to describe the types of IPs or zones on the map.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier of an Address Map.\n",
                        "type": "string"
                    },
                    "ips": {
                        "description": "The set of IPs on the Address Map.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAddressMapIp:getAddressMapIp"
                        },
                        "type": "array"
                    },
                    "memberships": {
                        "description": "Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAddressMapMembership:getAddressMapMembership"
                        },
                        "type": "array"
                    },
                    "modifiedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "addressMapId",
                    "canDelete",
                    "canModifyIps",
                    "createdAt",
                    "defaultSni",
                    "description",
                    "enabled",
                    "id",
                    "ips",
                    "memberships",
                    "modifiedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAddressMaps:getAddressMaps": {
            "description": "Accepted Permissions\n\n- `Address Maps Read`\n- `Address Maps Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAddressMaps = cloudflare.getAddressMaps({\n    accountId: \"258def64c72dae45f3e4c8516e2111f2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_address_maps = cloudflare.get_address_maps(account_id=\"258def64c72dae45f3e4c8516e2111f2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAddressMaps = Cloudflare.Index.GetAddressMaps.Invoke(new()\n    {\n        AccountId = \"258def64c72dae45f3e4c8516e2111f2\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAddressMaps(ctx, \u0026cloudflare.LookupAddressMapsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"258def64c72dae45f3e4c8516e2111f2\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAddressMapsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAddressMaps = CloudflareFunctions.getAddressMaps(GetAddressMapsArgs.builder()\n            .accountId(\"258def64c72dae45f3e4c8516e2111f2\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAddressMaps:\n    fn::invoke:\n      function: cloudflare:getAddressMaps\n      arguments:\n        accountId: 258def64c72dae45f3e4c8516e2111f2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAddressMaps.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier of a Cloudflare account.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAddressMaps.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier of a Cloudflare account.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAddressMapsResult:getAddressMapsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiGateway:getAiGateway": {
            "description": "Accepted Permissions\n\n- `AI Gateway Read`\n- `AI Gateway Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAiGateway = cloudflare.getAiGateway({\n    accountId: \"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n    id: \"my-gateway\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ai_gateway = cloudflare.get_ai_gateway(account_id=\"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n    id=\"my-gateway\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAiGateway = Cloudflare.Index.GetAiGateway.Invoke(new()\n    {\n        AccountId = \"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n        Id = \"my-gateway\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAiGateway(ctx, \u0026cloudflare.LookupAiGatewayArgs{\n\t\t\tAccountId: pulumi.StringRef(\"3ebbcb006d4d46d7bb6a8c7f14676cb0\"),\n\t\t\tId:        pulumi.StringRef(\"my-gateway\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAiGatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAiGateway = CloudflareFunctions.getAiGateway(GetAiGatewayArgs.builder()\n            .accountId(\"3ebbcb006d4d46d7bb6a8c7f14676cb0\")\n            .id(\"my-gateway\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAiGateway:\n    fn::invoke:\n      function: cloudflare:getAiGateway\n      arguments:\n        accountId: 3ebbcb006d4d46d7bb6a8c7f14676cb0\n        id: my-gateway\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAiGateway.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayFilter:getAiGatewayFilter"
                    },
                    "id": {
                        "type": "string",
                        "description": "gateway id\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAiGateway.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "authentication": {
                        "type": "boolean"
                    },
                    "cacheInvalidateOnUpdate": {
                        "type": "boolean"
                    },
                    "cacheTtl": {
                        "type": "integer"
                    },
                    "collectLogs": {
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "dlp": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayDlp:getAiGatewayDlp"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayFilter:getAiGatewayFilter"
                    },
                    "id": {
                        "description": "gateway id\n",
                        "type": "string"
                    },
                    "isDefault": {
                        "type": "boolean"
                    },
                    "logManagement": {
                        "type": "integer"
                    },
                    "logManagementStrategy": {
                        "description": "Available values: \"STOP*INSERTING\", \"DELETE*OLDEST\".\n",
                        "type": "string"
                    },
                    "logpush": {
                        "type": "boolean"
                    },
                    "logpushPublicKey": {
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "otels": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAiGatewayOtel:getAiGatewayOtel"
                        },
                        "type": "array"
                    },
                    "rateLimitingInterval": {
                        "type": "integer"
                    },
                    "rateLimitingLimit": {
                        "type": "integer"
                    },
                    "rateLimitingTechnique": {
                        "description": "Available values: \"fixed\", \"sliding\".\n",
                        "type": "string"
                    },
                    "retryBackoff": {
                        "description": "Backoff strategy for retry delays\nAvailable values: \"constant\", \"linear\", \"exponential\".\n",
                        "type": "string"
                    },
                    "retryDelay": {
                        "description": "Delay between retry attempts in milliseconds (0-5000)\n",
                        "type": "integer"
                    },
                    "retryMaxAttempts": {
                        "description": "Maximum number of retry attempts for failed requests (1-5)\n",
                        "type": "integer"
                    },
                    "storeId": {
                        "type": "string"
                    },
                    "stripe": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayStripe:getAiGatewayStripe"
                    },
                    "workersAiBillingMode": {
                        "description": "Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported.\nAvailable values: \"postpaid\".\n",
                        "type": "string"
                    },
                    "zdr": {
                        "type": "boolean"
                    }
                },
                "required": [
                    "authentication",
                    "cacheInvalidateOnUpdate",
                    "cacheTtl",
                    "collectLogs",
                    "createdAt",
                    "dlp",
                    "id",
                    "isDefault",
                    "logManagement",
                    "logManagementStrategy",
                    "logpush",
                    "logpushPublicKey",
                    "modifiedAt",
                    "otels",
                    "rateLimitingInterval",
                    "rateLimitingLimit",
                    "rateLimitingTechnique",
                    "retryBackoff",
                    "retryDelay",
                    "retryMaxAttempts",
                    "storeId",
                    "stripe",
                    "workersAiBillingMode",
                    "zdr"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiGatewayDynamicRouting:getAiGatewayDynamicRouting": {
            "description": "Accepted Permissions\n\n- `AI Gateway Read`\n- `AI Gateway Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAiGatewayDynamicRouting = cloudflare.getAiGatewayDynamicRouting({\n    accountId: \"0d37909e38d3e99c29fa2cd343ac421a\",\n    gatewayId: \"54442216\",\n    id: \"54442216\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ai_gateway_dynamic_routing = cloudflare.get_ai_gateway_dynamic_routing(account_id=\"0d37909e38d3e99c29fa2cd343ac421a\",\n    gateway_id=\"54442216\",\n    id=\"54442216\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAiGatewayDynamicRouting = Cloudflare.Index.GetAiGatewayDynamicRouting.Invoke(new()\n    {\n        AccountId = \"0d37909e38d3e99c29fa2cd343ac421a\",\n        GatewayId = \"54442216\",\n        Id = \"54442216\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAiGatewayDynamicRouting(ctx, \u0026cloudflare.LookupAiGatewayDynamicRoutingArgs{\n\t\t\tAccountId: pulumi.StringRef(\"0d37909e38d3e99c29fa2cd343ac421a\"),\n\t\t\tGatewayId: \"54442216\",\n\t\t\tId:        \"54442216\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAiGatewayDynamicRoutingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAiGatewayDynamicRouting = CloudflareFunctions.getAiGatewayDynamicRouting(GetAiGatewayDynamicRoutingArgs.builder()\n            .accountId(\"0d37909e38d3e99c29fa2cd343ac421a\")\n            .gatewayId(\"54442216\")\n            .id(\"54442216\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAiGatewayDynamicRouting:\n    fn::invoke:\n      function: cloudflare:getAiGatewayDynamicRouting\n      arguments:\n        accountId: 0d37909e38d3e99c29fa2cd343ac421a\n        gatewayId: '54442216'\n        id: '54442216'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAiGatewayDynamicRouting.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "gatewayId": {
                        "type": "string"
                    },
                    "id": {
                        "type": "string",
                        "description": "The ID of this resource.\n"
                    }
                },
                "type": "object",
                "required": [
                    "gatewayId",
                    "id"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAiGatewayDynamicRouting.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "deployment": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingDeployment:getAiGatewayDynamicRoutingDeployment"
                    },
                    "elements": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingElement:getAiGatewayDynamicRoutingElement"
                        },
                        "type": "array"
                    },
                    "gatewayId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "version": {
                        "$ref": "#/types/cloudflare:index/getAiGatewayDynamicRoutingVersion:getAiGatewayDynamicRoutingVersion"
                    }
                },
                "required": [
                    "createdAt",
                    "deployment",
                    "elements",
                    "gatewayId",
                    "id",
                    "modifiedAt",
                    "name",
                    "version"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiGateways:getAiGateways": {
            "description": "Accepted Permissions\n\n- `AI Gateway Read`\n- `AI Gateway Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAiGateways = cloudflare.getAiGateways({\n    accountId: \"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ai_gateways = cloudflare.get_ai_gateways(account_id=\"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAiGateways = Cloudflare.Index.GetAiGateways.Invoke(new()\n    {\n        AccountId = \"3ebbcb006d4d46d7bb6a8c7f14676cb0\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAiGateways(ctx, \u0026cloudflare.LookupAiGatewaysArgs{\n\t\t\tAccountId: pulumi.StringRef(\"3ebbcb006d4d46d7bb6a8c7f14676cb0\"),\n\t\t\tSearch:    pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAiGatewaysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAiGateways = CloudflareFunctions.getAiGateways(GetAiGatewaysArgs.builder()\n            .accountId(\"3ebbcb006d4d46d7bb6a8c7f14676cb0\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAiGateways:\n    fn::invoke:\n      function: cloudflare:getAiGateways\n      arguments:\n        accountId: 3ebbcb006d4d46d7bb6a8c7f14676cb0\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAiGateways.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search by id\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAiGateways.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAiGatewaysResult:getAiGatewaysResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search by id\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiSearchInstance:getAiSearchInstance": {
            "inputs": {
                "description": "A collection of arguments for invoking getAiSearchInstance.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceFilter:getAiSearchInstanceFilter"
                    },
                    "id": {
                        "type": "string",
                        "description": "AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAiSearchInstance.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiGatewayId": {
                        "type": "string"
                    },
                    "aisearchModel": {
                        "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n",
                        "type": "string"
                    },
                    "cache": {
                        "type": "boolean"
                    },
                    "cacheThreshold": {
                        "description": "Available values: \"super*strict*match\", \"close*enough\", \"flexible*friend\", \u003cspan pulumi-lang-nodejs=\"\"anythingGoes\"\" pulumi-lang-dotnet=\"\"AnythingGoes\"\" pulumi-lang-go=\"\"anythingGoes\"\" pulumi-lang-python=\"\"anything_goes\"\" pulumi-lang-yaml=\"\"anythingGoes\"\" pulumi-lang-java=\"\"anythingGoes\"\"\u003e\"anythingGoes\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "chunkOverlap": {
                        "type": "integer"
                    },
                    "chunkSize": {
                        "type": "integer"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "customMetadatas": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAiSearchInstanceCustomMetadata:getAiSearchInstanceCustomMetadata"
                        },
                        "type": "array"
                    },
                    "embeddingModel": {
                        "description": "Available values: \"@cf/qwen/qwen3-embedding-0.6b\", \"@cf/baai/bge-m3\", \"@cf/baai/bge-large-en-v1.5\", \"@cf/google/embeddinggemma-300m\", \"google-ai-studio/gemini-embedding-001\", \"google-ai-studio/gemini-embedding-2-preview\", \"openai/text-embedding-3-small\", \"openai/text-embedding-3-large\", \"\".\n",
                        "type": "string"
                    },
                    "enable": {
                        "type": "boolean"
                    },
                    "engineVersion": {
                        "type": "number"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceFilter:getAiSearchInstanceFilter"
                    },
                    "fusionMethod": {
                        "description": "Available values: \"max\", \"rrf\".\n",
                        "type": "string"
                    },
                    "hybridSearchEnabled": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Deprecated — use\u003cspan pulumi-lang-nodejs=\" indexMethod \" pulumi-lang-dotnet=\" IndexMethod \" pulumi-lang-go=\" indexMethod \" pulumi-lang-python=\" index_method \" pulumi-lang-yaml=\" indexMethod \" pulumi-lang-java=\" indexMethod \"\u003e indexMethod \u003c/span\u003einstead.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.\n",
                        "type": "string"
                    },
                    "indexMethod": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceIndexMethod:getAiSearchInstanceIndexMethod",
                        "description": "Controls which storage backends are used during indexing. Defaults to vector-only.\n"
                    },
                    "indexingOptions": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceIndexingOptions:getAiSearchInstanceIndexingOptions"
                    },
                    "lastActivity": {
                        "type": "string"
                    },
                    "maxNumResults": {
                        "type": "integer"
                    },
                    "metadata": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceMetadata:getAiSearchInstanceMetadata"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "namespace": {
                        "type": "string"
                    },
                    "paused": {
                        "type": "boolean"
                    },
                    "publicEndpointId": {
                        "type": "string"
                    },
                    "publicEndpointParams": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstancePublicEndpointParams:getAiSearchInstancePublicEndpointParams"
                    },
                    "reranking": {
                        "type": "boolean"
                    },
                    "rerankingModel": {
                        "description": "Available values: \"@cf/baai/bge-reranker-base\", \"\".\n",
                        "type": "string"
                    },
                    "retrievalOptions": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceRetrievalOptions:getAiSearchInstanceRetrievalOptions"
                    },
                    "rewriteModel": {
                        "description": "Available values: \"@cf/meta/llama-3.3-70b-instruct-fp8-fast\", \"@cf/zai-org/glm-4.7-flash\", \"@cf/meta/llama-3.1-8b-instruct-fast\", \"@cf/meta/llama-3.1-8b-instruct-fp8\", \"@cf/meta/llama-4-scout-17b-16e-instruct\", \"@cf/qwen/qwen3-30b-a3b-fp8\", \"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\", \"@cf/moonshotai/kimi-k2-instruct\", \"@cf/google/gemma-3-12b-it\", \"@cf/google/gemma-4-26b-a4b-it\", \"@cf/moonshotai/kimi-k2.5\", \"anthropic/claude-3-7-sonnet\", \"anthropic/claude-sonnet-4\", \"anthropic/claude-opus-4\", \"anthropic/claude-3-5-haiku\", \"cerebras/qwen-3-235b-a22b-instruct\", \"cerebras/qwen-3-235b-a22b-thinking\", \"cerebras/llama-3.3-70b\", \"cerebras/llama-4-maverick-17b-128e-instruct\", \"cerebras/llama-4-scout-17b-16e-instruct\", \"cerebras/gpt-oss-120b\", \"google-ai-studio/gemini-2.5-flash\", \"google-ai-studio/gemini-2.5-pro\", \"grok/grok-4\", \"groq/llama-3.3-70b-versatile\", \"groq/llama-3.1-8b-instant\", \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5-nano\", \"\".\n",
                        "type": "string"
                    },
                    "rewriteQuery": {
                        "type": "boolean"
                    },
                    "scoreThreshold": {
                        "type": "number"
                    },
                    "source": {
                        "type": "string"
                    },
                    "sourceParams": {
                        "$ref": "#/types/cloudflare:index/getAiSearchInstanceSourceParams:getAiSearchInstanceSourceParams"
                    },
                    "status": {
                        "type": "string"
                    },
                    "syncInterval": {
                        "description": "Interval between automatic syncs, in seconds. Allowed values: 900 (15min), 1800 (30min), 3600 (1h), 7200 (2h), 14400 (4h), 21600 (6h), 43200 (12h), 86400 (24h).\nAvailable values: 900, 1800, 3600, 7200, 14400, 21600, 43200, 86400.\n",
                        "type": "number"
                    },
                    "tokenId": {
                        "type": "string"
                    },
                    "type": {
                        "description": "Available values: \"r2\", \"web-crawler\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "aiGatewayId",
                    "aisearchModel",
                    "cache",
                    "cacheThreshold",
                    "chunkOverlap",
                    "chunkSize",
                    "createdAt",
                    "createdBy",
                    "customMetadatas",
                    "embeddingModel",
                    "enable",
                    "engineVersion",
                    "fusionMethod",
                    "hybridSearchEnabled",
                    "id",
                    "indexMethod",
                    "indexingOptions",
                    "lastActivity",
                    "maxNumResults",
                    "metadata",
                    "modifiedAt",
                    "modifiedBy",
                    "namespace",
                    "paused",
                    "publicEndpointId",
                    "publicEndpointParams",
                    "reranking",
                    "rerankingModel",
                    "retrievalOptions",
                    "rewriteModel",
                    "rewriteQuery",
                    "scoreThreshold",
                    "source",
                    "sourceParams",
                    "status",
                    "syncInterval",
                    "tokenId",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiSearchInstances:getAiSearchInstances": {
            "inputs": {
                "description": "A collection of arguments for invoking getAiSearchInstances.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "namespace": {
                        "type": "string"
                    },
                    "orderBy": {
                        "type": "string",
                        "description": "Order By Column Name\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                    },
                    "orderByDirection": {
                        "type": "string",
                        "description": "Order By Direction\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search by id\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAiSearchInstances.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "namespace": {
                        "type": "string"
                    },
                    "orderBy": {
                        "description": "Order By Column Name\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "orderByDirection": {
                        "description": "Order By Direction\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAiSearchInstancesResult:getAiSearchInstancesResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search by id\n",
                        "type": "string"
                    }
                },
                "required": [
                    "orderBy",
                    "orderByDirection",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiSearchToken:getAiSearchToken": {
            "inputs": {
                "description": "A collection of arguments for invoking getAiSearchToken.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAiSearchTokenFilter:getAiSearchTokenFilter"
                    },
                    "id": {
                        "type": "string",
                        "description": "The ID of this resource.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAiSearchToken.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "cfApiId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getAiSearchTokenFilter:getAiSearchTokenFilter"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "legacy": {
                        "type": "boolean"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "required": [
                    "cfApiId",
                    "createdAt",
                    "createdBy",
                    "enabled",
                    "id",
                    "legacy",
                    "modifiedAt",
                    "modifiedBy",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAiSearchTokens:getAiSearchTokens": {
            "inputs": {
                "description": "A collection of arguments for invoking getAiSearchTokens.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Filter tokens whose name contains this string (case-insensitive).\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAiSearchTokens.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAiSearchTokensResult:getAiSearchTokensResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Filter tokens whose name contains this string (case-insensitive).\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShield:getApiShield": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShield = cloudflare.getApiShield({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    normalize: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield = cloudflare.get_api_shield(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    normalize=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShield = Cloudflare.Index.GetApiShield.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Normalize = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShield(ctx, \u0026cloudflare.LookupApiShieldArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNormalize: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShield = CloudflareFunctions.getApiShield(GetApiShieldArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .normalize(true)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShield:\n    fn::invoke:\n      function: cloudflare:getApiShield\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        normalize: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShield.\n",
                "properties": {
                    "normalize": {
                        "type": "boolean",
                        "description": "Ensures that the configuration is written or retrieved in normalized fashion\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiShield.\n",
                "properties": {
                    "authIdCharacteristics": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiShieldAuthIdCharacteristic:getApiShieldAuthIdCharacteristic"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "normalize": {
                        "description": "Ensures that the configuration is written or retrieved in normalized fashion\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "authIdCharacteristics",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldDiscoveryOperations:getApiShieldDiscoveryOperations": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldDiscoveryOperations = cloudflare.getApiShieldDiscoveryOperations({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    diff: true,\n    direction: \"desc\",\n    endpoint: \"/api/v1\",\n    hosts: [\"api.cloudflare.com\"],\n    methods: [\"GET\"],\n    order: \"method\",\n    origin: \"ML\",\n    state: \"review\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_discovery_operations = cloudflare.get_api_shield_discovery_operations(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    diff=True,\n    direction=\"desc\",\n    endpoint=\"/api/v1\",\n    hosts=[\"api.cloudflare.com\"],\n    methods=[\"GET\"],\n    order=\"method\",\n    origin=\"ML\",\n    state=\"review\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldDiscoveryOperations = Cloudflare.Index.GetApiShieldDiscoveryOperations.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Diff = true,\n        Direction = \"desc\",\n        Endpoint = \"/api/v1\",\n        Hosts = new[]\n        {\n            \"api.cloudflare.com\",\n        },\n        Methods = new[]\n        {\n            \"GET\",\n        },\n        Order = \"method\",\n        Origin = \"ML\",\n        State = \"review\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShieldDiscoveryOperations(ctx, \u0026cloudflare.LookupApiShieldDiscoveryOperationsArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDiff:      pulumi.BoolRef(true),\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t\tEndpoint:  pulumi.StringRef(\"/api/v1\"),\n\t\t\tHosts: []string{\n\t\t\t\t\"api.cloudflare.com\",\n\t\t\t},\n\t\t\tMethods: []string{\n\t\t\t\t\"GET\",\n\t\t\t},\n\t\t\tOrder:  pulumi.StringRef(\"method\"),\n\t\t\tOrigin: pulumi.StringRef(\"ML\"),\n\t\t\tState:  pulumi.StringRef(\"review\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldDiscoveryOperationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShieldDiscoveryOperations = CloudflareFunctions.getApiShieldDiscoveryOperations(GetApiShieldDiscoveryOperationsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .diff(true)\n            .direction(\"desc\")\n            .endpoint(\"/api/v1\")\n            .hosts(\"api.cloudflare.com\")\n            .methods(\"GET\")\n            .order(\"method\")\n            .origin(\"ML\")\n            .state(\"review\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShieldDiscoveryOperations:\n    fn::invoke:\n      function: cloudflare:getApiShieldDiscoveryOperations\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        diff: true\n        direction: desc\n        endpoint: /api/v1\n        hosts:\n          - api.cloudflare.com\n        methods:\n          - GET\n        order: method\n        origin: ML\n        state: review\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldDiscoveryOperations.\n",
                "properties": {
                    "diff": {
                        "type": "boolean"
                    },
                    "direction": {
                        "type": "string"
                    },
                    "endpoint": {
                        "type": "string"
                    },
                    "hosts": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "methods": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "order": {
                        "type": "string"
                    },
                    "origin": {
                        "type": "string"
                    },
                    "state": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldDiscoveryOperations.\n",
                "properties": {
                    "diff": {
                        "type": "boolean"
                    },
                    "direction": {
                        "type": "string"
                    },
                    "endpoint": {
                        "type": "string"
                    },
                    "hosts": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "methods": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "order": {
                        "type": "string"
                    },
                    "origin": {
                        "type": "string"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiShieldDiscoveryOperationsResult:getApiShieldDiscoveryOperationsResult"
                        },
                        "type": "array"
                    },
                    "state": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldOperation:getApiShieldOperation": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nvariables:\n  exampleApiShieldOperation:\n    fn::invoke:\n      function: cloudflare:getApiShieldOperation\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        operationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        features:\n          - thresholds\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldOperation.\n",
                "properties": {
                    "feature": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getApiShieldOperationFilter:getApiShieldOperationFilter"
                    },
                    "operationId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldOperation.\n",
                "properties": {
                    "endpoint": {
                        "description": "The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/.\n",
                        "type": "string"
                    },
                    "feature": {
                        "description": "Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "features": {
                        "$ref": "#/types/cloudflare:index/getApiShieldOperationFeatures:getApiShieldOperationFeatures"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getApiShieldOperationFilter:getApiShieldOperationFilter"
                    },
                    "host": {
                        "description": "RFC3986-compliant host.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "method": {
                        "description": "The HTTP method used to access the endpoint.\nAvailable values: \"GET\", \"POST\", \"HEAD\", \"OPTIONS\", \"PUT\", \"DELETE\", \"CONNECT\", \"PATCH\", \"TRACE\".\n",
                        "type": "string"
                    },
                    "operationId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "endpoint",
                    "features",
                    "host",
                    "id",
                    "lastUpdated",
                    "method",
                    "operationId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldOperationSchemaValidationSettings:getApiShieldOperationSchemaValidationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldOperationSchemaValidationSettings = cloudflare.getApiShieldOperationSchemaValidationSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    operationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_operation_schema_validation_settings = cloudflare.get_api_shield_operation_schema_validation_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    operation_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldOperationSchemaValidationSettings = Cloudflare.Index.GetApiShieldOperationSchemaValidationSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        OperationId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShieldOperationSchemaValidationSettings(ctx, \u0026cloudflare.LookupApiShieldOperationSchemaValidationSettingsArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOperationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldOperationSchemaValidationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShieldOperationSchemaValidationSettings = CloudflareFunctions.getApiShieldOperationSchemaValidationSettings(GetApiShieldOperationSchemaValidationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .operationId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShieldOperationSchemaValidationSettings:\n    fn::invoke:\n      function: cloudflare:getApiShieldOperationSchemaValidationSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        operationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldOperationSchemaValidationSettings.\n",
                "properties": {
                    "operationId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "operationId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldOperationSchemaValidationSettings.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "mitigationAction": {
                        "type": "string"
                    },
                    "operationId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "mitigationAction",
                    "operationId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldOperations:getApiShieldOperations": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldOperations = cloudflare.getApiShieldOperations({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"desc\",\n    endpoint: \"/api/v1\",\n    features: [\"thresholds\"],\n    hosts: [\"api.cloudflare.com\"],\n    methods: [\"GET\"],\n    order: \"method\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_operations = cloudflare.get_api_shield_operations(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"desc\",\n    endpoint=\"/api/v1\",\n    features=[\"thresholds\"],\n    hosts=[\"api.cloudflare.com\"],\n    methods=[\"GET\"],\n    order=\"method\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldOperations = Cloudflare.Index.GetApiShieldOperations.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"desc\",\n        Endpoint = \"/api/v1\",\n        Features = new[]\n        {\n            \"thresholds\",\n        },\n        Hosts = new[]\n        {\n            \"api.cloudflare.com\",\n        },\n        Methods = new[]\n        {\n            \"GET\",\n        },\n        Order = \"method\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShieldOperations(ctx, \u0026cloudflare.LookupApiShieldOperationsArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t\tEndpoint:  pulumi.StringRef(\"/api/v1\"),\n\t\t\tFeatures: []string{\n\t\t\t\t\"thresholds\",\n\t\t\t},\n\t\t\tHosts: []string{\n\t\t\t\t\"api.cloudflare.com\",\n\t\t\t},\n\t\t\tMethods: []string{\n\t\t\t\t\"GET\",\n\t\t\t},\n\t\t\tOrder: pulumi.StringRef(\"method\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldOperationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShieldOperations = CloudflareFunctions.getApiShieldOperations(GetApiShieldOperationsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"desc\")\n            .endpoint(\"/api/v1\")\n            .features(\"thresholds\")\n            .hosts(\"api.cloudflare.com\")\n            .methods(\"GET\")\n            .order(\"method\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShieldOperations:\n    fn::invoke:\n      function: cloudflare:getApiShieldOperations\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: desc\n        endpoint: /api/v1\n        features:\n          - thresholds\n        hosts:\n          - api.cloudflare.com\n        methods:\n          - GET\n        order: method\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldOperations.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "endpoint": {
                        "type": "string",
                        "description": "Filter results to only include endpoints containing this pattern.\n"
                    },
                    "features": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.\n"
                    },
                    "hosts": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Filter results to only include the specified hosts.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "methods": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Filter results to only include the specified HTTP methods.\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Field to order by. When requesting a feature, the feature keys are available for ordering as well, e.g., `thresholds.suggested_threshold`.\nAvailable values: \"method\", \"host\", \"endpoint\", \"thresholds.$key\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldOperations.\n",
                "properties": {
                    "direction": {
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "endpoint": {
                        "description": "Filter results to only include endpoints containing this pattern.\n",
                        "type": "string"
                    },
                    "features": {
                        "description": "Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "hosts": {
                        "description": "Filter results to only include the specified hosts.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "methods": {
                        "description": "Filter results to only include the specified HTTP methods.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "order": {
                        "description": "Field to order by. When requesting a feature, the feature keys are available for ordering as well, e.g., `thresholds.suggested_threshold`.\nAvailable values: \"method\", \"host\", \"endpoint\", \"thresholds.$key\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiShieldOperationsResult:getApiShieldOperationsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldSchema:getApiShieldSchema": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldSchema = cloudflare.getApiShieldSchema({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    schemaId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    omitSource: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_schema = cloudflare.get_api_shield_schema(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    schema_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    omit_source=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldSchema = Cloudflare.Index.GetApiShieldSchema.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SchemaId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        OmitSource = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShieldSchema(ctx, \u0026cloudflare.LookupApiShieldSchemaArgs{\n\t\t\tZoneId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSchemaId:   \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t\tOmitSource: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShieldSchema = CloudflareFunctions.getApiShieldSchema(GetApiShieldSchemaArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .schemaId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .omitSource(true)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShieldSchema:\n    fn::invoke:\n      function: cloudflare:getApiShieldSchema\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        schemaId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        omitSource: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldSchema.\n",
                "properties": {
                    "omitSource": {
                        "type": "boolean",
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n"
                    },
                    "schemaId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "schemaId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldSchema.\n",
                "properties": {
                    "createdAt": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "kind": {
                        "description": "Kind of schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Name of the schema\n",
                        "type": "string"
                    },
                    "omitSource": {
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n",
                        "type": "boolean"
                    },
                    "schemaId": {
                        "type": "string"
                    },
                    "source": {
                        "description": "Source of the schema\n",
                        "type": "string"
                    },
                    "validationEnabled": {
                        "description": "Flag whether schema is enabled for validation.\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "kind",
                    "name",
                    "omitSource",
                    "schemaId",
                    "source",
                    "validationEnabled",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldSchemaValidationSettings:getApiShieldSchemaValidationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldSchemaValidationSettings = cloudflare.getApiShieldSchemaValidationSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_schema_validation_settings = cloudflare.get_api_shield_schema_validation_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldSchemaValidationSettings = Cloudflare.Index.GetApiShieldSchemaValidationSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShieldSchemaValidationSettings(ctx, \u0026cloudflare.LookupApiShieldSchemaValidationSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldSchemaValidationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShieldSchemaValidationSettings = CloudflareFunctions.getApiShieldSchemaValidationSettings(GetApiShieldSchemaValidationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShieldSchemaValidationSettings:\n    fn::invoke:\n      function: cloudflare:getApiShieldSchemaValidationSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldSchemaValidationSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldSchemaValidationSettings.\n",
                "properties": {
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "validationDefaultMitigationAction": {
                        "description": "The default mitigation action used when there is no mitigation action defined on the operation\n",
                        "type": "string"
                    },
                    "validationOverrideMitigationAction": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "validationDefaultMitigationAction",
                    "validationOverrideMitigationAction"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiShieldSchemas:getApiShieldSchemas": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiShieldSchemas = cloudflare.getApiShieldSchemas({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    validationEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_shield_schemas = cloudflare.get_api_shield_schemas(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    validation_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiShieldSchemas = Cloudflare.Index.GetApiShieldSchemas.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ValidationEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiShieldSchemas(ctx, \u0026cloudflare.LookupApiShieldSchemasArgs{\n\t\t\tZoneId:            pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValidationEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiShieldSchemasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiShieldSchemas = CloudflareFunctions.getApiShieldSchemas(GetApiShieldSchemasArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .validationEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiShieldSchemas:\n    fn::invoke:\n      function: cloudflare:getApiShieldSchemas\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        validationEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiShieldSchemas.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "omitSource": {
                        "type": "boolean",
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n"
                    },
                    "validationEnabled": {
                        "type": "boolean",
                        "description": "Flag whether schema is enabled for validation.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiShieldSchemas.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "omitSource": {
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n",
                        "type": "boolean"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiShieldSchemasResult:getApiShieldSchemasResult"
                        },
                        "type": "array"
                    },
                    "validationEnabled": {
                        "description": "Flag whether schema is enabled for validation.\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "omitSource",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiToken:getApiToken": {
            "description": "Accepted Permissions\n\n- `API Tokens Read`\n- `API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiToken = cloudflare.getApiToken({\n    tokenId: \"ed17574386854bf78a67040be0a770b0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_token = cloudflare.get_api_token(token_id=\"ed17574386854bf78a67040be0a770b0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiToken = Cloudflare.Index.GetApiToken.Invoke(new()\n    {\n        TokenId = \"ed17574386854bf78a67040be0a770b0\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiToken(ctx, \u0026cloudflare.LookupApiTokenArgs{\n\t\t\tTokenId: pulumi.StringRef(\"ed17574386854bf78a67040be0a770b0\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiToken = CloudflareFunctions.getApiToken(GetApiTokenArgs.builder()\n            .tokenId(\"ed17574386854bf78a67040be0a770b0\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiToken:\n    fn::invoke:\n      function: cloudflare:getApiToken\n      arguments:\n        tokenId: ed17574386854bf78a67040be0a770b0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiToken.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getApiTokenFilter:getApiTokenFilter"
                    },
                    "tokenId": {
                        "type": "string",
                        "description": "Token identifier tag.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiToken.\n",
                "properties": {
                    "condition": {
                        "$ref": "#/types/cloudflare:index/getApiTokenCondition:getApiTokenCondition"
                    },
                    "expiresOn": {
                        "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getApiTokenFilter:getApiTokenFilter"
                    },
                    "id": {
                        "description": "Token identifier tag.\n",
                        "type": "string"
                    },
                    "issuedOn": {
                        "description": "The time on which the token was created.\n",
                        "type": "string"
                    },
                    "lastUsedOn": {
                        "description": "Last time the token was used.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time the token was modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Token name.\n",
                        "type": "string"
                    },
                    "notBefore": {
                        "description": "The time before which the token MUST NOT be accepted for processing.\n",
                        "type": "string"
                    },
                    "policies": {
                        "description": "List of access policies assigned to the token.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiTokenPolicy:getApiTokenPolicy"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "Status of the token.\nAvailable values: \"active\", \"disabled\", \"expired\".\n",
                        "type": "string"
                    },
                    "tokenId": {
                        "description": "Token identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "condition",
                    "expiresOn",
                    "id",
                    "issuedOn",
                    "lastUsedOn",
                    "modifiedOn",
                    "name",
                    "notBefore",
                    "policies",
                    "status"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiTokenPermissionGroupsList:getApiTokenPermissionGroupsList": {
            "description": "Accepted Permissions\n\n- `API Tokens Read`\n- `API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiTokenPermissionGroupsList = cloudflare.getApiTokenPermissionGroupsList({\n    name: \"Account%20Settings%20Write\",\n    scope: \"com.cloudflare.api.account.zone\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_token_permission_groups_list = cloudflare.get_api_token_permission_groups_list(name=\"Account%20Settings%20Write\",\n    scope=\"com.cloudflare.api.account.zone\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiTokenPermissionGroupsList = Cloudflare.Index.GetApiTokenPermissionGroupsList.Invoke(new()\n    {\n        Name = \"Account%20Settings%20Write\",\n        Scope = \"com.cloudflare.api.account.zone\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiTokenPermissionGroupsList(ctx, \u0026cloudflare.LookupApiTokenPermissionGroupsListArgs{\n\t\t\tName:  pulumi.StringRef(\"Account%20Settings%20Write\"),\n\t\t\tScope: pulumi.StringRef(\"com.cloudflare.api.account.zone\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiTokenPermissionGroupsListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiTokenPermissionGroupsList = CloudflareFunctions.getApiTokenPermissionGroupsList(GetApiTokenPermissionGroupsListArgs.builder()\n            .name(\"Account%20Settings%20Write\")\n            .scope(\"com.cloudflare.api.account.zone\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiTokenPermissionGroupsList:\n    fn::invoke:\n      function: cloudflare:getApiTokenPermissionGroupsList\n      arguments:\n        name: Account%20Settings%20Write\n        scope: com.cloudflare.api.account.zone\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiTokenPermissionGroupsList.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Filter by the name of the permission group.\nThe value must be URL-encoded.\n"
                    },
                    "scope": {
                        "type": "string",
                        "description": "Filter by the scope of the permission group.\nThe value must be URL-encoded.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiTokenPermissionGroupsList.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Filter by the name of the permission group.\nThe value must be URL-encoded.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiTokenPermissionGroupsListResult:getApiTokenPermissionGroupsListResult"
                        },
                        "type": "array"
                    },
                    "scope": {
                        "description": "Filter by the scope of the permission group.\nThe value must be URL-encoded.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getApiTokens:getApiTokens": {
            "description": "Accepted Permissions\n\n- `API Tokens Read`\n- `API Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleApiTokens = cloudflare.getApiTokens({\n    direction: \"desc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_api_tokens = cloudflare.get_api_tokens(direction=\"desc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleApiTokens = Cloudflare.Index.GetApiTokens.Invoke(new()\n    {\n        Direction = \"desc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetApiTokens(ctx, \u0026cloudflare.LookupApiTokensArgs{\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetApiTokensArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleApiTokens = CloudflareFunctions.getApiTokens(GetApiTokensArgs.builder()\n            .direction(\"desc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleApiTokens:\n    fn::invoke:\n      function: cloudflare:getApiTokens\n      arguments:\n        direction: desc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getApiTokens.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getApiTokens.\n",
                "properties": {
                    "direction": {
                        "description": "Direction to order results.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getApiTokensResult:getApiTokensResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getArgoSmartRouting:getArgoSmartRouting": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleArgoSmartRouting = cloudflare.getArgoSmartRouting({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_argo_smart_routing = cloudflare.get_argo_smart_routing(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleArgoSmartRouting = Cloudflare.Index.GetArgoSmartRouting.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetArgoSmartRouting(ctx, \u0026cloudflare.LookupArgoSmartRoutingArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetArgoSmartRoutingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleArgoSmartRouting = CloudflareFunctions.getArgoSmartRouting(GetArgoSmartRoutingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleArgoSmartRouting:\n    fn::invoke:\n      function: cloudflare:getArgoSmartRouting\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getArgoSmartRouting.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Specifies the zone associated with the API call.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getArgoSmartRouting.\n",
                "properties": {
                    "editable": {
                        "description": "Specifies if the setting is editable.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Specifies the zone associated with the API call.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Specifies the time when the setting was last modified.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "Specifies the enablement value of Argo Smart Routing.\nAvailable values: \"on\", \"off\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Specifies the zone associated with the API call.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "id",
                    "modifiedOn",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getArgoTieredCaching:getArgoTieredCaching": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleArgoTieredCaching = cloudflare.getArgoTieredCaching({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_argo_tiered_caching = cloudflare.get_argo_tiered_caching(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleArgoTieredCaching = Cloudflare.Index.GetArgoTieredCaching.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetArgoTieredCaching(ctx, \u0026cloudflare.LookupArgoTieredCachingArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetArgoTieredCachingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleArgoTieredCaching = CloudflareFunctions.getArgoTieredCaching(GetArgoTieredCachingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleArgoTieredCaching:\n    fn::invoke:\n      function: cloudflare:getArgoTieredCaching\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getArgoTieredCaching.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getArgoTieredCaching.\n",
                "properties": {
                    "editable": {
                        "description": "Whether the setting is editable.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time this setting was modified.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "Value of the Tiered Cache zone setting.\nAvailable values: \"on\", \"off\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "id",
                    "modifiedOn",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAuthenticatedOriginPulls:getAuthenticatedOriginPulls": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPulls = cloudflare.getAuthenticatedOriginPulls({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"app.example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls = cloudflare.get_authenticated_origin_pulls(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"app.example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPulls = Cloudflare.Index.GetAuthenticatedOriginPulls.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"app.example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAuthenticatedOriginPulls(ctx, \u0026cloudflare.LookupAuthenticatedOriginPullsArgs{\n\t\t\tZoneId:   \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tHostname: \"app.example.com\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAuthenticatedOriginPullsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAuthenticatedOriginPulls = CloudflareFunctions.getAuthenticatedOriginPulls(GetAuthenticatedOriginPullsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"app.example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAuthenticatedOriginPulls:\n    fn::invoke:\n      function: cloudflare:getAuthenticatedOriginPulls\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        hostname: app.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAuthenticatedOriginPulls.\n",
                "properties": {
                    "hostname": {
                        "type": "string",
                        "description": "The hostname on the origin for which the client certificate uploaded will be used.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "hostname",
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAuthenticatedOriginPulls.\n",
                "properties": {
                    "certId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "certStatus": {
                        "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n",
                        "type": "string"
                    },
                    "certUpdatedAt": {
                        "description": "The time when the certificate was updated.\n",
                        "type": "string"
                    },
                    "certUploadedOn": {
                        "description": "The time when the certificate was uploaded.\n",
                        "type": "string"
                    },
                    "certificate": {
                        "description": "The hostname certificate.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "The time when the certificate was created.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Indicates whether hostname-level authenticated origin pulls is enabled. A null value voids the association.\n",
                        "type": "boolean"
                    },
                    "expiresOn": {
                        "description": "The date when the certificate expires.\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "The hostname on the origin for which the client certificate uploaded will be used.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "issuer": {
                        "description": "The certificate authority that issued the certificate.\n",
                        "type": "string"
                    },
                    "serialNumber": {
                        "description": "The serial number on the uploaded certificate.\n",
                        "type": "string"
                    },
                    "signature": {
                        "description": "The type of hash used for the certificate.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "The time when the certificate was updated.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certId",
                    "certStatus",
                    "certUpdatedAt",
                    "certUploadedOn",
                    "certificate",
                    "createdAt",
                    "enabled",
                    "expiresOn",
                    "hostname",
                    "issuer",
                    "serialNumber",
                    "signature",
                    "status",
                    "updatedAt",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsCertificate:getAuthenticatedOriginPullsCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsCertificate = cloudflare.getAuthenticatedOriginPullsCertificate({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_certificate = cloudflare.get_authenticated_origin_pulls_certificate(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsCertificate = Cloudflare.Index.GetAuthenticatedOriginPullsCertificate.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAuthenticatedOriginPullsCertificate(ctx, \u0026cloudflare.LookupAuthenticatedOriginPullsCertificateArgs{\n\t\t\tZoneId:        \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAuthenticatedOriginPullsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAuthenticatedOriginPullsCertificate = CloudflareFunctions.getAuthenticatedOriginPullsCertificate(GetAuthenticatedOriginPullsCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAuthenticatedOriginPullsCertificate:\n    fn::invoke:\n      function: cloudflare:getAuthenticatedOriginPullsCertificate\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        certificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAuthenticatedOriginPullsCertificate.\n",
                "properties": {
                    "certificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "certificateId",
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAuthenticatedOriginPullsCertificate.\n",
                "properties": {
                    "certificate": {
                        "description": "The zone's leaf certificate.\n",
                        "type": "string"
                    },
                    "certificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "When the certificate from the authority expires.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "issuer": {
                        "description": "The certificate authority that issued the certificate.\n",
                        "type": "string"
                    },
                    "serialNumber": {
                        "description": "The serial number on the uploaded certificate.\n",
                        "type": "string"
                    },
                    "signature": {
                        "description": "The type of hash used for the certificate.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the certificate activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n",
                        "type": "string"
                    },
                    "uploadedOn": {
                        "description": "This is the time the certificate was uploaded.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certificate",
                    "certificateId",
                    "expiresOn",
                    "id",
                    "issuer",
                    "serialNumber",
                    "signature",
                    "status",
                    "uploadedOn",
                    "zoneId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsCertificates:getAuthenticatedOriginPullsCertificates": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsCertificates = cloudflare.getAuthenticatedOriginPullsCertificates({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_certificates = cloudflare.get_authenticated_origin_pulls_certificates(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsCertificates = Cloudflare.Index.GetAuthenticatedOriginPullsCertificates.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAuthenticatedOriginPullsCertificates(ctx, \u0026cloudflare.LookupAuthenticatedOriginPullsCertificatesArgs{\n\t\t\tZoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAuthenticatedOriginPullsCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAuthenticatedOriginPullsCertificates = CloudflareFunctions.getAuthenticatedOriginPullsCertificates(GetAuthenticatedOriginPullsCertificatesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAuthenticatedOriginPullsCertificates:\n    fn::invoke:\n      function: cloudflare:getAuthenticatedOriginPullsCertificates\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAuthenticatedOriginPullsCertificates.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAuthenticatedOriginPullsCertificates.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAuthenticatedOriginPullsCertificatesResult:getAuthenticatedOriginPullsCertificatesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsHostnameCertificate:getAuthenticatedOriginPullsHostnameCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsHostnameCertificate = cloudflare.getAuthenticatedOriginPullsHostnameCertificate({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_hostname_certificate = cloudflare.get_authenticated_origin_pulls_hostname_certificate(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsHostnameCertificate = Cloudflare.Index.GetAuthenticatedOriginPullsHostnameCertificate.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAuthenticatedOriginPullsHostnameCertificate(ctx, \u0026cloudflare.LookupAuthenticatedOriginPullsHostnameCertificateArgs{\n\t\t\tZoneId:        \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAuthenticatedOriginPullsHostnameCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAuthenticatedOriginPullsHostnameCertificate = CloudflareFunctions.getAuthenticatedOriginPullsHostnameCertificate(GetAuthenticatedOriginPullsHostnameCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAuthenticatedOriginPullsHostnameCertificate:\n    fn::invoke:\n      function: cloudflare:getAuthenticatedOriginPullsHostnameCertificate\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        certificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAuthenticatedOriginPullsHostnameCertificate.\n",
                "properties": {
                    "certificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "certificateId",
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAuthenticatedOriginPullsHostnameCertificate.\n",
                "properties": {
                    "certificate": {
                        "description": "The hostname certificate.\n",
                        "type": "string"
                    },
                    "certificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "The date when the certificate expires.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "issuer": {
                        "description": "The certificate authority that issued the certificate.\n",
                        "type": "string"
                    },
                    "serialNumber": {
                        "description": "The serial number on the uploaded certificate.\n",
                        "type": "string"
                    },
                    "signature": {
                        "description": "The type of hash used for the certificate.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the certificate or the association.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deleted\", \"deployment*timed*out\", \"deletion*timed*out\".\n",
                        "type": "string"
                    },
                    "uploadedOn": {
                        "description": "The time when the certificate was uploaded.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certificate",
                    "certificateId",
                    "expiresOn",
                    "id",
                    "issuer",
                    "serialNumber",
                    "signature",
                    "status",
                    "uploadedOn",
                    "zoneId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsHostnameCertificates:getAuthenticatedOriginPullsHostnameCertificates": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsHostnameCertificates = cloudflare.getAuthenticatedOriginPullsHostnameCertificates({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_hostname_certificates = cloudflare.get_authenticated_origin_pulls_hostname_certificates(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsHostnameCertificates = Cloudflare.Index.GetAuthenticatedOriginPullsHostnameCertificates.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAuthenticatedOriginPullsHostnameCertificates(ctx, \u0026cloudflare.LookupAuthenticatedOriginPullsHostnameCertificatesArgs{\n\t\t\tZoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAuthenticatedOriginPullsHostnameCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAuthenticatedOriginPullsHostnameCertificates = CloudflareFunctions.getAuthenticatedOriginPullsHostnameCertificates(GetAuthenticatedOriginPullsHostnameCertificatesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAuthenticatedOriginPullsHostnameCertificates:\n    fn::invoke:\n      function: cloudflare:getAuthenticatedOriginPullsHostnameCertificates\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAuthenticatedOriginPullsHostnameCertificates.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getAuthenticatedOriginPullsHostnameCertificates.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getAuthenticatedOriginPullsHostnameCertificatesResult:getAuthenticatedOriginPullsHostnameCertificatesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getAuthenticatedOriginPullsSettings:getAuthenticatedOriginPullsSettings": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleAuthenticatedOriginPullsSettings = cloudflare.getAuthenticatedOriginPullsSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_authenticated_origin_pulls_settings = cloudflare.get_authenticated_origin_pulls_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleAuthenticatedOriginPullsSettings = Cloudflare.Index.GetAuthenticatedOriginPullsSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetAuthenticatedOriginPullsSettings(ctx, \u0026cloudflare.LookupAuthenticatedOriginPullsSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetAuthenticatedOriginPullsSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleAuthenticatedOriginPullsSettings = CloudflareFunctions.getAuthenticatedOriginPullsSettings(GetAuthenticatedOriginPullsSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleAuthenticatedOriginPullsSettings:\n    fn::invoke:\n      function: cloudflare:getAuthenticatedOriginPullsSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getAuthenticatedOriginPullsSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getAuthenticatedOriginPullsSettings.\n",
                "properties": {
                    "enabled": {
                        "description": "Indicates whether zone-level authenticated origin pulls is enabled.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "enabled",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getBotManagement:getBotManagement": {
            "description": "Accepted Permissions\n\n- `Bot Management Read`\n- `Bot Management Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleBotManagement = cloudflare.getBotManagement({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_bot_management = cloudflare.get_bot_management(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleBotManagement = Cloudflare.Index.GetBotManagement.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetBotManagement(ctx, \u0026cloudflare.LookupBotManagementArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetBotManagementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleBotManagement = CloudflareFunctions.getBotManagement(GetBotManagementArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleBotManagement:\n    fn::invoke:\n      function: cloudflare:getBotManagement\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getBotManagement.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getBotManagement.\n",
                "properties": {
                    "aiBotsProtection": {
                        "description": "Enable rule to block AI Scrapers and Crawlers. Please note the value \u003cspan pulumi-lang-nodejs=\"`onlyOnAdPages`\" pulumi-lang-dotnet=\"`OnlyOnAdPages`\" pulumi-lang-go=\"`onlyOnAdPages`\" pulumi-lang-python=\"`only_on_ad_pages`\" pulumi-lang-yaml=\"`onlyOnAdPages`\" pulumi-lang-java=\"`onlyOnAdPages`\"\u003e`onlyOnAdPages`\u003c/span\u003e is currently not available for Enterprise customers.\nAvailable values: \"block\", \"disabled\", \"only*on*ad_pages\".\n",
                        "type": "string"
                    },
                    "autoUpdateModel": {
                        "description": "Automatically update to the newest bot detection models created by Cloudflare as they are released. [Learn more.](https://developers.cloudflare.com/bots/reference/machine-learning-models#model-versions-and-release-notes)\n",
                        "type": "boolean"
                    },
                    "bmCookieEnabled": {
                        "description": "Indicates that the bot management cookie can be placed on end user devices accessing the site. Defaults to true\n",
                        "type": "boolean"
                    },
                    "cfRobotsVariant": {
                        "description": "Specifies the Robots Access Control License variant to use.\nAvailable values: \"off\", \u003cspan pulumi-lang-nodejs=\"\"policyOnly\"\" pulumi-lang-dotnet=\"\"PolicyOnly\"\" pulumi-lang-go=\"\"policyOnly\"\" pulumi-lang-python=\"\"policy_only\"\" pulumi-lang-yaml=\"\"policyOnly\"\" pulumi-lang-java=\"\"policyOnly\"\"\u003e\"policyOnly\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "contentBotsProtection": {
                        "description": "Enable rule to block content bots. When enabled, blocks automated traffic with low bot scores, excluding safe verified bot categories. Exceptions should be managed via skip rules.\nAvailable values: \"block\", \"disabled\".\n",
                        "type": "string"
                    },
                    "crawlerProtection": {
                        "description": "Enable rule to punish AI Scrapers and Crawlers via a link maze.\nAvailable values: \"enabled\", \"disabled\".\n",
                        "type": "string"
                    },
                    "enableJs": {
                        "description": "Use lightweight, invisible JavaScript detections to improve Bot Management. [Learn more about JavaScript Detections](https://developers.cloudflare.com/bots/reference/javascript-detections/).\n",
                        "type": "boolean"
                    },
                    "fightMode": {
                        "description": "Whether to enable Bot Fight Mode.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "isRobotsTxtManaged": {
                        "description": "Enable cloudflare managed robots.txt. If an existing robots.txt is detected, then managed robots.txt will be prepended to the existing robots.txt.\n",
                        "type": "boolean"
                    },
                    "optimizeWordpress": {
                        "description": "Whether to optimize Super Bot Fight Mode protections for Wordpress.\n",
                        "type": "boolean"
                    },
                    "sbfmDefinitelyAutomated": {
                        "description": "Super Bot Fight Mode (SBFM) action to take on definitely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "sbfmLikelyAutomated": {
                        "description": "Super Bot Fight Mode (SBFM) action to take on likely automated requests.\nAvailable values: \"allow\", \"block\", \u003cspan pulumi-lang-nodejs=\"\"managedChallenge\"\" pulumi-lang-dotnet=\"\"ManagedChallenge\"\" pulumi-lang-go=\"\"managedChallenge\"\" pulumi-lang-python=\"\"managed_challenge\"\" pulumi-lang-yaml=\"\"managedChallenge\"\" pulumi-lang-java=\"\"managedChallenge\"\"\u003e\"managedChallenge\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "sbfmStaticResourceProtection": {
                        "description": "Super Bot Fight Mode (SBFM) to enable static resource protection.\nEnable if static resources on your application need bot protection.\nNote: Static resource protection can also result in legitimate traffic being blocked.\n",
                        "type": "boolean"
                    },
                    "sbfmVerifiedBots": {
                        "description": "Super Bot Fight Mode (SBFM) action to take on verified bots requests.\nAvailable values: \"allow\", \"block\".\n",
                        "type": "string"
                    },
                    "staleZoneConfiguration": {
                        "$ref": "#/types/cloudflare:index/getBotManagementStaleZoneConfiguration:getBotManagementStaleZoneConfiguration",
                        "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades.\n"
                    },
                    "suppressSessionScore": {
                        "description": "Whether to disable tracking the highest bot score for a session in the Bot Management cookie.\n",
                        "type": "boolean"
                    },
                    "usingLatestModel": {
                        "description": "A read-only field that indicates whether the zone currently is running the latest ML model.\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "aiBotsProtection",
                    "autoUpdateModel",
                    "bmCookieEnabled",
                    "cfRobotsVariant",
                    "contentBotsProtection",
                    "crawlerProtection",
                    "enableJs",
                    "fightMode",
                    "id",
                    "isRobotsTxtManaged",
                    "optimizeWordpress",
                    "sbfmDefinitelyAutomated",
                    "sbfmLikelyAutomated",
                    "sbfmStaticResourceProtection",
                    "sbfmVerifiedBots",
                    "staleZoneConfiguration",
                    "suppressSessionScore",
                    "usingLatestModel"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getBotnetFeedConfigAsn:getBotnetFeedConfigAsn": {
            "description": "Accepted Permissions\n\n- `DDoS Botnet Feed Read`\n- `DDoS Botnet Feed Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleBotnetFeedConfigAsn = cloudflare.getBotnetFeedConfigAsn({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_botnet_feed_config_asn = cloudflare.get_botnet_feed_config_asn(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleBotnetFeedConfigAsn = Cloudflare.Index.GetBotnetFeedConfigAsn.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetBotnetFeedConfigAsn(ctx, \u0026cloudflare.GetBotnetFeedConfigAsnArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetBotnetFeedConfigAsnArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleBotnetFeedConfigAsn = CloudflareFunctions.getBotnetFeedConfigAsn(GetBotnetFeedConfigAsnArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleBotnetFeedConfigAsn:\n    fn::invoke:\n      function: cloudflare:getBotnetFeedConfigAsn\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getBotnetFeedConfigAsn.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getBotnetFeedConfigAsn.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "asn": {
                        "type": "integer"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    }
                },
                "required": [
                    "asn",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getByoIpPrefix:getByoIpPrefix": {
            "description": "Accepted Permissions\n\n- `IP Prefixes: BGP On Demand Read`\n- `IP Prefixes: BGP On Demand Write`\n- `IP Prefixes: Read`\n- `IP Prefixes: Write`\n- `Magic Transit Read`\n- `Magic Transit Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleByoIpPrefix = cloudflare.getByoIpPrefix({\n    accountId: \"258def64c72dae45f3e4c8516e2111f2\",\n    prefixId: \"2af39739cc4e3b5910c918468bb89828\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_byo_ip_prefix = cloudflare.get_byo_ip_prefix(account_id=\"258def64c72dae45f3e4c8516e2111f2\",\n    prefix_id=\"2af39739cc4e3b5910c918468bb89828\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleByoIpPrefix = Cloudflare.Index.GetByoIpPrefix.Invoke(new()\n    {\n        AccountId = \"258def64c72dae45f3e4c8516e2111f2\",\n        PrefixId = \"2af39739cc4e3b5910c918468bb89828\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetByoIpPrefix(ctx, \u0026cloudflare.LookupByoIpPrefixArgs{\n\t\t\tAccountId: pulumi.StringRef(\"258def64c72dae45f3e4c8516e2111f2\"),\n\t\t\tPrefixId:  \"2af39739cc4e3b5910c918468bb89828\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetByoIpPrefixArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleByoIpPrefix = CloudflareFunctions.getByoIpPrefix(GetByoIpPrefixArgs.builder()\n            .accountId(\"258def64c72dae45f3e4c8516e2111f2\")\n            .prefixId(\"2af39739cc4e3b5910c918468bb89828\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleByoIpPrefix:\n    fn::invoke:\n      function: cloudflare:getByoIpPrefix\n      arguments:\n        accountId: 258def64c72dae45f3e4c8516e2111f2\n        prefixId: 2af39739cc4e3b5910c918468bb89828\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getByoIpPrefix.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier of a Cloudflare account.\n"
                    },
                    "prefixId": {
                        "type": "string",
                        "description": "Identifier of an IP Prefix.\n"
                    }
                },
                "type": "object",
                "required": [
                    "prefixId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getByoIpPrefix.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier of a Cloudflare account.\n",
                        "type": "string"
                    },
                    "advertised": {
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.",
                        "description": "Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.\n",
                        "type": "boolean"
                    },
                    "advertisedModifiedAt": {
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.",
                        "description": "Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.\n",
                        "type": "string"
                    },
                    "approved": {
                        "description": "Approval state of the prefix (P = pending, V = active).\n",
                        "type": "string"
                    },
                    "asn": {
                        "description": "Autonomous System Number (ASN) the prefix will be advertised under.\n",
                        "type": "integer"
                    },
                    "cidr": {
                        "description": "IP Prefix in Classless Inter-Domain Routing format.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "delegateLoaCreation": {
                        "description": "Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.\n",
                        "type": "boolean"
                    },
                    "description": {
                        "description": "Description of the prefix.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier of an IP Prefix.\n",
                        "type": "string"
                    },
                    "irrValidationState": {
                        "description": "State of one kind of validation for an IP prefix.\n",
                        "type": "string"
                    },
                    "loaDocumentId": {
                        "description": "Identifier for the uploaded LOA document.\n",
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "onDemandEnabled": {
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.",
                        "description": "Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.\n",
                        "type": "boolean"
                    },
                    "onDemandLocked": {
                        "deprecationMessage": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.",
                        "description": "Whether advertisement status of the prefix is locked, meaning it cannot be changed.\n",
                        "type": "boolean"
                    },
                    "ownershipValidationState": {
                        "description": "State of one kind of validation for an IP prefix.\n",
                        "type": "string"
                    },
                    "ownershipValidationToken": {
                        "description": "Token provided to demonstrate ownership of the prefix.\n",
                        "type": "string"
                    },
                    "prefixId": {
                        "description": "Identifier of an IP Prefix.\n",
                        "type": "string"
                    },
                    "rpkiValidationState": {
                        "description": "State of one kind of validation for an IP prefix.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "advertised",
                    "advertisedModifiedAt",
                    "approved",
                    "asn",
                    "cidr",
                    "createdAt",
                    "delegateLoaCreation",
                    "description",
                    "id",
                    "irrValidationState",
                    "loaDocumentId",
                    "modifiedAt",
                    "onDemandEnabled",
                    "onDemandLocked",
                    "ownershipValidationState",
                    "ownershipValidationToken",
                    "prefixId",
                    "rpkiValidationState"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getByoIpPrefixes:getByoIpPrefixes": {
            "description": "Accepted Permissions\n\n- `IP Prefixes: BGP On Demand Read`\n- `IP Prefixes: BGP On Demand Write`\n- `IP Prefixes: Read`\n- `IP Prefixes: Write`\n- `Magic Transit Read`\n- `Magic Transit Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleByoIpPrefixes = cloudflare.getByoIpPrefixes({\n    accountId: \"258def64c72dae45f3e4c8516e2111f2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_byo_ip_prefixes = cloudflare.get_byo_ip_prefixes(account_id=\"258def64c72dae45f3e4c8516e2111f2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleByoIpPrefixes = Cloudflare.Index.GetByoIpPrefixes.Invoke(new()\n    {\n        AccountId = \"258def64c72dae45f3e4c8516e2111f2\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetByoIpPrefixes(ctx, \u0026cloudflare.LookupByoIpPrefixesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"258def64c72dae45f3e4c8516e2111f2\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetByoIpPrefixesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleByoIpPrefixes = CloudflareFunctions.getByoIpPrefixes(GetByoIpPrefixesArgs.builder()\n            .accountId(\"258def64c72dae45f3e4c8516e2111f2\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleByoIpPrefixes:\n    fn::invoke:\n      function: cloudflare:getByoIpPrefixes\n      arguments:\n        accountId: 258def64c72dae45f3e4c8516e2111f2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getByoIpPrefixes.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier of a Cloudflare account.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getByoIpPrefixes.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier of a Cloudflare account.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getByoIpPrefixesResult:getByoIpPrefixesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCallsSfuApp:getCallsSfuApp": {
            "description": "Accepted Permissions\n\n- `Calls Read`\n- `Calls Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCallsSfuApp = cloudflare.getCallsSfuApp({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    appId: \"2a95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_calls_sfu_app = cloudflare.get_calls_sfu_app(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    app_id=\"2a95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCallsSfuApp = Cloudflare.Index.GetCallsSfuApp.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AppId = \"2a95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCallsSfuApp(ctx, \u0026cloudflare.LookupCallsSfuAppArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAppId:     \"2a95132c15732412d22c1476fa83f27a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCallsSfuAppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCallsSfuApp = CloudflareFunctions.getCallsSfuApp(GetCallsSfuAppArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .appId(\"2a95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCallsSfuApp:\n    fn::invoke:\n      function: cloudflare:getCallsSfuApp\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        appId: 2a95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCallsSfuApp.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "appId": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a item.\n"
                    }
                },
                "type": "object",
                "required": [
                    "appId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCallsSfuApp.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "appId": {
                        "description": "A Cloudflare-generated unique identifier for a item.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and time the item was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the item was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A short description of Calls app, not shown to end users.\n",
                        "type": "string"
                    },
                    "uid": {
                        "description": "A Cloudflare-generated unique identifier for a item.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "appId",
                    "created",
                    "modified",
                    "name",
                    "uid",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCallsSfuApps:getCallsSfuApps": {
            "description": "Accepted Permissions\n\n- `Calls Read`\n- `Calls Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCallsSfuApps = cloudflare.getCallsSfuApps({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_calls_sfu_apps = cloudflare.get_calls_sfu_apps(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCallsSfuApps = Cloudflare.Index.GetCallsSfuApps.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCallsSfuApps(ctx, \u0026cloudflare.LookupCallsSfuAppsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCallsSfuAppsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCallsSfuApps = CloudflareFunctions.getCallsSfuApps(GetCallsSfuAppsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCallsSfuApps:\n    fn::invoke:\n      function: cloudflare:getCallsSfuApps\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCallsSfuApps.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCallsSfuApps.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCallsSfuAppsResult:getCallsSfuAppsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCallsTurnApp:getCallsTurnApp": {
            "description": "Accepted Permissions\n\n- `Calls Read`\n- `Calls Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCallsTurnApp = cloudflare.getCallsTurnApp({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    keyId: \"2a95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_calls_turn_app = cloudflare.get_calls_turn_app(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    key_id=\"2a95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCallsTurnApp = Cloudflare.Index.GetCallsTurnApp.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        KeyId = \"2a95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCallsTurnApp(ctx, \u0026cloudflare.LookupCallsTurnAppArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tKeyId:     \"2a95132c15732412d22c1476fa83f27a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCallsTurnAppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCallsTurnApp = CloudflareFunctions.getCallsTurnApp(GetCallsTurnAppArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .keyId(\"2a95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCallsTurnApp:\n    fn::invoke:\n      function: cloudflare:getCallsTurnApp\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        keyId: 2a95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCallsTurnApp.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "keyId": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a item.\n"
                    }
                },
                "type": "object",
                "required": [
                    "keyId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCallsTurnApp.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and time the item was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "keyId": {
                        "description": "A Cloudflare-generated unique identifier for a item.\n",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the item was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A short description of Calls app, not shown to end users.\n",
                        "type": "string"
                    },
                    "uid": {
                        "description": "A Cloudflare-generated unique identifier for a item.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "created",
                    "keyId",
                    "modified",
                    "name",
                    "uid",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCallsTurnApps:getCallsTurnApps": {
            "description": "Accepted Permissions\n\n- `Calls Read`\n- `Calls Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCallsTurnApps = cloudflare.getCallsTurnApps({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_calls_turn_apps = cloudflare.get_calls_turn_apps(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCallsTurnApps = Cloudflare.Index.GetCallsTurnApps.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCallsTurnApps(ctx, \u0026cloudflare.LookupCallsTurnAppsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCallsTurnAppsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCallsTurnApps = CloudflareFunctions.getCallsTurnApps(GetCallsTurnAppsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCallsTurnApps:\n    fn::invoke:\n      function: cloudflare:getCallsTurnApps\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCallsTurnApps.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCallsTurnApps.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCallsTurnAppsResult:getCallsTurnAppsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCertificateAuthoritiesHostnameAssociations:getCertificateAuthoritiesHostnameAssociations": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCertificateAuthoritiesHostnameAssociations = cloudflare.getCertificateAuthoritiesHostnameAssociations({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    mtlsCertificateId: \"b2134436-2555-4acf-be5b-26c48136575e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_certificate_authorities_hostname_associations = cloudflare.get_certificate_authorities_hostname_associations(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    mtls_certificate_id=\"b2134436-2555-4acf-be5b-26c48136575e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCertificateAuthoritiesHostnameAssociations = Cloudflare.Index.GetCertificateAuthoritiesHostnameAssociations.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        MtlsCertificateId = \"b2134436-2555-4acf-be5b-26c48136575e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCertificateAuthoritiesHostnameAssociations(ctx, \u0026cloudflare.LookupCertificateAuthoritiesHostnameAssociationsArgs{\n\t\t\tZoneId:            pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tMtlsCertificateId: pulumi.StringRef(\"b2134436-2555-4acf-be5b-26c48136575e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCertificateAuthoritiesHostnameAssociationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCertificateAuthoritiesHostnameAssociations = CloudflareFunctions.getCertificateAuthoritiesHostnameAssociations(GetCertificateAuthoritiesHostnameAssociationsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .mtlsCertificateId(\"b2134436-2555-4acf-be5b-26c48136575e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCertificateAuthoritiesHostnameAssociations:\n    fn::invoke:\n      function: cloudflare:getCertificateAuthoritiesHostnameAssociations\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        mtlsCertificateId: b2134436-2555-4acf-be5b-26c48136575e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCertificateAuthoritiesHostnameAssociations.\n",
                "properties": {
                    "mtlsCertificateId": {
                        "type": "string",
                        "description": "The UUID to match against for a certificate that was uploaded to the mTLS Certificate Management endpoint. If no mtls*certificate*id is given, the results will be the hostnames associated to your active Cloudflare Managed CA.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCertificateAuthoritiesHostnameAssociations.\n",
                "properties": {
                    "hostnames": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "mtlsCertificateId": {
                        "description": "The UUID to match against for a certificate that was uploaded to the mTLS Certificate Management endpoint. If no mtls*certificate*id is given, the results will be the hostnames associated to your active Cloudflare Managed CA.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "hostnames",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCertificatePack:getCertificatePack": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCertificatePack = cloudflare.getCertificatePack({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificatePackId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_certificate_pack = cloudflare.get_certificate_pack(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    certificate_pack_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCertificatePack = Cloudflare.Index.GetCertificatePack.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CertificatePackId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCertificatePack(ctx, \u0026cloudflare.LookupCertificatePackArgs{\n\t\t\tZoneId:            pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCertificatePackId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCertificatePackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCertificatePack = CloudflareFunctions.getCertificatePack(GetCertificatePackArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .certificatePackId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCertificatePack:\n    fn::invoke:\n      function: cloudflare:getCertificatePack\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        certificatePackId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCertificatePack.\n",
                "properties": {
                    "certificatePackId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCertificatePackFilter:getCertificatePackFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCertificatePack.\n",
                "properties": {
                    "certificateAuthority": {
                        "description": "Certificate Authority selected for the order.  For information on any certificate authority specific details or restrictions [see this page for more details.](https://developers.cloudflare.com/ssl/reference/certificate-authorities)\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n",
                        "type": "string"
                    },
                    "certificatePackId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "certificates": {
                        "description": "Array of certificates in this pack.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCertificatePackCertificate:getCertificatePackCertificate"
                        },
                        "type": "array"
                    },
                    "cloudflareBranding": {
                        "description": "Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.\n",
                        "type": "boolean"
                    },
                    "dcvDelegationRecords": {
                        "description": "DCV Delegation records for domain validation.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCertificatePackDcvDelegationRecord:getCertificatePackDcvDelegationRecord"
                        },
                        "type": "array"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCertificatePackFilter:getCertificatePackFilter"
                    },
                    "hosts": {
                        "description": "Comma separated list of valid host names for the certificate packs. Must contain the zone apex, may not contain more than 50 hosts, and may not be empty.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "primaryCertificate": {
                        "description": "Identifier of the primary certificate in a pack.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of certificate pack.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Type of certificate pack.\nAvailable values: \"mh*custom\", \"managed*hostname\", \"sni*custom\", \"universal\", \"advanced\", \"total*tls\", \"keyless\", \u003cspan pulumi-lang-nodejs=\"\"legacyCustom\"\" pulumi-lang-dotnet=\"\"LegacyCustom\"\" pulumi-lang-go=\"\"legacyCustom\"\" pulumi-lang-python=\"\"legacy_custom\"\" pulumi-lang-yaml=\"\"legacyCustom\"\" pulumi-lang-java=\"\"legacyCustom\"\"\u003e\"legacyCustom\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "validationErrors": {
                        "description": "Domain validation errors that have been received by the certificate authority (CA).\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCertificatePackValidationError:getCertificatePackValidationError"
                        },
                        "type": "array"
                    },
                    "validationMethod": {
                        "description": "Validation Method selected for the order.\nAvailable values: \"txt\", \"http\", \"email\".\n",
                        "type": "string"
                    },
                    "validationRecords": {
                        "description": "Certificates' validation records.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCertificatePackValidationRecord:getCertificatePackValidationRecord"
                        },
                        "type": "array"
                    },
                    "validityDays": {
                        "description": "Validity Days selected for the order.\nAvailable values: 14, 30, 90, 365.\n",
                        "type": "integer"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certificateAuthority",
                    "certificates",
                    "cloudflareBranding",
                    "dcvDelegationRecords",
                    "hosts",
                    "id",
                    "primaryCertificate",
                    "status",
                    "type",
                    "validationErrors",
                    "validationMethod",
                    "validationRecords",
                    "validityDays"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCertificatePacks:getCertificatePacks": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCertificatePacks = cloudflare.getCertificatePacks({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    deploy: \"staging\",\n    status: \"all\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_certificate_packs = cloudflare.get_certificate_packs(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    deploy=\"staging\",\n    status=\"all\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCertificatePacks = Cloudflare.Index.GetCertificatePacks.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Deploy = \"staging\",\n        Status = \"all\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCertificatePacks(ctx, \u0026cloudflare.LookupCertificatePacksArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDeploy: pulumi.StringRef(\"staging\"),\n\t\t\tStatus: pulumi.StringRef(\"all\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCertificatePacksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCertificatePacks = CloudflareFunctions.getCertificatePacks(GetCertificatePacksArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .deploy(\"staging\")\n            .status(\"all\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCertificatePacks:\n    fn::invoke:\n      function: cloudflare:getCertificatePacks\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        deploy: staging\n        status: all\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCertificatePacks.\n",
                "properties": {
                    "deploy": {
                        "type": "string",
                        "description": "Specify the deployment environment for the certificate packs.\nAvailable values: \"staging\", \"production\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Include Certificate Packs of all statuses, not just active ones.\nAvailable values: \"all\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCertificatePacks.\n",
                "properties": {
                    "deploy": {
                        "description": "Specify the deployment environment for the certificate packs.\nAvailable values: \"staging\", \"production\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCertificatePacksResult:getCertificatePacksResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "Include Certificate Packs of all statuses, not just active ones.\nAvailable values: \"all\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getClientCertificate:getClientCertificate": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleClientCertificate = cloudflare.getClientCertificate({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    clientCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_client_certificate = cloudflare.get_client_certificate(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    client_certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleClientCertificate = Cloudflare.Index.GetClientCertificate.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ClientCertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetClientCertificate(ctx, \u0026cloudflare.LookupClientCertificateArgs{\n\t\t\tZoneId:              pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tClientCertificateId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetClientCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleClientCertificate = CloudflareFunctions.getClientCertificate(GetClientCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .clientCertificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleClientCertificate:\n    fn::invoke:\n      function: cloudflare:getClientCertificate\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        clientCertificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getClientCertificate.\n",
                "properties": {
                    "clientCertificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getClientCertificateFilter:getClientCertificateFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getClientCertificate.\n",
                "properties": {
                    "certificate": {
                        "description": "The Client Certificate PEM\n",
                        "type": "string"
                    },
                    "certificateAuthority": {
                        "$ref": "#/types/cloudflare:index/getClientCertificateCertificateAuthority:getClientCertificateCertificateAuthority",
                        "description": "Certificate Authority used to issue the Client Certificate\n"
                    },
                    "clientCertificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "commonName": {
                        "description": "Common Name of the Client Certificate\n",
                        "type": "string"
                    },
                    "country": {
                        "description": "Country, provided by the CSR\n",
                        "type": "string"
                    },
                    "csr": {
                        "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "Date that the Client Certificate expires\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getClientCertificateFilter:getClientCertificateFilter"
                    },
                    "fingerprintSha256": {
                        "description": "Unique identifier of the Client Certificate\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "issuedOn": {
                        "description": "Date that the Client Certificate was issued by the Certificate Authority\n",
                        "type": "string"
                    },
                    "location": {
                        "description": "Location, provided by the CSR\n",
                        "type": "string"
                    },
                    "organization": {
                        "description": "Organization, provided by the CSR\n",
                        "type": "string"
                    },
                    "organizationalUnit": {
                        "description": "Organizational Unit, provided by the CSR\n",
                        "type": "string"
                    },
                    "serialNumber": {
                        "description": "The serial number on the created Client Certificate.\n",
                        "type": "string"
                    },
                    "signature": {
                        "description": "The type of hash used for the Client Certificate..\n",
                        "type": "string"
                    },
                    "ski": {
                        "description": "Subject Key Identifier\n",
                        "type": "string"
                    },
                    "state": {
                        "description": "State, provided by the CSR\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Client Certificates may be active or revoked, and the pending*reactivation or pending*revocation represent in-progress asynchronous transitions\nAvailable values: \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n",
                        "type": "string"
                    },
                    "validityDays": {
                        "description": "The number of days the Client Certificate will be valid after the\u003cspan pulumi-lang-nodejs=\" issuedOn \" pulumi-lang-dotnet=\" IssuedOn \" pulumi-lang-go=\" issuedOn \" pulumi-lang-python=\" issued_on \" pulumi-lang-yaml=\" issuedOn \" pulumi-lang-java=\" issuedOn \"\u003e issuedOn \u003c/span\u003edate\n",
                        "type": "integer"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certificate",
                    "certificateAuthority",
                    "commonName",
                    "country",
                    "csr",
                    "expiresOn",
                    "fingerprintSha256",
                    "id",
                    "issuedOn",
                    "location",
                    "organization",
                    "organizationalUnit",
                    "serialNumber",
                    "signature",
                    "ski",
                    "state",
                    "status",
                    "validityDays"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getClientCertificates:getClientCertificates": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleClientCertificates = cloudflare.getClientCertificates({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    limit: 10,\n    offset: 10,\n    status: \"all\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_client_certificates = cloudflare.get_client_certificates(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    limit=10,\n    offset=10,\n    status=\"all\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleClientCertificates = Cloudflare.Index.GetClientCertificates.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Limit = 10,\n        Offset = 10,\n        Status = \"all\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetClientCertificates(ctx, \u0026cloudflare.LookupClientCertificatesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t\tOffset: pulumi.IntRef(10),\n\t\t\tStatus: pulumi.StringRef(\"all\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetClientCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleClientCertificates = CloudflareFunctions.getClientCertificates(GetClientCertificatesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .limit(10)\n            .offset(10)\n            .status(\"all\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleClientCertificates:\n    fn::invoke:\n      function: cloudflare:getClientCertificates\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        limit: 10\n        offset: 10\n        status: all\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getClientCertificates.\n",
                "properties": {
                    "limit": {
                        "type": "integer",
                        "description": "Limit to the number of records returned.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "offset": {
                        "type": "integer",
                        "description": "Offset the results\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Client Certitifcate Status to filter results by.\nAvailable values: \"all\", \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getClientCertificates.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "limit": {
                        "description": "Limit to the number of records returned.\n",
                        "type": "integer"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "offset": {
                        "description": "Offset the results\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getClientCertificatesResult:getClientCertificatesResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "Client Certitifcate Status to filter results by.\nAvailable values: \"all\", \"active\", \"pending*reactivation\", \"pending*revocation\", \"revoked\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCloudConnectorRules:getCloudConnectorRules": {
            "description": "Accepted Permissions\n\n- `Cloud Connector Read`\n- `Cloud Connector Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudConnectorRules = cloudflare.getCloudConnectorRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloud_connector_rules = cloudflare.get_cloud_connector_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudConnectorRules = Cloudflare.Index.GetCloudConnectorRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCloudConnectorRules(ctx, \u0026cloudflare.LookupCloudConnectorRulesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCloudConnectorRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCloudConnectorRules = CloudflareFunctions.getCloudConnectorRules(GetCloudConnectorRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCloudConnectorRules:\n    fn::invoke:\n      function: cloudflare:getCloudConnectorRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCloudConnectorRules.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCloudConnectorRules.\n",
                "properties": {
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "rules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCloudConnectorRulesRule:getCloudConnectorRulesRule"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "rules"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCloudforceOneRequest:getCloudforceOneRequest": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Read`\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequest = cloudflare.getCloudforceOneRequest({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    requestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request = cloudflare.get_cloudforce_one_request(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    request_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequest = Cloudflare.Index.GetCloudforceOneRequest.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RequestId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCloudforceOneRequest(ctx, \u0026cloudflare.LookupCloudforceOneRequestArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRequestId: pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCloudforceOneRequestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCloudforceOneRequest = CloudflareFunctions.getCloudforceOneRequest(GetCloudforceOneRequestArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .requestId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCloudforceOneRequest:\n    fn::invoke:\n      function: cloudflare:getCloudforceOneRequest\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        requestId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCloudforceOneRequest.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCloudforceOneRequestFilter:getCloudforceOneRequestFilter"
                    },
                    "requestId": {
                        "type": "string",
                        "description": "UUID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCloudforceOneRequest.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "completed": {
                        "type": "string"
                    },
                    "content": {
                        "description": "Request content.\n",
                        "type": "string"
                    },
                    "created": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCloudforceOneRequestFilter:getCloudforceOneRequestFilter"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "messageTokens": {
                        "description": "Tokens for the request messages.\n",
                        "type": "integer"
                    },
                    "priority": {
                        "type": "string"
                    },
                    "readableId": {
                        "description": "Readable Request ID.\n",
                        "type": "string"
                    },
                    "request": {
                        "description": "Requested information from request.\n",
                        "type": "string"
                    },
                    "requestId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n",
                        "type": "string"
                    },
                    "summary": {
                        "description": "Brief description of the request.\n",
                        "type": "string"
                    },
                    "tlp": {
                        "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n",
                        "type": "string"
                    },
                    "tokens": {
                        "description": "Tokens for the request.\n",
                        "type": "integer"
                    },
                    "updated": {
                        "type": "string"
                    }
                },
                "required": [
                    "completed",
                    "content",
                    "created",
                    "id",
                    "messageTokens",
                    "priority",
                    "readableId",
                    "request",
                    "status",
                    "summary",
                    "tlp",
                    "tokens",
                    "updated"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCloudforceOneRequestAsset:getCloudforceOneRequestAsset": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Read`\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequestAsset = cloudflare.getCloudforceOneRequestAsset({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    requestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    assetId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request_asset = cloudflare.get_cloudforce_one_request_asset(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    request_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    asset_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequestAsset = Cloudflare.Index.GetCloudforceOneRequestAsset.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RequestId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        AssetId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCloudforceOneRequestAsset(ctx, \u0026cloudflare.LookupCloudforceOneRequestAssetArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRequestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t\tAssetId:   \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCloudforceOneRequestAssetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCloudforceOneRequestAsset = CloudflareFunctions.getCloudforceOneRequestAsset(GetCloudforceOneRequestAssetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .requestId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .assetId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCloudforceOneRequestAsset:\n    fn::invoke:\n      function: cloudflare:getCloudforceOneRequestAsset\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        requestId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        assetId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCloudforceOneRequestAsset.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "assetId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "requestId": {
                        "type": "string",
                        "description": "UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "assetId",
                    "requestId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCloudforceOneRequestAsset.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "assetId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "Defines the asset creation time.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "Asset description.\n",
                        "type": "string"
                    },
                    "fileType": {
                        "description": "Asset file type.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Asset name.\n",
                        "type": "string"
                    },
                    "requestId": {
                        "description": "UUID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "assetId",
                    "created",
                    "description",
                    "fileType",
                    "id",
                    "name",
                    "requestId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCloudforceOneRequestMessage:getCloudforceOneRequestMessage": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequestMessage = cloudflare.getCloudforceOneRequestMessage({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    requestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    page: 0,\n    perPage: 10,\n    after: \"2022-04-01T05:20:00Z\",\n    before: \"2024-01-01T00:00:00Z\",\n    sortBy: \"created\",\n    sortOrder: \"asc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request_message = cloudflare.get_cloudforce_one_request_message(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    request_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    page=0,\n    per_page=10,\n    after=\"2022-04-01T05:20:00Z\",\n    before=\"2024-01-01T00:00:00Z\",\n    sort_by=\"created\",\n    sort_order=\"asc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequestMessage = Cloudflare.Index.GetCloudforceOneRequestMessage.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RequestId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Page = 0,\n        PerPage = 10,\n        After = \"2022-04-01T05:20:00Z\",\n        Before = \"2024-01-01T00:00:00Z\",\n        SortBy = \"created\",\n        SortOrder = \"asc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCloudforceOneRequestMessage(ctx, \u0026cloudflare.LookupCloudforceOneRequestMessageArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRequestId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t\tPage:      0,\n\t\t\tPerPage:   10,\n\t\t\tAfter:     pulumi.StringRef(\"2022-04-01T05:20:00Z\"),\n\t\t\tBefore:    pulumi.StringRef(\"2024-01-01T00:00:00Z\"),\n\t\t\tSortBy:    pulumi.StringRef(\"created\"),\n\t\t\tSortOrder: pulumi.StringRef(\"asc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCloudforceOneRequestMessageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCloudforceOneRequestMessage = CloudflareFunctions.getCloudforceOneRequestMessage(GetCloudforceOneRequestMessageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .requestId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .page(0)\n            .perPage(10)\n            .after(\"2022-04-01T05:20:00Z\")\n            .before(\"2024-01-01T00:00:00Z\")\n            .sortBy(\"created\")\n            .sortOrder(\"asc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCloudforceOneRequestMessage:\n    fn::invoke:\n      function: cloudflare:getCloudforceOneRequestMessage\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        requestId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        page: 0\n        perPage: 10\n        after: 2022-04-01T05:20:00Z\n        before: 2024-01-01T00:00:00Z\n        sortBy: created\n        sortOrder: asc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCloudforceOneRequestMessage.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "after": {
                        "type": "string",
                        "description": "Retrieve mes  ges created after this time.\n"
                    },
                    "before": {
                        "type": "string",
                        "description": "Retrieve messages created before this time.\n"
                    },
                    "page": {
                        "type": "integer",
                        "description": "Page number of results.\n"
                    },
                    "perPage": {
                        "type": "integer",
                        "description": "Number of results per page.\n"
                    },
                    "requestId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "sortBy": {
                        "type": "string",
                        "description": "Field to sort results by.\n"
                    },
                    "sortOrder": {
                        "type": "string",
                        "description": "Sort order (asc or desc).\nAvailable values: \"asc\", \"desc\".\n"
                    }
                },
                "type": "object",
                "required": [
                    "page",
                    "perPage",
                    "requestId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCloudforceOneRequestMessage.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "after": {
                        "description": "Retrieve mes  ges created after this time.\n",
                        "type": "string"
                    },
                    "author": {
                        "description": "Author of message.\n",
                        "type": "string"
                    },
                    "before": {
                        "description": "Retrieve messages created before this time.\n",
                        "type": "string"
                    },
                    "content": {
                        "description": "Content of message.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "Defines the message creation time.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "isFollowOnRequest": {
                        "description": "Whether the message is a follow-on request.\n",
                        "type": "boolean"
                    },
                    "page": {
                        "description": "Page number of results.\n",
                        "type": "integer"
                    },
                    "perPage": {
                        "description": "Number of results per page.\n",
                        "type": "integer"
                    },
                    "requestId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "sortBy": {
                        "description": "Field to sort results by.\n",
                        "type": "string"
                    },
                    "sortOrder": {
                        "description": "Sort order (asc or desc).\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "updated": {
                        "description": "Defines the message last updated time.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "author",
                    "content",
                    "created",
                    "id",
                    "isFollowOnRequest",
                    "page",
                    "perPage",
                    "requestId",
                    "updated"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCloudforceOneRequestPriority:getCloudforceOneRequestPriority": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Read`\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequestPriority = cloudflare.getCloudforceOneRequestPriority({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    priorityId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_request_priority = cloudflare.get_cloudforce_one_request_priority(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    priority_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequestPriority = Cloudflare.Index.GetCloudforceOneRequestPriority.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PriorityId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCloudforceOneRequestPriority(ctx, \u0026cloudflare.LookupCloudforceOneRequestPriorityArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPriorityId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCloudforceOneRequestPriorityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCloudforceOneRequestPriority = CloudflareFunctions.getCloudforceOneRequestPriority(GetCloudforceOneRequestPriorityArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .priorityId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCloudforceOneRequestPriority:\n    fn::invoke:\n      function: cloudflare:getCloudforceOneRequestPriority\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        priorityId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCloudforceOneRequestPriority.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "priorityId": {
                        "type": "string",
                        "description": "UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "priorityId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCloudforceOneRequestPriority.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "completed": {
                        "type": "string"
                    },
                    "content": {
                        "description": "Request content.\n",
                        "type": "string"
                    },
                    "created": {
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "messageTokens": {
                        "description": "Tokens for the request messages.\n",
                        "type": "integer"
                    },
                    "priority": {
                        "type": "string"
                    },
                    "priorityId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "readableId": {
                        "description": "Readable Request ID.\n",
                        "type": "string"
                    },
                    "request": {
                        "description": "Requested information from request.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n",
                        "type": "string"
                    },
                    "summary": {
                        "description": "Brief description of the request.\n",
                        "type": "string"
                    },
                    "tlp": {
                        "description": "The CISA defined Traffic Light Protocol (TLP).\nAvailable values: \"clear\", \"amber\", \"amber-strict\", \"green\", \"red\".\n",
                        "type": "string"
                    },
                    "tokens": {
                        "description": "Tokens for the request.\n",
                        "type": "integer"
                    },
                    "updated": {
                        "type": "string"
                    }
                },
                "required": [
                    "completed",
                    "content",
                    "created",
                    "id",
                    "messageTokens",
                    "priority",
                    "priorityId",
                    "readableId",
                    "request",
                    "status",
                    "summary",
                    "tlp",
                    "tokens",
                    "updated"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCloudforceOneRequests:getCloudforceOneRequests": {
            "description": "Accepted Permissions\n\n- `Cloudforce One Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCloudforceOneRequests = cloudflare.getCloudforceOneRequests({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    page: 0,\n    perPage: 10,\n    completedAfter: \"2022-01-01T00:00:00Z\",\n    completedBefore: \"2024-01-01T00:00:00Z\",\n    createdAfter: \"2022-01-01T00:00:00Z\",\n    createdBefore: \"2024-01-01T00:00:00Z\",\n    requestType: \"Victomology\",\n    sortBy: \"created\",\n    sortOrder: \"asc\",\n    status: \"open\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_cloudforce_one_requests = cloudflare.get_cloudforce_one_requests(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    page=0,\n    per_page=10,\n    completed_after=\"2022-01-01T00:00:00Z\",\n    completed_before=\"2024-01-01T00:00:00Z\",\n    created_after=\"2022-01-01T00:00:00Z\",\n    created_before=\"2024-01-01T00:00:00Z\",\n    request_type=\"Victomology\",\n    sort_by=\"created\",\n    sort_order=\"asc\",\n    status=\"open\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCloudforceOneRequests = Cloudflare.Index.GetCloudforceOneRequests.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Page = 0,\n        PerPage = 10,\n        CompletedAfter = \"2022-01-01T00:00:00Z\",\n        CompletedBefore = \"2024-01-01T00:00:00Z\",\n        CreatedAfter = \"2022-01-01T00:00:00Z\",\n        CreatedBefore = \"2024-01-01T00:00:00Z\",\n        RequestType = \"Victomology\",\n        SortBy = \"created\",\n        SortOrder = \"asc\",\n        Status = \"open\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCloudforceOneRequests(ctx, \u0026cloudflare.LookupCloudforceOneRequestsArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPage:            0,\n\t\t\tPerPage:         10,\n\t\t\tCompletedAfter:  pulumi.StringRef(\"2022-01-01T00:00:00Z\"),\n\t\t\tCompletedBefore: pulumi.StringRef(\"2024-01-01T00:00:00Z\"),\n\t\t\tCreatedAfter:    pulumi.StringRef(\"2022-01-01T00:00:00Z\"),\n\t\t\tCreatedBefore:   pulumi.StringRef(\"2024-01-01T00:00:00Z\"),\n\t\t\tRequestType:     pulumi.StringRef(\"Victomology\"),\n\t\t\tSortBy:          pulumi.StringRef(\"created\"),\n\t\t\tSortOrder:       pulumi.StringRef(\"asc\"),\n\t\t\tStatus:          pulumi.StringRef(\"open\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCloudforceOneRequestsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCloudforceOneRequests = CloudflareFunctions.getCloudforceOneRequests(GetCloudforceOneRequestsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .page(0)\n            .perPage(10)\n            .completedAfter(\"2022-01-01T00:00:00Z\")\n            .completedBefore(\"2024-01-01T00:00:00Z\")\n            .createdAfter(\"2022-01-01T00:00:00Z\")\n            .createdBefore(\"2024-01-01T00:00:00Z\")\n            .requestType(\"Victomology\")\n            .sortBy(\"created\")\n            .sortOrder(\"asc\")\n            .status(\"open\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCloudforceOneRequests:\n    fn::invoke:\n      function: cloudflare:getCloudforceOneRequests\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        page: 0\n        perPage: 10\n        completedAfter: 2022-01-01T00:00:00Z\n        completedBefore: 2024-01-01T00:00:00Z\n        createdAfter: 2022-01-01T00:00:00Z\n        createdBefore: 2024-01-01T00:00:00Z\n        requestType: Victomology\n        sortBy: created\n        sortOrder: asc\n        status: open\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCloudforceOneRequests.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "completedAfter": {
                        "type": "string",
                        "description": "Retrieve requests completed after this time.\n"
                    },
                    "completedBefore": {
                        "type": "string",
                        "description": "Retrieve requests completed before this time.\n"
                    },
                    "createdAfter": {
                        "type": "string",
                        "description": "Retrieve requests created after this time.\n"
                    },
                    "createdBefore": {
                        "type": "string",
                        "description": "Retrieve requests created before this time.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "page": {
                        "type": "integer",
                        "description": "Page number of results.\n"
                    },
                    "perPage": {
                        "type": "integer",
                        "description": "Number of results per page.\n"
                    },
                    "requestType": {
                        "type": "string",
                        "description": "Requested information from request.\n"
                    },
                    "sortBy": {
                        "type": "string",
                        "description": "Field to sort results by.\n"
                    },
                    "sortOrder": {
                        "type": "string",
                        "description": "Sort order (asc or desc).\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n"
                    }
                },
                "type": "object",
                "required": [
                    "page",
                    "perPage"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCloudforceOneRequests.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "completedAfter": {
                        "description": "Retrieve requests completed after this time.\n",
                        "type": "string"
                    },
                    "completedBefore": {
                        "description": "Retrieve requests completed before this time.\n",
                        "type": "string"
                    },
                    "createdAfter": {
                        "description": "Retrieve requests created after this time.\n",
                        "type": "string"
                    },
                    "createdBefore": {
                        "description": "Retrieve requests created before this time.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "page": {
                        "description": "Page number of results.\n",
                        "type": "integer"
                    },
                    "perPage": {
                        "description": "Number of results per page.\n",
                        "type": "integer"
                    },
                    "requestType": {
                        "description": "Requested information from request.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCloudforceOneRequestsResult:getCloudforceOneRequestsResult"
                        },
                        "type": "array"
                    },
                    "sortBy": {
                        "description": "Field to sort results by.\n",
                        "type": "string"
                    },
                    "sortOrder": {
                        "description": "Sort order (asc or desc).\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Request Status.\nAvailable values: \"open\", \"accepted\", \"reported\", \"approved\", \"completed\", \"declined\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "page",
                    "perPage",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getConnectivityDirectoryService:getConnectivityDirectoryService": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleConnectivityDirectoryService = cloudflare.getConnectivityDirectoryService({\n    accountId: \"account_id\",\n    serviceId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_connectivity_directory_service = cloudflare.get_connectivity_directory_service(account_id=\"account_id\",\n    service_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleConnectivityDirectoryService = Cloudflare.Index.GetConnectivityDirectoryService.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ServiceId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetConnectivityDirectoryService(ctx, \u0026cloudflare.LookupConnectivityDirectoryServiceArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tServiceId: pulumi.StringRef(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetConnectivityDirectoryServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleConnectivityDirectoryService = CloudflareFunctions.getConnectivityDirectoryService(GetConnectivityDirectoryServiceArgs.builder()\n            .accountId(\"account_id\")\n            .serviceId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleConnectivityDirectoryService:\n    fn::invoke:\n      function: cloudflare:getConnectivityDirectoryService\n      arguments:\n        accountId: account_id\n        serviceId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getConnectivityDirectoryService.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServiceFilter:getConnectivityDirectoryServiceFilter"
                    },
                    "serviceId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getConnectivityDirectoryService.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "appProtocol": {
                        "description": "Available values: \"postgresql\", \"mysql\".\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServiceFilter:getConnectivityDirectoryServiceFilter"
                    },
                    "host": {
                        "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServiceHost:getConnectivityDirectoryServiceHost"
                    },
                    "httpPort": {
                        "type": "integer"
                    },
                    "httpsPort": {
                        "type": "integer"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "serviceId": {
                        "type": "string"
                    },
                    "tcpPort": {
                        "type": "integer"
                    },
                    "tlsSettings": {
                        "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServiceTlsSettings:getConnectivityDirectoryServiceTlsSettings",
                        "description": "TLS settings for a connectivity service.\n"
                    },
                    "type": {
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "appProtocol",
                    "createdAt",
                    "host",
                    "httpPort",
                    "httpsPort",
                    "id",
                    "name",
                    "serviceId",
                    "tcpPort",
                    "tlsSettings",
                    "type",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getConnectivityDirectoryServices:getConnectivityDirectoryServices": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleConnectivityDirectoryServices = cloudflare.getConnectivityDirectoryServices({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    type: \"tcp\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_connectivity_directory_services = cloudflare.get_connectivity_directory_services(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    type=\"tcp\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleConnectivityDirectoryServices = Cloudflare.Index.GetConnectivityDirectoryServices.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Type = \"tcp\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetConnectivityDirectoryServices(ctx, \u0026cloudflare.LookupConnectivityDirectoryServicesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tType:      pulumi.StringRef(\"tcp\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetConnectivityDirectoryServicesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleConnectivityDirectoryServices = CloudflareFunctions.getConnectivityDirectoryServices(GetConnectivityDirectoryServicesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .type(\"tcp\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleConnectivityDirectoryServices:\n    fn::invoke:\n      function: cloudflare:getConnectivityDirectoryServices\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        type: tcp\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getConnectivityDirectoryServices.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Available values: \"tcp\", \"http\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getConnectivityDirectoryServices.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getConnectivityDirectoryServicesResult:getConnectivityDirectoryServicesResult"
                        },
                        "type": "array"
                    },
                    "type": {
                        "description": "Available values: \"tcp\", \"http\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getContentScanning:getContentScanning": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleContentScanning = cloudflare.getContentScanning({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_content_scanning = cloudflare.get_content_scanning(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleContentScanning = Cloudflare.Index.GetContentScanning.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetContentScanning(ctx, \u0026cloudflare.LookupContentScanningArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetContentScanningArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleContentScanning = CloudflareFunctions.getContentScanning(GetContentScanningArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleContentScanning:\n    fn::invoke:\n      function: cloudflare:getContentScanning\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getContentScanning.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getContentScanning.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "modified": {
                        "description": "Defines the last modification date (ISO 8601) of the Content Scanning status.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "Defines the status of Content Scanning.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "modified",
                    "value",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getContentScanningExpressions:getContentScanningExpressions": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleContentScanningExpressions = cloudflare.getContentScanningExpressions({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_content_scanning_expressions = cloudflare.get_content_scanning_expressions(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleContentScanningExpressions = Cloudflare.Index.GetContentScanningExpressions.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetContentScanningExpressions(ctx, \u0026cloudflare.LookupContentScanningExpressionsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetContentScanningExpressionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleContentScanningExpressions = CloudflareFunctions.getContentScanningExpressions(GetContentScanningExpressionsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleContentScanningExpressions:\n    fn::invoke:\n      function: cloudflare:getContentScanningExpressions\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getContentScanningExpressions.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getContentScanningExpressions.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getContentScanningExpressionsResult:getContentScanningExpressionsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomHostname:getCustomHostname": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomHostname = cloudflare.getCustomHostname({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    customHostnameId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_hostname = cloudflare.get_custom_hostname(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    custom_hostname_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomHostname = Cloudflare.Index.GetCustomHostname.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CustomHostnameId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomHostname(ctx, \u0026cloudflare.LookupCustomHostnameArgs{\n\t\t\tZoneId:           pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCustomHostnameId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomHostnameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomHostname = CloudflareFunctions.getCustomHostname(GetCustomHostnameArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .customHostnameId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomHostname:\n    fn::invoke:\n      function: cloudflare:getCustomHostname\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        customHostnameId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomHostname.\n",
                "properties": {
                    "customHostnameId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameFilter:getCustomHostnameFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomHostname.\n",
                "properties": {
                    "createdAt": {
                        "description": "This is the time the hostname was created.\n",
                        "type": "string"
                    },
                    "customHostnameId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "customMetadata": {
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "Unique key/value metadata for this hostname. These are per-hostname (customer) settings.\n",
                        "type": "object"
                    },
                    "customOriginServer": {
                        "description": "a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record.\n",
                        "type": "string"
                    },
                    "customOriginSni": {
                        "description": "A hostname that will be sent to your custom origin server as SNI for TLS handshake. This can be a valid subdomain of the zone or custom origin server name or the string ':request*host*header:' which will cause the host header in the request to be used as SNI. Not configurable with default/fallback origin server.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameFilter:getCustomHostnameFilter"
                    },
                    "hostname": {
                        "description": "The custom hostname that will point to your hostname via CNAME.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "ownershipVerification": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameOwnershipVerification:getCustomHostnameOwnershipVerification",
                        "description": "This is a record which can be placed to activate a hostname.\n"
                    },
                    "ownershipVerificationHttp": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameOwnershipVerificationHttp:getCustomHostnameOwnershipVerificationHttp",
                        "description": "This presents the token to be served by the given http url to activate a hostname.\n"
                    },
                    "ssl": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnameSsl:getCustomHostnameSsl"
                    },
                    "status": {
                        "description": "Status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n",
                        "type": "string"
                    },
                    "verificationErrors": {
                        "description": "These are errors that were encountered while trying to activate a hostname.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "customMetadata",
                    "customOriginServer",
                    "customOriginSni",
                    "hostname",
                    "id",
                    "ownershipVerification",
                    "ownershipVerificationHttp",
                    "ssl",
                    "status",
                    "verificationErrors"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomHostnameFallbackOrigin:getCustomHostnameFallbackOrigin": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomHostnameFallbackOrigin = cloudflare.getCustomHostnameFallbackOrigin({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_hostname_fallback_origin = cloudflare.get_custom_hostname_fallback_origin(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomHostnameFallbackOrigin = Cloudflare.Index.GetCustomHostnameFallbackOrigin.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomHostnameFallbackOrigin(ctx, \u0026cloudflare.LookupCustomHostnameFallbackOriginArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomHostnameFallbackOriginArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomHostnameFallbackOrigin = CloudflareFunctions.getCustomHostnameFallbackOrigin(GetCustomHostnameFallbackOriginArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomHostnameFallbackOrigin:\n    fn::invoke:\n      function: cloudflare:getCustomHostnameFallbackOrigin\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomHostnameFallbackOrigin.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomHostnameFallbackOrigin.\n",
                "properties": {
                    "createdAt": {
                        "description": "This is the time the fallback origin was created.\n",
                        "type": "string"
                    },
                    "errors": {
                        "description": "These are errors that were encountered while trying to activate a fallback origin.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "origin": {
                        "description": "Your origin hostname that requests to your custom hostnames will be sent to.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the fallback origin's activation.\nAvailable values: \"initializing\", \"pending*deployment\", \"pending*deletion\", \"active\", \"deployment*timed*out\", \"deletion*timed*out\".\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "This is the time the fallback origin was updated.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "errors",
                    "id",
                    "origin",
                    "status",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomHostnames:getCustomHostnames": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomHostnames = cloudflare.getCustomHostnames({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"0d89c70d-ad9f-4843-b99f-6cc0252067e9\",\n    certificateAuthority: \"google\",\n    customOriginServer: \"origin2.example.com\",\n    direction: \"desc\",\n    hostname: {\n        contain: \"example.com\",\n    },\n    hostnameStatus: \"provisioned\",\n    ssl: 0,\n    sslStatus: \"active\",\n    wildcard: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_hostnames = cloudflare.get_custom_hostnames(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"0d89c70d-ad9f-4843-b99f-6cc0252067e9\",\n    certificate_authority=\"google\",\n    custom_origin_server=\"origin2.example.com\",\n    direction=\"desc\",\n    hostname={\n        \"contain\": \"example.com\",\n    },\n    hostname_status=\"provisioned\",\n    ssl=0,\n    ssl_status=\"active\",\n    wildcard=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomHostnames = Cloudflare.Index.GetCustomHostnames.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"0d89c70d-ad9f-4843-b99f-6cc0252067e9\",\n        CertificateAuthority = \"google\",\n        CustomOriginServer = \"origin2.example.com\",\n        Direction = \"desc\",\n        Hostname = new Cloudflare.Inputs.GetCustomHostnamesHostnameInputArgs\n        {\n            Contain = \"example.com\",\n        },\n        HostnameStatus = \"provisioned\",\n        Ssl = 0,\n        SslStatus = \"active\",\n        Wildcard = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomHostnames(ctx, \u0026cloudflare.LookupCustomHostnamesArgs{\n\t\t\tZoneId:               pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:                   pulumi.StringRef(\"0d89c70d-ad9f-4843-b99f-6cc0252067e9\"),\n\t\t\tCertificateAuthority: pulumi.StringRef(\"google\"),\n\t\t\tCustomOriginServer:   pulumi.StringRef(\"origin2.example.com\"),\n\t\t\tDirection:            pulumi.StringRef(\"desc\"),\n\t\t\tHostname: cloudflare.GetCustomHostnamesHostname{\n\t\t\t\tContain: pulumi.StringRef(\"example.com\"),\n\t\t\t},\n\t\t\tHostnameStatus: pulumi.StringRef(\"provisioned\"),\n\t\t\tSsl:            pulumi.Float64Ref(0),\n\t\t\tSslStatus:      pulumi.StringRef(\"active\"),\n\t\t\tWildcard:       pulumi.BoolRef(false),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomHostnamesArgs;\nimport com.pulumi.cloudflare.inputs.GetCustomHostnamesHostnameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomHostnames = CloudflareFunctions.getCustomHostnames(GetCustomHostnamesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"0d89c70d-ad9f-4843-b99f-6cc0252067e9\")\n            .certificateAuthority(\"google\")\n            .customOriginServer(\"origin2.example.com\")\n            .direction(\"desc\")\n            .hostname(GetCustomHostnamesHostnameArgs.builder()\n                .contain(\"example.com\")\n                .build())\n            .hostnameStatus(\"provisioned\")\n            .ssl(0)\n            .sslStatus(\"active\")\n            .wildcard(false)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomHostnames:\n    fn::invoke:\n      function: cloudflare:getCustomHostnames\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: 0d89c70d-ad9f-4843-b99f-6cc0252067e9\n        certificateAuthority: google\n        customOriginServer: origin2.example.com\n        direction: desc\n        hostname:\n          contain: example.com\n        hostnameStatus: provisioned\n        ssl: 0\n        sslStatus: active\n        wildcard: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomHostnames.\n",
                "properties": {
                    "certificateAuthority": {
                        "type": "string",
                        "description": "Filter by the certificate authority that issued the SSL certificate.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n"
                    },
                    "customOriginServer": {
                        "type": "string",
                        "description": "Filter by custom origin server name.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order hostnames.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "hostname": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnamesHostname:getCustomHostnamesHostname"
                    },
                    "hostnameStatus": {
                        "type": "string",
                        "description": "Filter by the hostname's activation status.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "Hostname ID to match against. This ID was generated and returned during the initial\u003cspan pulumi-lang-nodejs=\" customHostname \" pulumi-lang-dotnet=\" CustomHostname \" pulumi-lang-go=\" customHostname \" pulumi-lang-python=\" custom_hostname \" pulumi-lang-yaml=\" customHostname \" pulumi-lang-java=\" customHostname \"\u003e customHostname \u003c/span\u003ecreation. This parameter cannot be used with the 'hostname' parameter.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Field to order hostnames by.\nAvailable values: \"ssl\", \u003cspan pulumi-lang-nodejs=\"\"sslStatus\"\" pulumi-lang-dotnet=\"\"SslStatus\"\" pulumi-lang-go=\"\"sslStatus\"\" pulumi-lang-python=\"\"ssl_status\"\" pulumi-lang-yaml=\"\"sslStatus\"\" pulumi-lang-java=\"\"sslStatus\"\"\u003e\"sslStatus\"\u003c/span\u003e.\n"
                    },
                    "ssl": {
                        "type": "number",
                        "description": "Whether to filter hostnames based on if they have SSL enabled.\nAvailable values: 0, 1.\n"
                    },
                    "sslStatus": {
                        "type": "string",
                        "description": "Filter by SSL certificate status.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n"
                    },
                    "wildcard": {
                        "type": "boolean",
                        "description": "Filter by whether the custom hostname is a wildcard hostname.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomHostnames.\n",
                "properties": {
                    "certificateAuthority": {
                        "description": "Filter by the certificate authority that issued the SSL certificate.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n",
                        "type": "string"
                    },
                    "customOriginServer": {
                        "description": "Filter by custom origin server name.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Direction to order hostnames.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "hostname": {
                        "$ref": "#/types/cloudflare:index/getCustomHostnamesHostname:getCustomHostnamesHostname"
                    },
                    "hostnameStatus": {
                        "description": "Filter by the hostname's activation status.\nAvailable values: \"active\", \"pending\", \"active*redeploying\", \"moved\", \"pending*deletion\", \"deleted\", \"pending*blocked\", \"pending*migration\", \"pending*provisioned\", \"test*pending\", \"test*active\", \"test*active*apex\", \"test*blocked\", \u003cspan pulumi-lang-nodejs=\"\"testFailed\"\" pulumi-lang-dotnet=\"\"TestFailed\"\" pulumi-lang-go=\"\"testFailed\"\" pulumi-lang-python=\"\"test_failed\"\" pulumi-lang-yaml=\"\"testFailed\"\" pulumi-lang-java=\"\"testFailed\"\"\u003e\"testFailed\"\u003c/span\u003e, \"provisioned\", \"blocked\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Hostname ID to match against. This ID was generated and returned during the initial\u003cspan pulumi-lang-nodejs=\" customHostname \" pulumi-lang-dotnet=\" CustomHostname \" pulumi-lang-go=\" customHostname \" pulumi-lang-python=\" custom_hostname \" pulumi-lang-yaml=\" customHostname \" pulumi-lang-java=\" customHostname \"\u003e customHostname \u003c/span\u003ecreation. This parameter cannot be used with the 'hostname' parameter.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "Field to order hostnames by.\nAvailable values: \"ssl\", \u003cspan pulumi-lang-nodejs=\"\"sslStatus\"\" pulumi-lang-dotnet=\"\"SslStatus\"\" pulumi-lang-go=\"\"sslStatus\"\" pulumi-lang-python=\"\"ssl_status\"\" pulumi-lang-yaml=\"\"sslStatus\"\" pulumi-lang-java=\"\"sslStatus\"\"\u003e\"sslStatus\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCustomHostnamesResult:getCustomHostnamesResult"
                        },
                        "type": "array"
                    },
                    "ssl": {
                        "description": "Whether to filter hostnames based on if they have SSL enabled.\nAvailable values: 0, 1.\n",
                        "type": "number"
                    },
                    "sslStatus": {
                        "description": "Filter by SSL certificate status.\nAvailable values: \"initializing\", \"pending*validation\", \"deleted\", \"pending*issuance\", \"pending*deployment\", \"pending*deletion\", \"pending*expiration\", \"expired\", \"active\", \"initializing*timed*out\", \"validation*timed*out\", \"issuance*timed*out\", \"deployment*timed*out\", \"deletion*timed*out\", \"pending*cleanup\", \"staging*deployment\", \"staging*active\", \"deactivating\", \"inactive\", \"backup*issued\", \"holding*deployment\".\n",
                        "type": "string"
                    },
                    "wildcard": {
                        "description": "Filter by whether the custom hostname is a wildcard hostname.\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "order",
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomOriginTrustStore:getCustomOriginTrustStore": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomOriginTrustStore = cloudflare.getCustomOriginTrustStore({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    customOriginTrustStoreId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_origin_trust_store = cloudflare.get_custom_origin_trust_store(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    custom_origin_trust_store_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomOriginTrustStore = Cloudflare.Index.GetCustomOriginTrustStore.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CustomOriginTrustStoreId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomOriginTrustStore(ctx, \u0026cloudflare.LookupCustomOriginTrustStoreArgs{\n\t\t\tZoneId:                   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCustomOriginTrustStoreId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomOriginTrustStoreArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomOriginTrustStore = CloudflareFunctions.getCustomOriginTrustStore(GetCustomOriginTrustStoreArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .customOriginTrustStoreId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomOriginTrustStore:\n    fn::invoke:\n      function: cloudflare:getCustomOriginTrustStore\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        customOriginTrustStoreId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomOriginTrustStore.\n",
                "properties": {
                    "customOriginTrustStoreId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCustomOriginTrustStoreFilter:getCustomOriginTrustStoreFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomOriginTrustStore.\n",
                "properties": {
                    "certificate": {
                        "description": "The zone's SSL certificate or certificate and the intermediate(s).\n",
                        "type": "string"
                    },
                    "customOriginTrustStoreId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "When the certificate expires.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCustomOriginTrustStoreFilter:getCustomOriginTrustStoreFilter"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "issuer": {
                        "description": "The certificate authority that issued the certificate.\n",
                        "type": "string"
                    },
                    "signature": {
                        "description": "The type of hash used for the certificate.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the zone's custom SSL.\nAvailable values: \"initializing\", \"pending*deployment\", \"active\", \"pending*deletion\", \"deleted\", \"expired\".\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "When the certificate was last modified.\n",
                        "type": "string"
                    },
                    "uploadedOn": {
                        "description": "When the certificate was uploaded to Cloudflare.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certificate",
                    "expiresOn",
                    "id",
                    "issuer",
                    "signature",
                    "status",
                    "updatedAt",
                    "uploadedOn"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomOriginTrustStores:getCustomOriginTrustStores": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomOriginTrustStores = cloudflare.getCustomOriginTrustStores({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    limit: 10,\n    offset: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_origin_trust_stores = cloudflare.get_custom_origin_trust_stores(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    limit=10,\n    offset=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomOriginTrustStores = Cloudflare.Index.GetCustomOriginTrustStores.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Limit = 10,\n        Offset = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomOriginTrustStores(ctx, \u0026cloudflare.LookupCustomOriginTrustStoresArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t\tOffset: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomOriginTrustStoresArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomOriginTrustStores = CloudflareFunctions.getCustomOriginTrustStores(GetCustomOriginTrustStoresArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .limit(10)\n            .offset(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomOriginTrustStores:\n    fn::invoke:\n      function: cloudflare:getCustomOriginTrustStores\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        limit: 10\n        offset: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomOriginTrustStores.\n",
                "properties": {
                    "limit": {
                        "type": "integer",
                        "description": "Limit to the number of records returned.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "offset": {
                        "type": "integer",
                        "description": "Offset the results\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomOriginTrustStores.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "limit": {
                        "description": "Limit to the number of records returned.\n",
                        "type": "integer"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "offset": {
                        "description": "Offset the results\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCustomOriginTrustStoresResult:getCustomOriginTrustStoresResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomPageAsset:getCustomPageAsset": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomPageAsset = cloudflare.getCustomPageAsset({\n    assetName: \"my_custom_error_page\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_page_asset = cloudflare.get_custom_page_asset(asset_name=\"my_custom_error_page\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomPageAsset = Cloudflare.Index.GetCustomPageAsset.Invoke(new()\n    {\n        AssetName = \"my_custom_error_page\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomPageAsset(ctx, \u0026cloudflare.LookupCustomPageAssetArgs{\n\t\t\tAssetName: \"my_custom_error_page\",\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomPageAssetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomPageAsset = CloudflareFunctions.getCustomPageAsset(GetCustomPageAssetArgs.builder()\n            .assetName(\"my_custom_error_page\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomPageAsset:\n    fn::invoke:\n      function: cloudflare:getCustomPageAsset\n      arguments:\n        assetName: my_custom_error_page\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomPageAsset.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "assetName": {
                        "type": "string",
                        "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "assetName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCustomPageAsset.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "assetName": {
                        "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "A short description of the custom asset.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n",
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "name": {
                        "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).\n",
                        "type": "string"
                    },
                    "sizeBytes": {
                        "description": "The size of the asset content in bytes.\n",
                        "type": "integer"
                    },
                    "url": {
                        "description": "The URL where the asset content is fetched from.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "assetName",
                    "description",
                    "id",
                    "lastUpdated",
                    "name",
                    "sizeBytes",
                    "url"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomPageAssets:getCustomPageAssets": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomPageAssets = cloudflare.getCustomPageAssets({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_page_assets = cloudflare.get_custom_page_assets(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomPageAssets = Cloudflare.Index.GetCustomPageAssets.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomPageAssets(ctx, \u0026cloudflare.LookupCustomPageAssetsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomPageAssetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomPageAssets = CloudflareFunctions.getCustomPageAssets(GetCustomPageAssetsArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomPageAssets:\n    fn::invoke:\n      function: cloudflare:getCustomPageAssets\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomPageAssets.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomPageAssets.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCustomPageAssetsResult:getCustomPageAssetsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomPages:getCustomPages": {
            "description": "Accepted Permissions\n\n- `Account Custom Pages Read`\n- `Account Custom Pages Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomPages = cloudflare.getCustomPages({\n    identifier: \"ratelimit_block\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_pages = cloudflare.get_custom_pages(identifier=\"ratelimit_block\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomPages = Cloudflare.Index.GetCustomPages.Invoke(new()\n    {\n        Identifier = \"ratelimit_block\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomPages(ctx, \u0026cloudflare.LookupCustomPagesArgs{\n\t\t\tIdentifier: \"ratelimit_block\",\n\t\t\tAccountId:  pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:     pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomPagesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomPages = CloudflareFunctions.getCustomPages(GetCustomPagesArgs.builder()\n            .identifier(\"ratelimit_block\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomPages:\n    fn::invoke:\n      function: cloudflare:getCustomPages\n      arguments:\n        identifier: ratelimit_block\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomPages.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "Error Page Types\nAvailable values: \"1000*errors\", \"500*errors\", \"basic*challenge\", \"country*challenge\", \"ip*block\", \"managed*challenge\", \"ratelimit*block\", \"under*attack\", \"waf*block\", \"waf*challenge\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getCustomPages.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "id": {
                        "description": "Error Page Types\nAvailable values: \"1000*errors\", \"500*errors\", \"basic*challenge\", \"country*challenge\", \"ip*block\", \"managed*challenge\", \"ratelimit*block\", \"under*attack\", \"waf*block\", \"waf*challenge\".\n",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "Error Page Types\nAvailable values: \"1000*errors\", \"500*errors\", \"basic*challenge\", \"country*challenge\", \"ip*block\", \"managed*challenge\", \"ratelimit*block\", \"under*attack\", \"waf*block\", \"waf*challenge\".\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "previewTarget": {
                        "type": "string"
                    },
                    "requiredTokens": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "state": {
                        "description": "The custom page state.\nAvailable values: \"default\", \"customized\".\n",
                        "type": "string"
                    },
                    "url": {
                        "description": "The URL associated with the custom page.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "description",
                    "id",
                    "identifier",
                    "modifiedOn",
                    "previewTarget",
                    "requiredTokens",
                    "state",
                    "url"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomPagesList:getCustomPagesList": {
            "description": "Accepted Permissions\n\n- `Account Custom Pages Read`\n- `Account Custom Pages Write`\n- `Account Settings Read`\n- `Account Settings Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomPagesList = cloudflare.getCustomPagesList({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_pages_list = cloudflare.get_custom_pages_list(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomPagesList = Cloudflare.Index.GetCustomPagesList.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomPagesList(ctx, \u0026cloudflare.LookupCustomPagesListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomPagesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomPagesList = CloudflareFunctions.getCustomPagesList(GetCustomPagesListArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomPagesList:\n    fn::invoke:\n      function: cloudflare:getCustomPagesList\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomPagesList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomPagesList.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCustomPagesListResult:getCustomPagesListResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomSsl:getCustomSsl": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomSsl = cloudflare.getCustomSsl({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    customCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_ssl = cloudflare.get_custom_ssl(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    custom_certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomSsl = Cloudflare.Index.GetCustomSsl.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CustomCertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomSsl(ctx, \u0026cloudflare.LookupCustomSslArgs{\n\t\t\tZoneId:              pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCustomCertificateId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomSslArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomSsl = CloudflareFunctions.getCustomSsl(GetCustomSslArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .customCertificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomSsl:\n    fn::invoke:\n      function: cloudflare:getCustomSsl\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        customCertificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomSsl.\n",
                "properties": {
                    "customCertificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCustomSslFilter:getCustomSslFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomSsl.\n",
                "properties": {
                    "bundleMethod": {
                        "description": "A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it.\nAvailable values: \"ubiquitous\", \"optimal\", \"force\".\n",
                        "type": "string"
                    },
                    "customCertificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "customCsrId": {
                        "description": "The identifier for the Custom CSR that was used.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "When the certificate from the authority expires.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getCustomSslFilter:getCustomSslFilter"
                    },
                    "geoRestrictions": {
                        "$ref": "#/types/cloudflare:index/getCustomSslGeoRestrictions:getCustomSslGeoRestrictions",
                        "description": "Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance.\n"
                    },
                    "hosts": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "issuer": {
                        "description": "The certificate authority that issued the certificate.\n",
                        "type": "string"
                    },
                    "keylessServer": {
                        "$ref": "#/types/cloudflare:index/getCustomSslKeylessServer:getCustomSslKeylessServer"
                    },
                    "modifiedOn": {
                        "description": "When the certificate was last modified.\n",
                        "type": "string"
                    },
                    "policyRestrictions": {
                        "description": "The policy restrictions returned by the API. This field is returned in responses\nwhen a policy has been set. The API accepts the \"policy\" field in requests but\nreturns this field as \u003cspan pulumi-lang-nodejs=\"\"policyRestrictions\"\" pulumi-lang-dotnet=\"\"PolicyRestrictions\"\" pulumi-lang-go=\"\"policyRestrictions\"\" pulumi-lang-python=\"\"policy_restrictions\"\" pulumi-lang-yaml=\"\"policyRestrictions\"\" pulumi-lang-java=\"\"policyRestrictions\"\"\u003e\"policyRestrictions\"\u003c/span\u003e in responses.\n",
                        "type": "string"
                    },
                    "priority": {
                        "type": "number"
                    },
                    "signature": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "uploadedOn": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "bundleMethod",
                    "customCsrId",
                    "expiresOn",
                    "geoRestrictions",
                    "hosts",
                    "id",
                    "issuer",
                    "keylessServer",
                    "modifiedOn",
                    "policyRestrictions",
                    "priority",
                    "signature",
                    "status",
                    "uploadedOn"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getCustomSsls:getCustomSsls": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleCustomSsls = cloudflare.getCustomSsls({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    status: \"active\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_custom_ssls = cloudflare.get_custom_ssls(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    status=\"active\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleCustomSsls = Cloudflare.Index.GetCustomSsls.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Status = \"active\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetCustomSsls(ctx, \u0026cloudflare.LookupCustomSslsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tStatus: pulumi.StringRef(\"active\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetCustomSslsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleCustomSsls = CloudflareFunctions.getCustomSsls(GetCustomSslsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .status(\"active\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleCustomSsls:\n    fn::invoke:\n      function: cloudflare:getCustomSsls\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        status: active\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getCustomSsls.\n",
                "properties": {
                    "match": {
                        "type": "string",
                        "description": "Whether to match all search requirements or at least one (any).\nAvailable values: \"any\", \"all\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the zone's custom SSL.\nAvailable values: \"active\", \"expired\", \"deleted\", \"pending\", \"initializing\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getCustomSsls.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "match": {
                        "description": "Whether to match all search requirements or at least one (any).\nAvailable values: \"any\", \"all\".\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getCustomSslsResult:getCustomSslsResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "Status of the zone's custom SSL.\nAvailable values: \"active\", \"expired\", \"deleted\", \"pending\", \"initializing\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "match",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getD1Database:getD1Database": {
            "description": "Accepted Permissions\n\n- `D1 Read`\n- `D1 Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleD1Database = cloudflare.getD1Database({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    databaseId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_d1_database = cloudflare.get_d1_database(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    database_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleD1Database = Cloudflare.Index.GetD1Database.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DatabaseId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetD1Database(ctx, \u0026cloudflare.LookupD1DatabaseArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDatabaseId: pulumi.StringRef(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetD1DatabaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleD1Database = CloudflareFunctions.getD1Database(GetD1DatabaseArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .databaseId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleD1Database:\n    fn::invoke:\n      function: cloudflare:getD1Database\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        databaseId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getD1Database.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "databaseId": {
                        "type": "string",
                        "description": "D1 database identifier (UUID).\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getD1DatabaseFilter:getD1DatabaseFilter"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getD1Database.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Specifies the timestamp the resource was created as an ISO8601 string.\n",
                        "type": "string"
                    },
                    "databaseId": {
                        "description": "D1 database identifier (UUID).\n",
                        "type": "string"
                    },
                    "fileSize": {
                        "description": "The D1 database's size, in bytes.\n",
                        "type": "number"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getD1DatabaseFilter:getD1DatabaseFilter"
                    },
                    "id": {
                        "description": "D1 database identifier (UUID).\n",
                        "type": "string"
                    },
                    "jurisdiction": {
                        "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.\nAvailable values: \"eu\", \"fedramp\".\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "D1 database name.\n",
                        "type": "string"
                    },
                    "numTables": {
                        "type": "number"
                    },
                    "readReplication": {
                        "$ref": "#/types/cloudflare:index/getD1DatabaseReadReplication:getD1DatabaseReadReplication",
                        "description": "Configuration for D1 read replication.\n"
                    },
                    "uuid": {
                        "description": "D1 database identifier (UUID).\n",
                        "type": "string"
                    },
                    "version": {
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "fileSize",
                    "id",
                    "jurisdiction",
                    "name",
                    "numTables",
                    "readReplication",
                    "uuid",
                    "version"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getD1Databases:getD1Databases": {
            "description": "Accepted Permissions\n\n- `D1 Read`\n- `D1 Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleD1Databases = cloudflare.getD1Databases({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_d1_databases = cloudflare.get_d1_databases(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleD1Databases = Cloudflare.Index.GetD1Databases.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"name\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetD1Databases(ctx, \u0026cloudflare.LookupD1DatabasesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.StringRef(\"name\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetD1DatabasesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleD1Databases = CloudflareFunctions.getD1Databases(GetD1DatabasesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"name\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleD1Databases:\n    fn::invoke:\n      function: cloudflare:getD1Databases\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        name: name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getD1Databases.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "a database name to search for.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getD1Databases.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "a database name to search for.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getD1DatabasesResult:getD1DatabasesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDcvDelegation:getDcvDelegation": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDcvDelegation = cloudflare.getDcvDelegation({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dcv_delegation = cloudflare.get_dcv_delegation(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDcvDelegation = Cloudflare.Index.GetDcvDelegation.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDcvDelegation(ctx, \u0026cloudflare.GetDcvDelegationArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDcvDelegationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDcvDelegation = CloudflareFunctions.getDcvDelegation(GetDcvDelegationArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDcvDelegation:\n    fn::invoke:\n      function: cloudflare:getDcvDelegation\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDcvDelegation.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDcvDelegation.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "uuid": {
                        "description": "The DCV Delegation unique identifier.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "uuid",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsFirewall:getDnsFirewall": {
            "description": "Accepted Permissions\n\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsFirewall = cloudflare.getDnsFirewall({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    dnsFirewallId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_firewall = cloudflare.get_dns_firewall(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    dns_firewall_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsFirewall = Cloudflare.Index.GetDnsFirewall.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DnsFirewallId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsFirewall(ctx, \u0026cloudflare.LookupDnsFirewallArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDnsFirewallId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsFirewallArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsFirewall = CloudflareFunctions.getDnsFirewall(GetDnsFirewallArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .dnsFirewallId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsFirewall:\n    fn::invoke:\n      function: cloudflare:getDnsFirewall\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        dnsFirewallId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsFirewall.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "dnsFirewallId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "dnsFirewallId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getDnsFirewall.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "attackMitigation": {
                        "$ref": "#/types/cloudflare:index/getDnsFirewallAttackMitigation:getDnsFirewallAttackMitigation",
                        "description": "Attack mitigation settings\n"
                    },
                    "deprecateAnyRequests": {
                        "description": "Whether to refuse to answer queries for the ANY type\n",
                        "type": "boolean"
                    },
                    "dnsFirewallId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "dnsFirewallIps": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "ecsFallback": {
                        "description": "Whether to forward client IP (resolver) subnet if no EDNS Client Subnet is sent\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "maximumCacheTtl": {
                        "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets an upper bound on this duration. For caching purposes, higher TTLs\nwill be decreased to the maximum value defined by this setting.\n",
                        "type": "number"
                    },
                    "minimumCacheTtl": {
                        "type": "number"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "negativeCacheTtl": {
                        "type": "number"
                    },
                    "ratelimit": {
                        "type": "number"
                    },
                    "retries": {
                        "type": "number"
                    },
                    "upstreamIps": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "attackMitigation",
                    "deprecateAnyRequests",
                    "dnsFirewallId",
                    "dnsFirewallIps",
                    "ecsFallback",
                    "id",
                    "maximumCacheTtl",
                    "minimumCacheTtl",
                    "modifiedOn",
                    "name",
                    "negativeCacheTtl",
                    "ratelimit",
                    "retries",
                    "upstreamIps"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsFirewalls:getDnsFirewalls": {
            "description": "Accepted Permissions\n\n- `DNS Firewall Read`\n- `DNS Firewall Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsFirewalls = cloudflare.getDnsFirewalls({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_firewalls = cloudflare.get_dns_firewalls(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsFirewalls = Cloudflare.Index.GetDnsFirewalls.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsFirewalls(ctx, \u0026cloudflare.LookupDnsFirewallsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsFirewallsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsFirewalls = CloudflareFunctions.getDnsFirewalls(GetDnsFirewallsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsFirewalls:\n    fn::invoke:\n      function: cloudflare:getDnsFirewalls\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsFirewalls.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsFirewalls.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getDnsFirewallsResult:getDnsFirewallsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsRecord:getDnsRecord": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsRecord = cloudflare.getDnsRecord({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    dnsRecordId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_record = cloudflare.get_dns_record(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    dns_record_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsRecord = Cloudflare.Index.GetDnsRecord.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DnsRecordId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsRecord(ctx, \u0026cloudflare.LookupDnsRecordArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDnsRecordId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsRecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsRecord = CloudflareFunctions.getDnsRecord(GetDnsRecordArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .dnsRecordId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsRecord:\n    fn::invoke:\n      function: cloudflare:getDnsRecord\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        dnsRecordId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsRecord.\n",
                "properties": {
                    "dnsRecordId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordFilter:getDnsRecordFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsRecord.\n",
                "properties": {
                    "comment": {
                        "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.\n",
                        "type": "string"
                    },
                    "commentModifiedOn": {
                        "description": "When the record comment was last modified. Omitted if there is no comment.\n",
                        "type": "string"
                    },
                    "content": {
                        "description": "A valid IPv4 address.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "When the record was created.\n",
                        "type": "string"
                    },
                    "data": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordData:getDnsRecordData",
                        "description": "Components of a CAA record.\n"
                    },
                    "dnsRecordId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordFilter:getDnsRecordFilter"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "meta": {
                        "description": "Extra Cloudflare-specific information about the record.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "When the record was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Complete DNS record name, including the zone name, in Punycode.\n",
                        "type": "string"
                    },
                    "priority": {
                        "description": "Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map.\n",
                        "type": "number"
                    },
                    "privateRouting": {
                        "description": "Enables private network routing to the origin.\n",
                        "type": "boolean"
                    },
                    "proxiable": {
                        "description": "Whether the record can be proxied by Cloudflare or not.\n",
                        "type": "boolean"
                    },
                    "proxied": {
                        "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n",
                        "type": "boolean"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordSettings:getDnsRecordSettings",
                        "description": "Settings for the DNS record.\n"
                    },
                    "tags": {
                        "description": "Custom tags for the DNS record. This field has no effect on DNS responses.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "tagsModifiedOn": {
                        "description": "When the record tags were last modified. Omitted if there are no tags.\n",
                        "type": "string"
                    },
                    "ttl": {
                        "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.\n",
                        "type": "number"
                    },
                    "type": {
                        "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CNAME\", \"MX\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"TXT\", \"CAA\", \"CERT\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"NAPTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"URI\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comment",
                    "commentModifiedOn",
                    "content",
                    "createdOn",
                    "data",
                    "id",
                    "meta",
                    "modifiedOn",
                    "name",
                    "priority",
                    "privateRouting",
                    "proxiable",
                    "proxied",
                    "settings",
                    "tags",
                    "tagsModifiedOn",
                    "ttl",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsRecords:getDnsRecords": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsRecords = cloudflare.getDnsRecords({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    comment: {\n        absent: \"absent\",\n        contains: \"ello, worl\",\n        endswith: \"o, world\",\n        exact: \"Hello, world\",\n        present: \"present\",\n        startswith: \"Hello, w\",\n    },\n    content: {\n        contains: \"7.0.0.\",\n        endswith: \".0.1\",\n        exact: \"127.0.0.1\",\n        startswith: \"127.0.\",\n    },\n    name: {\n        contains: \"w.example.\",\n        endswith: \".example.com\",\n        exact: \"www.example.com\",\n        startswith: \"www.example\",\n    },\n    search: \"www.cloudflare.com\",\n    tag: {\n        absent: \"important\",\n        contains: \"greeting:ello, worl\",\n        endswith: \"greeting:o, world\",\n        exact: \"greeting:Hello, world\",\n        present: \"important\",\n        startswith: \"greeting:Hello, w\",\n    },\n    type: \"A\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_records = cloudflare.get_dns_records(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    comment={\n        \"absent\": \"absent\",\n        \"contains\": \"ello, worl\",\n        \"endswith\": \"o, world\",\n        \"exact\": \"Hello, world\",\n        \"present\": \"present\",\n        \"startswith\": \"Hello, w\",\n    },\n    content={\n        \"contains\": \"7.0.0.\",\n        \"endswith\": \".0.1\",\n        \"exact\": \"127.0.0.1\",\n        \"startswith\": \"127.0.\",\n    },\n    name={\n        \"contains\": \"w.example.\",\n        \"endswith\": \".example.com\",\n        \"exact\": \"www.example.com\",\n        \"startswith\": \"www.example\",\n    },\n    search=\"www.cloudflare.com\",\n    tag={\n        \"absent\": \"important\",\n        \"contains\": \"greeting:ello, worl\",\n        \"endswith\": \"greeting:o, world\",\n        \"exact\": \"greeting:Hello, world\",\n        \"present\": \"important\",\n        \"startswith\": \"greeting:Hello, w\",\n    },\n    type=\"A\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsRecords = Cloudflare.Index.GetDnsRecords.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Comment = new Cloudflare.Inputs.GetDnsRecordsCommentInputArgs\n        {\n            Absent = \"absent\",\n            Contains = \"ello, worl\",\n            Endswith = \"o, world\",\n            Exact = \"Hello, world\",\n            Present = \"present\",\n            Startswith = \"Hello, w\",\n        },\n        Content = new Cloudflare.Inputs.GetDnsRecordsContentInputArgs\n        {\n            Contains = \"7.0.0.\",\n            Endswith = \".0.1\",\n            Exact = \"127.0.0.1\",\n            Startswith = \"127.0.\",\n        },\n        Name = new Cloudflare.Inputs.GetDnsRecordsNameInputArgs\n        {\n            Contains = \"w.example.\",\n            Endswith = \".example.com\",\n            Exact = \"www.example.com\",\n            Startswith = \"www.example\",\n        },\n        Search = \"www.cloudflare.com\",\n        Tag = new Cloudflare.Inputs.GetDnsRecordsTagInputArgs\n        {\n            Absent = \"important\",\n            Contains = \"greeting:ello, worl\",\n            Endswith = \"greeting:o, world\",\n            Exact = \"greeting:Hello, world\",\n            Present = \"important\",\n            Startswith = \"greeting:Hello, w\",\n        },\n        Type = \"A\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsRecords(ctx, \u0026cloudflare.LookupDnsRecordsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tComment: cloudflare.GetDnsRecordsComment{\n\t\t\t\tAbsent:     pulumi.StringRef(\"absent\"),\n\t\t\t\tContains:   pulumi.StringRef(\"ello, worl\"),\n\t\t\t\tEndswith:   pulumi.StringRef(\"o, world\"),\n\t\t\t\tExact:      pulumi.StringRef(\"Hello, world\"),\n\t\t\t\tPresent:    pulumi.StringRef(\"present\"),\n\t\t\t\tStartswith: pulumi.StringRef(\"Hello, w\"),\n\t\t\t},\n\t\t\tContent: cloudflare.GetDnsRecordsContent{\n\t\t\t\tContains:   pulumi.StringRef(\"7.0.0.\"),\n\t\t\t\tEndswith:   pulumi.StringRef(\".0.1\"),\n\t\t\t\tExact:      pulumi.StringRef(\"127.0.0.1\"),\n\t\t\t\tStartswith: pulumi.StringRef(\"127.0.\"),\n\t\t\t},\n\t\t\tName: cloudflare.GetDnsRecordsName{\n\t\t\t\tContains:   pulumi.StringRef(\"w.example.\"),\n\t\t\t\tEndswith:   pulumi.StringRef(\".example.com\"),\n\t\t\t\tExact:      pulumi.StringRef(\"www.example.com\"),\n\t\t\t\tStartswith: pulumi.StringRef(\"www.example\"),\n\t\t\t},\n\t\t\tSearch: pulumi.StringRef(\"www.cloudflare.com\"),\n\t\t\tTag: cloudflare.GetDnsRecordsTag{\n\t\t\t\tAbsent:     pulumi.StringRef(\"important\"),\n\t\t\t\tContains:   pulumi.StringRef(\"greeting:ello, worl\"),\n\t\t\t\tEndswith:   pulumi.StringRef(\"greeting:o, world\"),\n\t\t\t\tExact:      pulumi.StringRef(\"greeting:Hello, world\"),\n\t\t\t\tPresent:    pulumi.StringRef(\"important\"),\n\t\t\t\tStartswith: pulumi.StringRef(\"greeting:Hello, w\"),\n\t\t\t},\n\t\t\tType: pulumi.StringRef(\"A\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsRecordsArgs;\nimport com.pulumi.cloudflare.inputs.GetDnsRecordsCommentArgs;\nimport com.pulumi.cloudflare.inputs.GetDnsRecordsContentArgs;\nimport com.pulumi.cloudflare.inputs.GetDnsRecordsNameArgs;\nimport com.pulumi.cloudflare.inputs.GetDnsRecordsTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsRecords = CloudflareFunctions.getDnsRecords(GetDnsRecordsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .comment(GetDnsRecordsCommentArgs.builder()\n                .absent(\"absent\")\n                .contains(\"ello, worl\")\n                .endswith(\"o, world\")\n                .exact(\"Hello, world\")\n                .present(\"present\")\n                .startswith(\"Hello, w\")\n                .build())\n            .content(GetDnsRecordsContentArgs.builder()\n                .contains(\"7.0.0.\")\n                .endswith(\".0.1\")\n                .exact(\"127.0.0.1\")\n                .startswith(\"127.0.\")\n                .build())\n            .name(GetDnsRecordsNameArgs.builder()\n                .contains(\"w.example.\")\n                .endswith(\".example.com\")\n                .exact(\"www.example.com\")\n                .startswith(\"www.example\")\n                .build())\n            .search(\"www.cloudflare.com\")\n            .tag(GetDnsRecordsTagArgs.builder()\n                .absent(\"important\")\n                .contains(\"greeting:ello, worl\")\n                .endswith(\"greeting:o, world\")\n                .exact(\"greeting:Hello, world\")\n                .present(\"important\")\n                .startswith(\"greeting:Hello, w\")\n                .build())\n            .type(\"A\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsRecords:\n    fn::invoke:\n      function: cloudflare:getDnsRecords\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        comment:\n          absent: absent\n          contains: ello, worl\n          endswith: o, world\n          exact: Hello, world\n          present: present\n          startswith: Hello, w\n        content:\n          contains: 7.0.0.\n          endswith: .0.1\n          exact: 127.0.0.1\n          startswith: 127.0.\n        name:\n          contains: w.example.\n          endswith: .example.com\n          exact: www.example.com\n          startswith: www.example\n        search: www.cloudflare.com\n        tag:\n          absent: important\n          contains: greeting:ello, worl\n          endswith: greeting:o, world\n          exact: greeting:Hello, world\n          present: important\n          startswith: greeting:Hello, w\n        type: A\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsRecords.\n",
                "properties": {
                    "comment": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsComment:getDnsRecordsComment"
                    },
                    "content": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsContent:getDnsRecordsContent"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order DNS records in.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "match": {
                        "type": "string",
                        "description": "Whether to match all search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead. Note that the interaction between tag filters is controlled by the `tag-match` parameter instead.\nAvailable values: \"any\", \"all\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsName:getDnsRecordsName"
                    },
                    "order": {
                        "type": "string",
                        "description": "Field to order DNS records by.\nAvailable values: \"type\", \"name\", \"content\", \"ttl\", \"proxied\".\n"
                    },
                    "proxied": {
                        "type": "boolean",
                        "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Allows searching in multiple properties of a DNS record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future. This parameter works independently of the \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e setting. For automated searches, please use the other available parameters.\n"
                    },
                    "tag": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsTag:getDnsRecordsTag"
                    },
                    "tagMatch": {
                        "type": "string",
                        "description": "Whether to match all tag search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between tag filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead. Note that the regular \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e parameter is still used to combine the resulting condition with other filters that aren't related to tags.\nAvailable values: \"any\", \"all\".\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CAA\", \"CERT\", \"CNAME\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"MX\", \"NAPTR\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"TXT\", \"URI\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsRecords.\n",
                "properties": {
                    "comment": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsComment:getDnsRecordsComment"
                    },
                    "content": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsContent:getDnsRecordsContent"
                    },
                    "direction": {
                        "description": "Direction to order DNS records in.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "match": {
                        "description": "Whether to match all search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead. Note that the interaction between tag filters is controlled by the `tag-match` parameter instead.\nAvailable values: \"any\", \"all\".\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsName:getDnsRecordsName"
                    },
                    "order": {
                        "description": "Field to order DNS records by.\nAvailable values: \"type\", \"name\", \"content\", \"ttl\", \"proxied\".\n",
                        "type": "string"
                    },
                    "proxied": {
                        "description": "Whether the record is receiving the performance and security benefits of Cloudflare.\n",
                        "type": "boolean"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getDnsRecordsResult:getDnsRecordsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Allows searching in multiple properties of a DNS record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future. This parameter works independently of the \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e setting. For automated searches, please use the other available parameters.\n",
                        "type": "string"
                    },
                    "tag": {
                        "$ref": "#/types/cloudflare:index/getDnsRecordsTag:getDnsRecordsTag"
                    },
                    "tagMatch": {
                        "description": "Whether to match all tag search requirements or at least one (any). If set to \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, acts like a logical AND between tag filters. If set to \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e, acts like a logical OR instead. Note that the regular \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e parameter is still used to combine the resulting condition with other filters that aren't related to tags.\nAvailable values: \"any\", \"all\".\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Record type.\nAvailable values: \"A\", \"AAAA\", \"CAA\", \"CERT\", \"CNAME\", \"DNSKEY\", \"DS\", \"HTTPS\", \"LOC\", \"MX\", \"NAPTR\", \"NS\", \"OPENPGPKEY\", \"PTR\", \"SMIMEA\", \"SRV\", \"SSHFP\", \"SVCB\", \"TLSA\", \"TXT\", \"URI\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "direction",
                    "match",
                    "order",
                    "proxied",
                    "results",
                    "tagMatch",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersAcl:getDnsZoneTransfersAcl": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersAcl = cloudflare.getDnsZoneTransfersAcl({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    aclId: \"23ff594956f20c2a721606e94745a8aa\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_acl = cloudflare.get_dns_zone_transfers_acl(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    acl_id=\"23ff594956f20c2a721606e94745a8aa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersAcl = Cloudflare.Index.GetDnsZoneTransfersAcl.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        AclId = \"23ff594956f20c2a721606e94745a8aa\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersAcl(ctx, \u0026cloudflare.LookupDnsZoneTransfersAclArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tAclId:     \"23ff594956f20c2a721606e94745a8aa\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersAcl = CloudflareFunctions.getDnsZoneTransfersAcl(GetDnsZoneTransfersAclArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .aclId(\"23ff594956f20c2a721606e94745a8aa\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersAcl:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersAcl\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        aclId: 23ff594956f20c2a721606e94745a8aa\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersAcl.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aclId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "aclId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersAcl.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aclId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "ipRange": {
                        "description": "Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the acl.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "aclId",
                    "id",
                    "ipRange",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersAcls:getDnsZoneTransfersAcls": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersAcls = cloudflare.getDnsZoneTransfersAcls({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_acls = cloudflare.get_dns_zone_transfers_acls(account_id=\"01a7362d577a6c3019a474fd6f485823\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersAcls = Cloudflare.Index.GetDnsZoneTransfersAcls.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersAcls(ctx, \u0026cloudflare.LookupDnsZoneTransfersAclsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersAclsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersAcls = CloudflareFunctions.getDnsZoneTransfersAcls(GetDnsZoneTransfersAclsArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersAcls:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersAcls\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersAcls.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersAcls.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getDnsZoneTransfersAclsResult:getDnsZoneTransfersAclsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersIncoming:getDnsZoneTransfersIncoming": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersIncoming = cloudflare.getDnsZoneTransfersIncoming({\n    zoneId: \"269d8f4853475ca241c4e730be286b20\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_incoming = cloudflare.get_dns_zone_transfers_incoming(zone_id=\"269d8f4853475ca241c4e730be286b20\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersIncoming = Cloudflare.Index.GetDnsZoneTransfersIncoming.Invoke(new()\n    {\n        ZoneId = \"269d8f4853475ca241c4e730be286b20\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersIncoming(ctx, \u0026cloudflare.LookupDnsZoneTransfersIncomingArgs{\n\t\t\tZoneId: pulumi.StringRef(\"269d8f4853475ca241c4e730be286b20\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersIncomingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersIncoming = CloudflareFunctions.getDnsZoneTransfersIncoming(GetDnsZoneTransfersIncomingArgs.builder()\n            .zoneId(\"269d8f4853475ca241c4e730be286b20\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersIncoming:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersIncoming\n      arguments:\n        zoneId: 269d8f4853475ca241c4e730be286b20\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersIncoming.\n",
                "properties": {
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersIncoming.\n",
                "properties": {
                    "autoRefreshSeconds": {
                        "description": "How often should a secondary zone auto refresh regardless of DNS NOTIFY.\nNot applicable for primary zones.\n",
                        "type": "number"
                    },
                    "checkedTime": {
                        "description": "The time for a specific event.\n",
                        "type": "string"
                    },
                    "createdTime": {
                        "description": "The time for a specific event.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "modifiedTime": {
                        "description": "The time for a specific event.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Zone name.\n",
                        "type": "string"
                    },
                    "peers": {
                        "description": "A list of peer tags.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "soaSerial": {
                        "description": "The serial number of the SOA for the given zone.\n",
                        "type": "number"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "autoRefreshSeconds",
                    "checkedTime",
                    "createdTime",
                    "id",
                    "modifiedTime",
                    "name",
                    "peers",
                    "soaSerial"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersOutgoing:getDnsZoneTransfersOutgoing": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersOutgoing = cloudflare.getDnsZoneTransfersOutgoing({\n    zoneId: \"269d8f4853475ca241c4e730be286b20\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_outgoing = cloudflare.get_dns_zone_transfers_outgoing(zone_id=\"269d8f4853475ca241c4e730be286b20\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersOutgoing = Cloudflare.Index.GetDnsZoneTransfersOutgoing.Invoke(new()\n    {\n        ZoneId = \"269d8f4853475ca241c4e730be286b20\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersOutgoing(ctx, \u0026cloudflare.LookupDnsZoneTransfersOutgoingArgs{\n\t\t\tZoneId: pulumi.StringRef(\"269d8f4853475ca241c4e730be286b20\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersOutgoingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersOutgoing = CloudflareFunctions.getDnsZoneTransfersOutgoing(GetDnsZoneTransfersOutgoingArgs.builder()\n            .zoneId(\"269d8f4853475ca241c4e730be286b20\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersOutgoing:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersOutgoing\n      arguments:\n        zoneId: 269d8f4853475ca241c4e730be286b20\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersOutgoing.\n",
                "properties": {
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersOutgoing.\n",
                "properties": {
                    "checkedTime": {
                        "description": "The time for a specific event.\n",
                        "type": "string"
                    },
                    "createdTime": {
                        "description": "The time for a specific event.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "lastTransferredTime": {
                        "description": "The time for a specific event.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Zone name.\n",
                        "type": "string"
                    },
                    "peers": {
                        "description": "A list of peer tags.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "soaSerial": {
                        "description": "The serial number of the SOA for the given zone.\n",
                        "type": "number"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "checkedTime",
                    "createdTime",
                    "id",
                    "lastTransferredTime",
                    "name",
                    "peers",
                    "soaSerial"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersPeer:getDnsZoneTransfersPeer": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersPeer = cloudflare.getDnsZoneTransfersPeer({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    peerId: \"23ff594956f20c2a721606e94745a8aa\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_peer = cloudflare.get_dns_zone_transfers_peer(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    peer_id=\"23ff594956f20c2a721606e94745a8aa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersPeer = Cloudflare.Index.GetDnsZoneTransfersPeer.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        PeerId = \"23ff594956f20c2a721606e94745a8aa\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersPeer(ctx, \u0026cloudflare.LookupDnsZoneTransfersPeerArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tPeerId:    \"23ff594956f20c2a721606e94745a8aa\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersPeerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersPeer = CloudflareFunctions.getDnsZoneTransfersPeer(GetDnsZoneTransfersPeerArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .peerId(\"23ff594956f20c2a721606e94745a8aa\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersPeer:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersPeer\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        peerId: 23ff594956f20c2a721606e94745a8aa\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersPeer.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "peerId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "peerId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersPeer.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "ip": {
                        "description": "IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to.\n",
                        "type": "string"
                    },
                    "ixfrEnable": {
                        "description": "Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.\n",
                        "type": "boolean"
                    },
                    "name": {
                        "description": "The name of the peer.\n",
                        "type": "string"
                    },
                    "peerId": {
                        "type": "string"
                    },
                    "port": {
                        "description": "DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.\n",
                        "type": "number"
                    },
                    "tsigId": {
                        "description": "TSIG authentication will be used for zone transfer if configured.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "ip",
                    "ixfrEnable",
                    "name",
                    "peerId",
                    "port",
                    "tsigId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersPeers:getDnsZoneTransfersPeers": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersPeers = cloudflare.getDnsZoneTransfersPeers({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_peers = cloudflare.get_dns_zone_transfers_peers(account_id=\"01a7362d577a6c3019a474fd6f485823\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersPeers = Cloudflare.Index.GetDnsZoneTransfersPeers.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersPeers(ctx, \u0026cloudflare.LookupDnsZoneTransfersPeersArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersPeersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersPeers = CloudflareFunctions.getDnsZoneTransfersPeers(GetDnsZoneTransfersPeersArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersPeers:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersPeers\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersPeers.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersPeers.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getDnsZoneTransfersPeersResult:getDnsZoneTransfersPeersResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersTsig:getDnsZoneTransfersTsig": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersTsig = cloudflare.getDnsZoneTransfersTsig({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    tsigId: \"69cd1e104af3e6ed3cb344f263fd0d5a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_tsig = cloudflare.get_dns_zone_transfers_tsig(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    tsig_id=\"69cd1e104af3e6ed3cb344f263fd0d5a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersTsig = Cloudflare.Index.GetDnsZoneTransfersTsig.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        TsigId = \"69cd1e104af3e6ed3cb344f263fd0d5a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersTsig(ctx, \u0026cloudflare.LookupDnsZoneTransfersTsigArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tTsigId:    \"69cd1e104af3e6ed3cb344f263fd0d5a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersTsigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersTsig = CloudflareFunctions.getDnsZoneTransfersTsig(GetDnsZoneTransfersTsigArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .tsigId(\"69cd1e104af3e6ed3cb344f263fd0d5a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersTsig:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersTsig\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        tsigId: 69cd1e104af3e6ed3cb344f263fd0d5a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersTsig.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "tsigId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "tsigId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersTsig.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "algo": {
                        "description": "TSIG algorithm.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "TSIG key name.\n",
                        "type": "string"
                    },
                    "secret": {
                        "description": "TSIG secret.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "tsigId": {
                        "type": "string"
                    }
                },
                "required": [
                    "algo",
                    "id",
                    "name",
                    "secret",
                    "tsigId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getDnsZoneTransfersTsigs:getDnsZoneTransfersTsigs": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleDnsZoneTransfersTsigs = cloudflare.getDnsZoneTransfersTsigs({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_dns_zone_transfers_tsigs = cloudflare.get_dns_zone_transfers_tsigs(account_id=\"01a7362d577a6c3019a474fd6f485823\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleDnsZoneTransfersTsigs = Cloudflare.Index.GetDnsZoneTransfersTsigs.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetDnsZoneTransfersTsigs(ctx, \u0026cloudflare.LookupDnsZoneTransfersTsigsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetDnsZoneTransfersTsigsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleDnsZoneTransfersTsigs = CloudflareFunctions.getDnsZoneTransfersTsigs(GetDnsZoneTransfersTsigsArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleDnsZoneTransfersTsigs:\n    fn::invoke:\n      function: cloudflare:getDnsZoneTransfersTsigs\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getDnsZoneTransfersTsigs.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getDnsZoneTransfersTsigs.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getDnsZoneTransfersTsigsResult:getDnsZoneTransfersTsigsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingAddress:getEmailRoutingAddress": {
            "description": "Accepted Permissions\n\n- `Email Routing Addresses Read`\n- `Email Routing Addresses Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingAddress = cloudflare.getEmailRoutingAddress({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    destinationAddressIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_address = cloudflare.get_email_routing_address(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    destination_address_identifier=\"ea95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingAddress = Cloudflare.Index.GetEmailRoutingAddress.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DestinationAddressIdentifier = \"ea95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingAddress(ctx, \u0026cloudflare.LookupEmailRoutingAddressArgs{\n\t\t\tAccountId:                    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDestinationAddressIdentifier: pulumi.StringRef(\"ea95132c15732412d22c1476fa83f27a\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingAddress = CloudflareFunctions.getEmailRoutingAddress(GetEmailRoutingAddressArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .destinationAddressIdentifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingAddress:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingAddress\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        destinationAddressIdentifier: ea95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingAddress.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "destinationAddressIdentifier": {
                        "type": "string",
                        "description": "Destination address identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingAddressFilter:getEmailRoutingAddressFilter"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingAddress.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and time the destination address has been created.\n",
                        "type": "string"
                    },
                    "destinationAddressIdentifier": {
                        "description": "Destination address identifier.\n",
                        "type": "string"
                    },
                    "email": {
                        "description": "The contact email address of the user.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingAddressFilter:getEmailRoutingAddressFilter"
                    },
                    "id": {
                        "description": "Destination address identifier.\n",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the destination address was last modified.\n",
                        "type": "string"
                    },
                    "tag": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Destination address tag. (Deprecated, replaced by destination address identifier)\n",
                        "type": "string"
                    },
                    "verified": {
                        "description": "The date and time the destination address has been verified. Null means not verified yet.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "created",
                    "email",
                    "id",
                    "modified",
                    "tag",
                    "verified"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingAddresses:getEmailRoutingAddresses": {
            "description": "Accepted Permissions\n\n- `Email Routing Addresses Read`\n- `Email Routing Addresses Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingAddresses = cloudflare.getEmailRoutingAddresses({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_addresses = cloudflare.get_email_routing_addresses(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingAddresses = Cloudflare.Index.GetEmailRoutingAddresses.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingAddresses(ctx, \u0026cloudflare.LookupEmailRoutingAddressesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingAddressesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingAddresses = CloudflareFunctions.getEmailRoutingAddresses(GetEmailRoutingAddressesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingAddresses:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingAddresses\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingAddresses.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Sorts results in an ascending or descending order.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "verified": {
                        "type": "boolean",
                        "description": "Filter by verified destination addresses.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingAddresses.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Sorts results in an ascending or descending order.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingAddressesResult:getEmailRoutingAddressesResult"
                        },
                        "type": "array"
                    },
                    "verified": {
                        "description": "Filter by verified destination addresses.\n",
                        "type": "boolean"
                    }
                },
                "required": [
                    "direction",
                    "results",
                    "verified",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingCatchAll:getEmailRoutingCatchAll": {
            "description": "Accepted Permissions\n\n- `Email Routing Rules Read`\n- `Email Routing Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingCatchAll = cloudflare.getEmailRoutingCatchAll({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_catch_all = cloudflare.get_email_routing_catch_all(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingCatchAll = Cloudflare.Index.GetEmailRoutingCatchAll.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingCatchAll(ctx, \u0026cloudflare.LookupEmailRoutingCatchAllArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingCatchAllArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingCatchAll = CloudflareFunctions.getEmailRoutingCatchAll(GetEmailRoutingCatchAllArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingCatchAll:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingCatchAll\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingCatchAll.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingCatchAll.\n",
                "properties": {
                    "actions": {
                        "description": "List actions for the catch-all routing rule.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingCatchAllAction:getEmailRoutingCatchAllAction"
                        },
                        "type": "array"
                    },
                    "enabled": {
                        "description": "Routing rule status.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "matchers": {
                        "description": "List of matchers for the catch-all routing rule.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingCatchAllMatcher:getEmailRoutingCatchAllMatcher"
                        },
                        "type": "array"
                    },
                    "name": {
                        "description": "Routing rule name.\n",
                        "type": "string"
                    },
                    "tag": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "actions",
                    "enabled",
                    "id",
                    "matchers",
                    "name",
                    "tag"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingDns:getEmailRoutingDns": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingDns = cloudflare.getEmailRoutingDns({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    subdomain: \"example.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_dns = cloudflare.get_email_routing_dns(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    subdomain=\"example.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingDns = Cloudflare.Index.GetEmailRoutingDns.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Subdomain = \"example.net\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingDns(ctx, \u0026cloudflare.LookupEmailRoutingDnsArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSubdomain: pulumi.StringRef(\"example.net\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingDnsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingDns = CloudflareFunctions.getEmailRoutingDns(GetEmailRoutingDnsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .subdomain(\"example.net\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingDns:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingDns\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        subdomain: example.net\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingDns.\n",
                "properties": {
                    "subdomain": {
                        "type": "string",
                        "description": "Domain of your zone.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingDns.\n",
                "properties": {
                    "errors": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingDnsError:getEmailRoutingDnsError"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "messages": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingDnsMessage:getEmailRoutingDnsMessage"
                        },
                        "type": "array"
                    },
                    "result": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingDnsResult:getEmailRoutingDnsResult"
                    },
                    "resultInfo": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingDnsResultInfo:getEmailRoutingDnsResultInfo"
                    },
                    "subdomain": {
                        "description": "Domain of your zone.\n",
                        "type": "string"
                    },
                    "success": {
                        "description": "Whether the API call was successful.\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "errors",
                    "id",
                    "messages",
                    "result",
                    "resultInfo",
                    "success"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingRule:getEmailRoutingRule": {
            "description": "Accepted Permissions\n\n- `Email Routing Rules Read`\n- `Email Routing Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingRule = cloudflare.getEmailRoutingRule({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    ruleIdentifier: \"a7e6fb77503c41d8a7f3113c6918f10c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_rule = cloudflare.get_email_routing_rule(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    rule_identifier=\"a7e6fb77503c41d8a7f3113c6918f10c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingRule = Cloudflare.Index.GetEmailRoutingRule.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RuleIdentifier = \"a7e6fb77503c41d8a7f3113c6918f10c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingRule(ctx, \u0026cloudflare.LookupEmailRoutingRuleArgs{\n\t\t\tZoneId:         pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRuleIdentifier: pulumi.StringRef(\"a7e6fb77503c41d8a7f3113c6918f10c\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingRule = CloudflareFunctions.getEmailRoutingRule(GetEmailRoutingRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .ruleIdentifier(\"a7e6fb77503c41d8a7f3113c6918f10c\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingRule:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingRule\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        ruleIdentifier: a7e6fb77503c41d8a7f3113c6918f10c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingRule.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingRuleFilter:getEmailRoutingRuleFilter"
                    },
                    "ruleIdentifier": {
                        "type": "string",
                        "description": "Routing rule identifier.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingRule.\n",
                "properties": {
                    "actions": {
                        "description": "List actions patterns.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingRuleAction:getEmailRoutingRuleAction"
                        },
                        "type": "array"
                    },
                    "enabled": {
                        "description": "Routing rule status.\n",
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailRoutingRuleFilter:getEmailRoutingRuleFilter"
                    },
                    "id": {
                        "description": "Routing rule identifier.\n",
                        "type": "string"
                    },
                    "matchers": {
                        "description": "Matching patterns to forward to your actions.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingRuleMatcher:getEmailRoutingRuleMatcher"
                        },
                        "type": "array"
                    },
                    "name": {
                        "description": "Routing rule name.\n",
                        "type": "string"
                    },
                    "priority": {
                        "description": "Priority of the routing rule.\n",
                        "type": "number"
                    },
                    "ruleIdentifier": {
                        "description": "Routing rule identifier.\n",
                        "type": "string"
                    },
                    "tag": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "actions",
                    "enabled",
                    "id",
                    "matchers",
                    "name",
                    "priority",
                    "tag"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingRules:getEmailRoutingRules": {
            "description": "Accepted Permissions\n\n- `Email Routing Rules Read`\n- `Email Routing Rules Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingRules = cloudflare.getEmailRoutingRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_rules = cloudflare.get_email_routing_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingRules = Cloudflare.Index.GetEmailRoutingRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Enabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingRules(ctx, \u0026cloudflare.LookupEmailRoutingRulesArgs{\n\t\t\tZoneId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingRules = CloudflareFunctions.getEmailRoutingRules(GetEmailRoutingRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .enabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingRules:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingRules.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Filter by enabled routing rules.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingRules.\n",
                "properties": {
                    "enabled": {
                        "description": "Filter by enabled routing rules.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailRoutingRulesResult:getEmailRoutingRulesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailRoutingSettings:getEmailRoutingSettings": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailRoutingSettings = cloudflare.getEmailRoutingSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_routing_settings = cloudflare.get_email_routing_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailRoutingSettings = Cloudflare.Index.GetEmailRoutingSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailRoutingSettings(ctx, \u0026cloudflare.LookupEmailRoutingSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailRoutingSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailRoutingSettings = CloudflareFunctions.getEmailRoutingSettings(GetEmailRoutingSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailRoutingSettings:\n    fn::invoke:\n      function: cloudflare:getEmailRoutingSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailRoutingSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailRoutingSettings.\n",
                "properties": {
                    "created": {
                        "description": "The date and time the settings have been created.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "State of the zone settings for Email Routing.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the settings have been modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Domain of your zone.\n",
                        "type": "string"
                    },
                    "skipWizard": {
                        "description": "Flag to check if the user skipped the configuration wizard.\n",
                        "type": "boolean"
                    },
                    "status": {
                        "description": "Show the state of your account, and the type or configuration error.\nAvailable values: \"ready\", \"unconfigured\", \"misconfigured\", \"misconfigured/locked\", \"unlocked\".\n",
                        "type": "string"
                    },
                    "tag": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Email Routing settings tag. (Deprecated, replaced by Email Routing settings identifier)\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "created",
                    "enabled",
                    "id",
                    "modified",
                    "name",
                    "skipWizard",
                    "status",
                    "tag"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailSecurityBlockSender:getEmailSecurityBlockSender": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityBlockSender = cloudflare.getEmailSecurityBlockSender({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    patternId: 2402,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_block_sender = cloudflare.get_email_security_block_sender(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    pattern_id=2402)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityBlockSender = Cloudflare.Index.GetEmailSecurityBlockSender.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PatternId = 2402,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailSecurityBlockSender(ctx, \u0026cloudflare.LookupEmailSecurityBlockSenderArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPatternId: pulumi.IntRef(2402),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailSecurityBlockSenderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailSecurityBlockSender = CloudflareFunctions.getEmailSecurityBlockSender(GetEmailSecurityBlockSenderArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .patternId(2402)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailSecurityBlockSender:\n    fn::invoke:\n      function: cloudflare:getEmailSecurityBlockSender\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        patternId: 2402\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailSecurityBlockSender.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailSecurityBlockSenderFilter:getEmailSecurityBlockSenderFilter"
                    },
                    "patternId": {
                        "type": "integer",
                        "description": "The unique identifier for the allow policy.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailSecurityBlockSender.\n",
                "properties": {
                    "accountId": {
                        "description": "Account Identifier\n",
                        "type": "string"
                    },
                    "comments": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailSecurityBlockSenderFilter:getEmailSecurityBlockSenderFilter"
                    },
                    "id": {
                        "description": "The unique identifier for the allow policy.\n",
                        "type": "integer"
                    },
                    "isRegex": {
                        "type": "boolean"
                    },
                    "lastModified": {
                        "type": "string"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "patternId": {
                        "description": "The unique identifier for the allow policy.\n",
                        "type": "integer"
                    },
                    "patternType": {
                        "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comments",
                    "createdAt",
                    "id",
                    "isRegex",
                    "lastModified",
                    "pattern",
                    "patternType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailSecurityBlockSenders:getEmailSecurityBlockSenders": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityBlockSenders = cloudflare.getEmailSecurityBlockSenders({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    order: \"pattern\",\n    pattern: \"pattern\",\n    patternType: \"EMAIL\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_block_senders = cloudflare.get_email_security_block_senders(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    order=\"pattern\",\n    pattern=\"pattern\",\n    pattern_type=\"EMAIL\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityBlockSenders = Cloudflare.Index.GetEmailSecurityBlockSenders.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        Order = \"pattern\",\n        Pattern = \"pattern\",\n        PatternType = \"EMAIL\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailSecurityBlockSenders(ctx, \u0026cloudflare.LookupEmailSecurityBlockSendersArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection:   pulumi.StringRef(\"asc\"),\n\t\t\tOrder:       pulumi.StringRef(\"pattern\"),\n\t\t\tPattern:     pulumi.StringRef(\"pattern\"),\n\t\t\tPatternType: pulumi.StringRef(\"EMAIL\"),\n\t\t\tSearch:      pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailSecurityBlockSendersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailSecurityBlockSenders = CloudflareFunctions.getEmailSecurityBlockSenders(GetEmailSecurityBlockSendersArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .order(\"pattern\")\n            .pattern(\"pattern\")\n            .patternType(\"EMAIL\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailSecurityBlockSenders:\n    fn::invoke:\n      function: cloudflare:getEmailSecurityBlockSenders\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        order: pattern\n        pattern: pattern\n        patternType: EMAIL\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailSecurityBlockSenders.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "The field to sort by.\nAvailable values: \"pattern\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "patternType": {
                        "type": "string",
                        "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailSecurityBlockSenders.\n",
                "properties": {
                    "accountId": {
                        "description": "Account Identifier\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "The field to sort by.\nAvailable values: \"pattern\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "patternType": {
                        "description": "Available values: \"EMAIL\", \"DOMAIN\", \"IP\", \"UNKNOWN\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailSecurityBlockSendersResult:getEmailSecurityBlockSendersResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailSecurityImpersonationRegistries:getEmailSecurityImpersonationRegistries": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityImpersonationRegistries = cloudflare.getEmailSecurityImpersonationRegistries({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    order: \"name\",\n    provenance: \"A1S_INTERNAL\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_impersonation_registries = cloudflare.get_email_security_impersonation_registries(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    order=\"name\",\n    provenance=\"A1S_INTERNAL\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityImpersonationRegistries = Cloudflare.Index.GetEmailSecurityImpersonationRegistries.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        Order = \"name\",\n        Provenance = \"A1S_INTERNAL\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailSecurityImpersonationRegistries(ctx, \u0026cloudflare.LookupEmailSecurityImpersonationRegistriesArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection:  pulumi.StringRef(\"asc\"),\n\t\t\tOrder:      pulumi.StringRef(\"name\"),\n\t\t\tProvenance: pulumi.StringRef(\"A1S_INTERNAL\"),\n\t\t\tSearch:     pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailSecurityImpersonationRegistriesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailSecurityImpersonationRegistries = CloudflareFunctions.getEmailSecurityImpersonationRegistries(GetEmailSecurityImpersonationRegistriesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .order(\"name\")\n            .provenance(\"A1S_INTERNAL\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailSecurityImpersonationRegistries:\n    fn::invoke:\n      function: cloudflare:getEmailSecurityImpersonationRegistries\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        order: name\n        provenance: A1S_INTERNAL\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailSecurityImpersonationRegistries.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "The field to sort by.\nAvailable values: \"name\", \"email\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                    },
                    "provenance": {
                        "type": "string",
                        "description": "Available values: \"A1S*INTERNAL\", \"SNOOPY-CASB*OFFICE*365\", \"SNOOPY-OFFICE*365\", \"SNOOPY-GOOGLE_DIRECTORY\".\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailSecurityImpersonationRegistries.\n",
                "properties": {
                    "accountId": {
                        "description": "Account Identifier\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "The field to sort by.\nAvailable values: \"name\", \"email\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "provenance": {
                        "description": "Available values: \"A1S*INTERNAL\", \"SNOOPY-CASB*OFFICE*365\", \"SNOOPY-OFFICE*365\", \"SNOOPY-GOOGLE_DIRECTORY\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailSecurityImpersonationRegistriesResult:getEmailSecurityImpersonationRegistriesResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailSecurityImpersonationRegistry:getEmailSecurityImpersonationRegistry": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityImpersonationRegistry = cloudflare.getEmailSecurityImpersonationRegistry({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    displayNameId: 2403,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_impersonation_registry = cloudflare.get_email_security_impersonation_registry(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    display_name_id=2403)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityImpersonationRegistry = Cloudflare.Index.GetEmailSecurityImpersonationRegistry.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DisplayNameId = 2403,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailSecurityImpersonationRegistry(ctx, \u0026cloudflare.LookupEmailSecurityImpersonationRegistryArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDisplayNameId: pulumi.IntRef(2403),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailSecurityImpersonationRegistryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailSecurityImpersonationRegistry = CloudflareFunctions.getEmailSecurityImpersonationRegistry(GetEmailSecurityImpersonationRegistryArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .displayNameId(2403)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailSecurityImpersonationRegistry:\n    fn::invoke:\n      function: cloudflare:getEmailSecurityImpersonationRegistry\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        displayNameId: 2403\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailSecurityImpersonationRegistry.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "displayNameId": {
                        "type": "integer"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailSecurityImpersonationRegistryFilter:getEmailSecurityImpersonationRegistryFilter"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailSecurityImpersonationRegistry.\n",
                "properties": {
                    "accountId": {
                        "description": "Account Identifier\n",
                        "type": "string"
                    },
                    "comments": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "directoryId": {
                        "type": "integer"
                    },
                    "directoryNodeId": {
                        "type": "integer"
                    },
                    "displayNameId": {
                        "type": "integer"
                    },
                    "email": {
                        "type": "string"
                    },
                    "externalDirectoryNodeId": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailSecurityImpersonationRegistryFilter:getEmailSecurityImpersonationRegistryFilter"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "integer"
                    },
                    "isEmailRegex": {
                        "type": "boolean"
                    },
                    "lastModified": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "provenance": {
                        "type": "string"
                    }
                },
                "required": [
                    "comments",
                    "createdAt",
                    "directoryId",
                    "directoryNodeId",
                    "email",
                    "externalDirectoryNodeId",
                    "id",
                    "isEmailRegex",
                    "lastModified",
                    "name",
                    "provenance"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailSecurityTrustedDomains:getEmailSecurityTrustedDomains": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityTrustedDomains = cloudflare.getEmailSecurityTrustedDomains({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    trustedDomainId: 2401,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_trusted_domains = cloudflare.get_email_security_trusted_domains(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    trusted_domain_id=2401)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityTrustedDomains = Cloudflare.Index.GetEmailSecurityTrustedDomains.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TrustedDomainId = 2401,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailSecurityTrustedDomains(ctx, \u0026cloudflare.LookupEmailSecurityTrustedDomainsArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTrustedDomainId: pulumi.IntRef(2401),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailSecurityTrustedDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailSecurityTrustedDomains = CloudflareFunctions.getEmailSecurityTrustedDomains(GetEmailSecurityTrustedDomainsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .trustedDomainId(2401)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailSecurityTrustedDomains:\n    fn::invoke:\n      function: cloudflare:getEmailSecurityTrustedDomains\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        trustedDomainId: 2401\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailSecurityTrustedDomains.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailSecurityTrustedDomainsFilter:getEmailSecurityTrustedDomainsFilter"
                    },
                    "trustedDomainId": {
                        "type": "integer",
                        "description": "The unique identifier for the trusted domain.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailSecurityTrustedDomains.\n",
                "properties": {
                    "accountId": {
                        "description": "Account Identifier\n",
                        "type": "string"
                    },
                    "comments": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getEmailSecurityTrustedDomainsFilter:getEmailSecurityTrustedDomainsFilter"
                    },
                    "id": {
                        "description": "The unique identifier for the trusted domain.\n",
                        "type": "integer"
                    },
                    "isRecent": {
                        "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.\n",
                        "type": "boolean"
                    },
                    "isRegex": {
                        "type": "boolean"
                    },
                    "isSimilarity": {
                        "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.\n",
                        "type": "boolean"
                    },
                    "lastModified": {
                        "type": "string"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "trustedDomainId": {
                        "description": "The unique identifier for the trusted domain.\n",
                        "type": "integer"
                    }
                },
                "required": [
                    "comments",
                    "createdAt",
                    "id",
                    "isRecent",
                    "isRegex",
                    "isSimilarity",
                    "lastModified",
                    "pattern"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getEmailSecurityTrustedDomainsList:getEmailSecurityTrustedDomainsList": {
            "description": "Accepted Permissions\n\n- `Cloud Email Security: Read`\n- `Cloud Email Security: Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleEmailSecurityTrustedDomainsList = cloudflare.getEmailSecurityTrustedDomainsList({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    isRecent: true,\n    isSimilarity: true,\n    order: \"pattern\",\n    pattern: \"pattern\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_email_security_trusted_domains_list = cloudflare.get_email_security_trusted_domains_list(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    is_recent=True,\n    is_similarity=True,\n    order=\"pattern\",\n    pattern=\"pattern\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleEmailSecurityTrustedDomainsList = Cloudflare.Index.GetEmailSecurityTrustedDomainsList.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        IsRecent = true,\n        IsSimilarity = true,\n        Order = \"pattern\",\n        Pattern = \"pattern\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetEmailSecurityTrustedDomainsList(ctx, \u0026cloudflare.LookupEmailSecurityTrustedDomainsListArgs{\n\t\t\tAccountId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection:    pulumi.StringRef(\"asc\"),\n\t\t\tIsRecent:     pulumi.BoolRef(true),\n\t\t\tIsSimilarity: pulumi.BoolRef(true),\n\t\t\tOrder:        pulumi.StringRef(\"pattern\"),\n\t\t\tPattern:      pulumi.StringRef(\"pattern\"),\n\t\t\tSearch:       pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetEmailSecurityTrustedDomainsListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleEmailSecurityTrustedDomainsList = CloudflareFunctions.getEmailSecurityTrustedDomainsList(GetEmailSecurityTrustedDomainsListArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .isRecent(true)\n            .isSimilarity(true)\n            .order(\"pattern\")\n            .pattern(\"pattern\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleEmailSecurityTrustedDomainsList:\n    fn::invoke:\n      function: cloudflare:getEmailSecurityTrustedDomainsList\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        isRecent: true\n        isSimilarity: true\n        order: pattern\n        pattern: pattern\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getEmailSecurityTrustedDomainsList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account Identifier\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "isRecent": {
                        "type": "boolean"
                    },
                    "isSimilarity": {
                        "type": "boolean"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "The field to sort by.\nAvailable values: \"pattern\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "search": {
                        "type": "string",
                        "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getEmailSecurityTrustedDomainsList.\n",
                "properties": {
                    "accountId": {
                        "description": "Account Identifier\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "isRecent": {
                        "type": "boolean"
                    },
                    "isSimilarity": {
                        "type": "boolean"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "The field to sort by.\nAvailable values: \"pattern\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "pattern": {
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getEmailSecurityTrustedDomainsListResult:getEmailSecurityTrustedDomainsListResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Allows searching in multiple properties of a record simultaneously.\nThis parameter is intended for human users, not automation. Its exact\nbehavior is intentionally left unspecified and is subject to change\nin the future.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getFilter:getFilter": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleFilter = cloudflare.getFilter({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    filterId: \"372e67954025e0ba6aaa6d586b9e0b61\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_filter = cloudflare.get_filter(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    filter_id=\"372e67954025e0ba6aaa6d586b9e0b61\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleFilter = Cloudflare.Index.GetFilter.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        FilterId = \"372e67954025e0ba6aaa6d586b9e0b61\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetFilter(ctx, \u0026cloudflare.LookupFilterArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFilterId: pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b61\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleFilter = CloudflareFunctions.getFilter(GetFilterArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .filterId(\"372e67954025e0ba6aaa6d586b9e0b61\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleFilter:\n    fn::invoke:\n      function: cloudflare:getFilter\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        filterId: 372e67954025e0ba6aaa6d586b9e0b61\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getFilter.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getFilterFilter:getFilterFilter"
                    },
                    "filterId": {
                        "type": "string",
                        "description": "The unique identifier of the filter.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getFilter.\n",
                "properties": {
                    "description": {
                        "description": "An informative summary of the filter.\n",
                        "type": "string"
                    },
                    "expression": {
                        "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/).\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getFilterFilter:getFilterFilter"
                    },
                    "filterId": {
                        "description": "The unique identifier of the filter.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique identifier of the filter.\n",
                        "type": "string"
                    },
                    "paused": {
                        "description": "When true, indicates that the filter is currently paused.\n",
                        "type": "boolean"
                    },
                    "ref": {
                        "description": "A short reference tag. Allows you to select related filters.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "expression",
                    "id",
                    "paused",
                    "ref"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getFilters:getFilters": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleFilters = cloudflare.getFilters({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"372e67954025e0ba6aaa6d586b9e0b61\",\n    description: \"browsers\",\n    expression: \"php\",\n    paused: false,\n    ref: \"FIL-100\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_filters = cloudflare.get_filters(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"372e67954025e0ba6aaa6d586b9e0b61\",\n    description=\"browsers\",\n    expression=\"php\",\n    paused=False,\n    ref=\"FIL-100\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleFilters = Cloudflare.Index.GetFilters.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"372e67954025e0ba6aaa6d586b9e0b61\",\n        Description = \"browsers\",\n        Expression = \"php\",\n        Paused = false,\n        Ref = \"FIL-100\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetFilters(ctx, \u0026cloudflare.LookupFiltersArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:          pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b61\"),\n\t\t\tDescription: pulumi.StringRef(\"browsers\"),\n\t\t\tExpression:  pulumi.StringRef(\"php\"),\n\t\t\tPaused:      pulumi.BoolRef(false),\n\t\t\tRef:         pulumi.StringRef(\"FIL-100\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetFiltersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleFilters = CloudflareFunctions.getFilters(GetFiltersArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"372e67954025e0ba6aaa6d586b9e0b61\")\n            .description(\"browsers\")\n            .expression(\"php\")\n            .paused(false)\n            .ref(\"FIL-100\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleFilters:\n    fn::invoke:\n      function: cloudflare:getFilters\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: 372e67954025e0ba6aaa6d586b9e0b61\n        description: browsers\n        expression: php\n        paused: false\n        ref: FIL-100\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getFilters.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "A case-insensitive string to find in the description.\n"
                    },
                    "expression": {
                        "type": "string",
                        "description": "A case-insensitive string to find in the expression.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "The unique identifier of the filter.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the filter is currently paused.\n"
                    },
                    "ref": {
                        "type": "string",
                        "description": "The filter ref (a short reference tag) to search for. Must be an exact match.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getFilters.\n",
                "properties": {
                    "description": {
                        "description": "A case-insensitive string to find in the description.\n",
                        "type": "string"
                    },
                    "expression": {
                        "description": "A case-insensitive string to find in the expression.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique identifier of the filter.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "paused": {
                        "description": "When true, indicates that the filter is currently paused.\n",
                        "type": "boolean"
                    },
                    "ref": {
                        "description": "The filter ref (a short reference tag) to search for. Must be an exact match.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getFiltersResult:getFiltersResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getFirewallRule:getFirewallRule": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleFirewallRule = cloudflare.getFirewallRule({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    ruleId: \"372e67954025e0ba6aaa6d586b9e0b60\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_firewall_rule = cloudflare.get_firewall_rule(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    rule_id=\"372e67954025e0ba6aaa6d586b9e0b60\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleFirewallRule = Cloudflare.Index.GetFirewallRule.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RuleId = \"372e67954025e0ba6aaa6d586b9e0b60\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetFirewallRule(ctx, \u0026cloudflare.LookupFirewallRuleArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRuleId: pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b60\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetFirewallRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleFirewallRule = CloudflareFunctions.getFirewallRule(GetFirewallRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .ruleId(\"372e67954025e0ba6aaa6d586b9e0b60\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleFirewallRule:\n    fn::invoke:\n      function: cloudflare:getFirewallRule\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        ruleId: 372e67954025e0ba6aaa6d586b9e0b60\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getFirewallRule.\n",
                "properties": {
                    "ruleId": {
                        "type": "string",
                        "description": "The unique identifier of the firewall rule.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getFirewallRule.\n",
                "properties": {
                    "action": {
                        "description": "The action to apply to a matched request. The \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e action is only available on an Enterprise plan.\nAvailable values: \"block\", \"challenge\", \"js*challenge\", \"managed*challenge\", \"allow\", \"log\", \"bypass\".\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "An informative summary of the firewall rule.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique identifier of the firewall rule.\n",
                        "type": "string"
                    },
                    "paused": {
                        "description": "When true, indicates that the firewall rule is currently paused.\n",
                        "type": "boolean"
                    },
                    "priority": {
                        "description": "The priority of the rule. Optional value used to define the processing order. A lower number indicates a higher priority. If not provided, rules with a defined priority will be processed before rules without a priority.\n",
                        "type": "number"
                    },
                    "products": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "ref": {
                        "description": "A short reference tag. Allows you to select related firewall rules.\n",
                        "type": "string"
                    },
                    "ruleId": {
                        "description": "The unique identifier of the firewall rule.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "action",
                    "description",
                    "id",
                    "paused",
                    "priority",
                    "products",
                    "ref"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getFirewallRules:getFirewallRules": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleFirewallRules = cloudflare.getFirewallRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"372e67954025e0ba6aaa6d586b9e0b60\",\n    action: \"block\",\n    description: \"mir\",\n    paused: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_firewall_rules = cloudflare.get_firewall_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"372e67954025e0ba6aaa6d586b9e0b60\",\n    action=\"block\",\n    description=\"mir\",\n    paused=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleFirewallRules = Cloudflare.Index.GetFirewallRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"372e67954025e0ba6aaa6d586b9e0b60\",\n        Action = \"block\",\n        Description = \"mir\",\n        Paused = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetFirewallRules(ctx, \u0026cloudflare.LookupFirewallRulesArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:          pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b60\"),\n\t\t\tAction:      pulumi.StringRef(\"block\"),\n\t\t\tDescription: pulumi.StringRef(\"mir\"),\n\t\t\tPaused:      pulumi.BoolRef(false),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetFirewallRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleFirewallRules = CloudflareFunctions.getFirewallRules(GetFirewallRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"372e67954025e0ba6aaa6d586b9e0b60\")\n            .action(\"block\")\n            .description(\"mir\")\n            .paused(false)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleFirewallRules:\n    fn::invoke:\n      function: cloudflare:getFirewallRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: 372e67954025e0ba6aaa6d586b9e0b60\n        action: block\n        description: mir\n        paused: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getFirewallRules.\n",
                "properties": {
                    "action": {
                        "type": "string",
                        "description": "The action to search for. Must be an exact match.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A case-insensitive string to find in the description.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "The unique identifier of the firewall rule.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the firewall rule is currently paused.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getFirewallRules.\n",
                "properties": {
                    "action": {
                        "description": "The action to search for. Must be an exact match.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "A case-insensitive string to find in the description.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique identifier of the firewall rule.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "paused": {
                        "description": "When true, indicates that the firewall rule is currently paused.\n",
                        "type": "boolean"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getFirewallRulesResult:getFirewallRulesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getHealthcheck:getHealthcheck": {
            "description": "Accepted Permissions\n\n- `Health Checks Read`\n- `Health Checks Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHealthcheck = cloudflare.getHealthcheck({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    healthcheckId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_healthcheck = cloudflare.get_healthcheck(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    healthcheck_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHealthcheck = Cloudflare.Index.GetHealthcheck.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        HealthcheckId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetHealthcheck(ctx, \u0026cloudflare.LookupHealthcheckArgs{\n\t\t\tZoneId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHealthcheckId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetHealthcheckArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleHealthcheck = CloudflareFunctions.getHealthcheck(GetHealthcheckArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .healthcheckId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleHealthcheck:\n    fn::invoke:\n      function: cloudflare:getHealthcheck\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        healthcheckId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getHealthcheck.\n",
                "properties": {
                    "healthcheckId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "healthcheckId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getHealthcheck.\n",
                "properties": {
                    "address": {
                        "description": "The hostname or IP address of the origin server to run health checks on.\n",
                        "type": "string"
                    },
                    "checkRegions": {
                        "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "consecutiveFails": {
                        "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.\n",
                        "type": "integer"
                    },
                    "consecutiveSuccesses": {
                        "description": "The number of consecutive successes required from a health check before changing the health to healthy.\n",
                        "type": "integer"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "description": "A human-readable description of the health check.\n",
                        "type": "string"
                    },
                    "failureReason": {
                        "description": "The current failure reason if status is unhealthy.\n",
                        "type": "string"
                    },
                    "healthcheckId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "httpConfig": {
                        "$ref": "#/types/cloudflare:index/getHealthcheckHttpConfig:getHealthcheckHttpConfig",
                        "description": "Parameters specific to an HTTP or HTTPS health check.\n"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "interval": {
                        "description": "The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations.\n",
                        "type": "integer"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.\n",
                        "type": "string"
                    },
                    "retries": {
                        "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n",
                        "type": "integer"
                    },
                    "status": {
                        "description": "The current status of the origin server according to the health check.\nAvailable values: \"unknown\", \"healthy\", \"unhealthy\", \"suspended\".\n",
                        "type": "string"
                    },
                    "suspended": {
                        "description": "If suspended, no health checks are sent to the origin.\n",
                        "type": "boolean"
                    },
                    "tcpConfig": {
                        "$ref": "#/types/cloudflare:index/getHealthcheckTcpConfig:getHealthcheckTcpConfig",
                        "description": "Parameters specific to TCP health check.\n"
                    },
                    "timeout": {
                        "description": "The timeout (in seconds) before marking the health check as failed.\n",
                        "type": "integer"
                    },
                    "type": {
                        "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "address",
                    "checkRegions",
                    "consecutiveFails",
                    "consecutiveSuccesses",
                    "createdOn",
                    "description",
                    "failureReason",
                    "healthcheckId",
                    "httpConfig",
                    "id",
                    "interval",
                    "modifiedOn",
                    "name",
                    "retries",
                    "status",
                    "suspended",
                    "tcpConfig",
                    "timeout",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getHealthchecks:getHealthchecks": {
            "description": "Accepted Permissions\n\n- `Health Checks Read`\n- `Health Checks Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHealthchecks = cloudflare.getHealthchecks({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_healthchecks = cloudflare.get_healthchecks(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHealthchecks = Cloudflare.Index.GetHealthchecks.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetHealthchecks(ctx, \u0026cloudflare.LookupHealthchecksArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetHealthchecksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleHealthchecks = CloudflareFunctions.getHealthchecks(GetHealthchecksArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleHealthchecks:\n    fn::invoke:\n      function: cloudflare:getHealthchecks\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getHealthchecks.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getHealthchecks.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getHealthchecksResult:getHealthchecksResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getHostnameTlsSetting:getHostnameTlsSetting": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHostnameTlsSetting = cloudflare.getHostnameTlsSetting({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"ciphers\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_hostname_tls_setting = cloudflare.get_hostname_tls_setting(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"ciphers\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHostnameTlsSetting = Cloudflare.Index.GetHostnameTlsSetting.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"ciphers\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetHostnameTlsSetting(ctx, \u0026cloudflare.LookupHostnameTlsSettingArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: \"ciphers\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetHostnameTlsSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleHostnameTlsSetting = CloudflareFunctions.getHostnameTlsSetting(GetHostnameTlsSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"ciphers\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleHostnameTlsSetting:\n    fn::invoke:\n      function: cloudflare:getHostnameTlsSetting\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        settingId: ciphers\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getHostnameTlsSetting.\n",
                "properties": {
                    "settingId": {
                        "type": "string",
                        "description": "The TLS Setting name. The value type depends on the setting:\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "settingId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getHostnameTlsSetting.\n",
                "properties": {
                    "createdAt": {
                        "description": "This is the time the tls setting was originally created for this hostname.\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "The hostname for which the tls settings are set.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The TLS Setting name. The value type depends on the setting:\n",
                        "type": "string"
                    },
                    "settingId": {
                        "description": "The TLS Setting name. The value type depends on the setting:\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Deployment status for the given tls setting.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "This is the time the tls setting was updated.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "The TLS setting value. The type depends on the \u003cspan pulumi-lang-nodejs=\"`settingId`\" pulumi-lang-dotnet=\"`SettingId`\" pulumi-lang-go=\"`settingId`\" pulumi-lang-python=\"`setting_id`\" pulumi-lang-yaml=\"`settingId`\" pulumi-lang-java=\"`settingId`\"\u003e`settingId`\u003c/span\u003e used in the request path:\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "hostname",
                    "id",
                    "settingId",
                    "status",
                    "updatedAt",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getHyperdriveConfig:getHyperdriveConfig": {
            "description": "Accepted Permissions\n\n- `Hyperdrive Read`\n- `Hyperdrive Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHyperdriveConfig = cloudflare.getHyperdriveConfig({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hyperdriveId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_hyperdrive_config = cloudflare.get_hyperdrive_config(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hyperdrive_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHyperdriveConfig = Cloudflare.Index.GetHyperdriveConfig.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        HyperdriveId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetHyperdriveConfig(ctx, \u0026cloudflare.LookupHyperdriveConfigArgs{\n\t\t\tAccountId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHyperdriveId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetHyperdriveConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleHyperdriveConfig = CloudflareFunctions.getHyperdriveConfig(GetHyperdriveConfigArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hyperdriveId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleHyperdriveConfig:\n    fn::invoke:\n      function: cloudflare:getHyperdriveConfig\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        hyperdriveId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getHyperdriveConfig.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Define configurations using a unique string identifier.\n"
                    },
                    "hyperdriveId": {
                        "type": "string",
                        "description": "Define configurations using a unique string identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "hyperdriveId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getHyperdriveConfig.\n",
                "properties": {
                    "accountId": {
                        "description": "Define configurations using a unique string identifier.\n",
                        "type": "string"
                    },
                    "caching": {
                        "$ref": "#/types/cloudflare:index/getHyperdriveConfigCaching:getHyperdriveConfigCaching"
                    },
                    "createdOn": {
                        "description": "Defines the creation time of the Hyperdrive configuration.\n",
                        "type": "string"
                    },
                    "hyperdriveId": {
                        "description": "Define configurations using a unique string identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Define configurations using a unique string identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Defines the last modified time of the Hyperdrive configuration.\n",
                        "type": "string"
                    },
                    "mtls": {
                        "$ref": "#/types/cloudflare:index/getHyperdriveConfigMtls:getHyperdriveConfigMtls",
                        "description": "mTLS configuration for the origin connection. Cannot be used with VPC Service origins; TLS must be managed on the VPC Service.\n"
                    },
                    "name": {
                        "description": "The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API.\n",
                        "type": "string"
                    },
                    "origin": {
                        "$ref": "#/types/cloudflare:index/getHyperdriveConfigOrigin:getHyperdriveConfigOrigin"
                    },
                    "originConnectionLimit": {
                        "description": "The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.\n",
                        "type": "integer"
                    }
                },
                "required": [
                    "caching",
                    "createdOn",
                    "hyperdriveId",
                    "id",
                    "modifiedOn",
                    "mtls",
                    "name",
                    "origin",
                    "originConnectionLimit"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getHyperdriveConfigs:getHyperdriveConfigs": {
            "description": "Accepted Permissions\n\n- `Hyperdrive Read`\n- `Hyperdrive Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleHyperdriveConfigs = cloudflare.getHyperdriveConfigs({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_hyperdrive_configs = cloudflare.get_hyperdrive_configs(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleHyperdriveConfigs = Cloudflare.Index.GetHyperdriveConfigs.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetHyperdriveConfigs(ctx, \u0026cloudflare.LookupHyperdriveConfigsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetHyperdriveConfigsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleHyperdriveConfigs = CloudflareFunctions.getHyperdriveConfigs(GetHyperdriveConfigsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleHyperdriveConfigs:\n    fn::invoke:\n      function: cloudflare:getHyperdriveConfigs\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getHyperdriveConfigs.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Define configurations using a unique string identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getHyperdriveConfigs.\n",
                "properties": {
                    "accountId": {
                        "description": "Define configurations using a unique string identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getHyperdriveConfigsResult:getHyperdriveConfigsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getImage:getImage": {
            "description": "Accepted Permissions\n\n- `Images Read`\n- `Images Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleImage = cloudflare.getImage({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    imageId: \"image_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_image = cloudflare.get_image(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    image_id=\"image_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleImage = Cloudflare.Index.GetImage.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ImageId = \"image_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetImage(ctx, \u0026cloudflare.LookupImageArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tImageId:   \"image_id\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleImage = CloudflareFunctions.getImage(GetImageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .imageId(\"image_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleImage:\n    fn::invoke:\n      function: cloudflare:getImage\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        imageId: image_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getImage.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "imageId": {
                        "type": "string",
                        "description": "Image unique identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "imageId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getImage.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "creator": {
                        "description": "Can set the creator field with an internal user ID.\n",
                        "type": "string"
                    },
                    "filename": {
                        "description": "Image file name.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Image unique identifier.\n",
                        "type": "string"
                    },
                    "imageId": {
                        "description": "Image unique identifier.\n",
                        "type": "string"
                    },
                    "meta": {
                        "description": "User modifiable key-value store. Can be used for keeping references to another system of record for managing images. Metadata must not exceed 1024 bytes.\n",
                        "type": "string"
                    },
                    "requireSignedUrls": {
                        "description": "Indicates whether the image can be a accessed only using it's UID. If set to true, a signed token needs to be generated with a signing key to view the image.\n",
                        "type": "boolean"
                    },
                    "uploaded": {
                        "description": "When the media item was uploaded.\n",
                        "type": "string"
                    },
                    "variants": {
                        "description": "Object specifying available variants for an image.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "creator",
                    "filename",
                    "id",
                    "imageId",
                    "meta",
                    "requireSignedUrls",
                    "uploaded",
                    "variants"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getImageVariant:getImageVariant": {
            "description": "Accepted Permissions\n\n- `Images Read`\n- `Images Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleImageVariant = cloudflare.getImageVariant({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    variantId: \"hero\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_image_variant = cloudflare.get_image_variant(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    variant_id=\"hero\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleImageVariant = Cloudflare.Index.GetImageVariant.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        VariantId = \"hero\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetImageVariant(ctx, \u0026cloudflare.LookupImageVariantArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tVariantId: \"hero\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetImageVariantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleImageVariant = CloudflareFunctions.getImageVariant(GetImageVariantArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .variantId(\"hero\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleImageVariant:\n    fn::invoke:\n      function: cloudflare:getImageVariant\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        variantId: hero\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getImageVariant.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "variantId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "variantId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getImageVariant.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/getImageVariantVariant:getImageVariantVariant"
                    },
                    "variantId": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "variant",
                    "variantId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getImages:getImages": {
            "description": "Accepted Permissions\n\n- `Images Read`\n- `Images Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleImages = cloudflare.getImages({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    creator: \"creator\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_images = cloudflare.get_images(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    creator=\"creator\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleImages = Cloudflare.Index.GetImages.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Creator = \"creator\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetImages(ctx, \u0026cloudflare.LookupImagesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCreator:   pulumi.StringRef(\"creator\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetImagesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleImages = CloudflareFunctions.getImages(GetImagesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .creator(\"creator\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleImages:\n    fn::invoke:\n      function: cloudflare:getImages\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        creator: creator\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getImages.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "creator": {
                        "type": "string",
                        "description": "Internal user ID set within the creator field. Setting to empty string \"\" will return images where creator field is not set\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getImages.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "creator": {
                        "description": "Internal user ID set within the creator field. Setting to empty string \"\" will return images where creator field is not set\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getImagesResult:getImagesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getIpRanges:getIpRanges": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleIpRanges = cloudflare.getIpRanges({\n    networks: \"networks\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ip_ranges = cloudflare.get_ip_ranges(networks=\"networks\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleIpRanges = Cloudflare.Index.GetIpRanges.Invoke(new()\n    {\n        Networks = \"networks\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetIpRanges(ctx, \u0026cloudflare.GetIpRangesArgs{\n\t\t\tNetworks: pulumi.StringRef(\"networks\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetIpRangesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleIpRanges = CloudflareFunctions.getIpRanges(GetIpRangesArgs.builder()\n            .networks(\"networks\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleIpRanges:\n    fn::invoke:\n      function: cloudflare:getIpRanges\n      arguments:\n        networks: networks\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getIpRanges.\n",
                "properties": {
                    "networks": {
                        "type": "string",
                        "description": "Specified as \u003cspan pulumi-lang-nodejs=\"`jdcloud`\" pulumi-lang-dotnet=\"`Jdcloud`\" pulumi-lang-go=\"`jdcloud`\" pulumi-lang-python=\"`jdcloud`\" pulumi-lang-yaml=\"`jdcloud`\" pulumi-lang-java=\"`jdcloud`\"\u003e`jdcloud`\u003c/span\u003e to list IPs used by JD Cloud data centers.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getIpRanges.\n",
                "properties": {
                    "etag": {
                        "description": "A digest of the IP data. Useful for determining if the data has changed.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "ipv4Cidrs": {
                        "description": "List of Cloudflare IPv4 CIDR addresses.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "ipv6Cidrs": {
                        "description": "List of Cloudflare IPv6 CIDR addresses.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "jdcloudCidrs": {
                        "description": "List IPv4 and IPv6 CIDRs, only populated if `?networks=jdcloud` is used.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "networks": {
                        "description": "Specified as \u003cspan pulumi-lang-nodejs=\"`jdcloud`\" pulumi-lang-dotnet=\"`Jdcloud`\" pulumi-lang-go=\"`jdcloud`\" pulumi-lang-python=\"`jdcloud`\" pulumi-lang-yaml=\"`jdcloud`\" pulumi-lang-java=\"`jdcloud`\"\u003e`jdcloud`\u003c/span\u003e to list IPs used by JD Cloud data centers.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "etag",
                    "ipv4Cidrs",
                    "ipv6Cidrs",
                    "jdcloudCidrs",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getKeylessCertificate:getKeylessCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleKeylessCertificate = cloudflare.getKeylessCertificate({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    keylessCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_keyless_certificate = cloudflare.get_keyless_certificate(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    keyless_certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleKeylessCertificate = Cloudflare.Index.GetKeylessCertificate.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        KeylessCertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetKeylessCertificate(ctx, \u0026cloudflare.LookupKeylessCertificateArgs{\n\t\t\tZoneId:               pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tKeylessCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetKeylessCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleKeylessCertificate = CloudflareFunctions.getKeylessCertificate(GetKeylessCertificateArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .keylessCertificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleKeylessCertificate:\n    fn::invoke:\n      function: cloudflare:getKeylessCertificate\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        keylessCertificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getKeylessCertificate.\n",
                "properties": {
                    "keylessCertificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "keylessCertificateId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getKeylessCertificate.\n",
                "properties": {
                    "createdOn": {
                        "description": "When the Keyless SSL was created.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether or not the Keyless SSL is on or off.\n",
                        "type": "boolean"
                    },
                    "host": {
                        "description": "The keyless SSL name.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "keylessCertificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "When the Keyless SSL was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The keyless SSL name.\n",
                        "type": "string"
                    },
                    "permissions": {
                        "description": "Available permissions for the Keyless SSL for the current user requesting the item.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "port": {
                        "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.\n",
                        "type": "number"
                    },
                    "status": {
                        "description": "Status of the Keyless SSL.\nAvailable values: \"active\", \"deleted\".\n",
                        "type": "string"
                    },
                    "tunnel": {
                        "$ref": "#/types/cloudflare:index/getKeylessCertificateTunnel:getKeylessCertificateTunnel",
                        "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel\n"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "enabled",
                    "host",
                    "id",
                    "keylessCertificateId",
                    "modifiedOn",
                    "name",
                    "permissions",
                    "port",
                    "status",
                    "tunnel"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getKeylessCertificates:getKeylessCertificates": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleKeylessCertificates = cloudflare.getKeylessCertificates({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_keyless_certificates = cloudflare.get_keyless_certificates(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleKeylessCertificates = Cloudflare.Index.GetKeylessCertificates.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetKeylessCertificates(ctx, \u0026cloudflare.LookupKeylessCertificatesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetKeylessCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleKeylessCertificates = CloudflareFunctions.getKeylessCertificates(GetKeylessCertificatesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleKeylessCertificates:\n    fn::invoke:\n      function: cloudflare:getKeylessCertificates\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getKeylessCertificates.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getKeylessCertificates.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getKeylessCertificatesResult:getKeylessCertificatesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLeakedCredentialCheck:getLeakedCredentialCheck": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLeakedCredentialCheck = cloudflare.getLeakedCredentialCheck({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_leaked_credential_check = cloudflare.get_leaked_credential_check(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLeakedCredentialCheck = Cloudflare.Index.GetLeakedCredentialCheck.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLeakedCredentialCheck(ctx, \u0026cloudflare.LookupLeakedCredentialCheckArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLeakedCredentialCheckArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLeakedCredentialCheck = CloudflareFunctions.getLeakedCredentialCheck(GetLeakedCredentialCheckArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLeakedCredentialCheck:\n    fn::invoke:\n      function: cloudflare:getLeakedCredentialCheck\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLeakedCredentialCheck.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLeakedCredentialCheck.\n",
                "properties": {
                    "enabled": {
                        "description": "Determines whether or not Leaked Credential Checks are enabled.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "enabled",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLeakedCredentialCheckRule:getLeakedCredentialCheckRule": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLeakedCredentialCheckRule = cloudflare.getLeakedCredentialCheckRule({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    detectionId: \"18a14bafaa8eb1df04ce683ec18c765e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_leaked_credential_check_rule = cloudflare.get_leaked_credential_check_rule(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    detection_id=\"18a14bafaa8eb1df04ce683ec18c765e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLeakedCredentialCheckRule = Cloudflare.Index.GetLeakedCredentialCheckRule.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DetectionId = \"18a14bafaa8eb1df04ce683ec18c765e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLeakedCredentialCheckRule(ctx, \u0026cloudflare.LookupLeakedCredentialCheckRuleArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDetectionId: \"18a14bafaa8eb1df04ce683ec18c765e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLeakedCredentialCheckRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLeakedCredentialCheckRule = CloudflareFunctions.getLeakedCredentialCheckRule(GetLeakedCredentialCheckRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .detectionId(\"18a14bafaa8eb1df04ce683ec18c765e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLeakedCredentialCheckRule:\n    fn::invoke:\n      function: cloudflare:getLeakedCredentialCheckRule\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        detectionId: 18a14bafaa8eb1df04ce683ec18c765e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLeakedCredentialCheckRule.\n",
                "properties": {
                    "detectionId": {
                        "type": "string",
                        "description": "Defines the unique ID for this custom detection.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "detectionId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getLeakedCredentialCheckRule.\n",
                "properties": {
                    "detectionId": {
                        "description": "Defines the unique ID for this custom detection.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Defines the unique ID for this custom detection.\n",
                        "type": "string"
                    },
                    "password": {
                        "description": "Defines ehe ruleset expression to use in matching the password in a request.\n",
                        "type": "string"
                    },
                    "username": {
                        "description": "Defines the ruleset expression to use in matching the username in a request.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "detectionId",
                    "id",
                    "password",
                    "username"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLeakedCredentialCheckRules:getLeakedCredentialCheckRules": {
            "description": "Accepted Permissions\n\n- `Account WAF Read`\n- `Account WAF Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLeakedCredentialCheckRules = cloudflare.getLeakedCredentialCheckRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_leaked_credential_check_rules = cloudflare.get_leaked_credential_check_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLeakedCredentialCheckRules = Cloudflare.Index.GetLeakedCredentialCheckRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLeakedCredentialCheckRules(ctx, \u0026cloudflare.LookupLeakedCredentialCheckRulesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLeakedCredentialCheckRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLeakedCredentialCheckRules = CloudflareFunctions.getLeakedCredentialCheckRules(GetLeakedCredentialCheckRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLeakedCredentialCheckRules:\n    fn::invoke:\n      function: cloudflare:getLeakedCredentialCheckRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLeakedCredentialCheckRules.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLeakedCredentialCheckRules.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLeakedCredentialCheckRulesResult:getLeakedCredentialCheckRulesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getList:getList": {
            "description": "Accepted Permissions\n\n- `Account Filter Lists Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleList = cloudflare.getList({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    listId: \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    search: \"1.1.1.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_list = cloudflare.get_list(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    list_id=\"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    search=\"1.1.1.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleList = Cloudflare.Index.GetList.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ListId = \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n        Search = \"1.1.1.1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetList(ctx, \u0026cloudflare.LookupListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tListId:    \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n\t\t\tSearch:    pulumi.StringRef(\"1.1.1.1\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleList = CloudflareFunctions.getList(GetListArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .listId(\"2c0fc9fa937b11eaa1b71c4d701ab86e\")\n            .search(\"1.1.1.1\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleList:\n    fn::invoke:\n      function: cloudflare:getList\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        listId: 2c0fc9fa937b11eaa1b71c4d701ab86e\n        search: 1.1.1.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID for this resource.\n"
                    },
                    "listId": {
                        "type": "string",
                        "description": "The unique ID of the list.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "A search query to filter returned items. Its meaning depends on the list type: IP addresses must start with the provided string, hostnames and bulk redirects must contain the string, and ASNs must match the string exactly.\n"
                    }
                },
                "type": "object",
                "required": [
                    "listId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getList.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID for this resource.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "The RFC 3339 timestamp of when the list was created.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "An informative summary of the list.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique ID of the list.\n",
                        "type": "string"
                    },
                    "items": {
                        "description": "The items in the list. If set, this overwrites all items in the list. Do not use with \u003cspan pulumi-lang-nodejs=\"`cloudflare.ListItem`\" pulumi-lang-dotnet=\"`cloudflare.ListItem`\" pulumi-lang-go=\"`ListItem`\" pulumi-lang-python=\"`ListItem`\" pulumi-lang-yaml=\"`cloudflare.ListItem`\" pulumi-lang-java=\"`cloudflare.ListItem`\"\u003e`cloudflare.ListItem`\u003c/span\u003e.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getListItem:getListItem"
                        },
                        "type": "array"
                    },
                    "kind": {
                        "description": "The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects).\nAvailable values: \"ip\", \"redirect\", \"hostname\", \"asn\".\n",
                        "type": "string"
                    },
                    "listId": {
                        "description": "The unique ID of the list.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "The RFC 3339 timestamp of when the list was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "An informative name for the list. Use this name in filter and rule expressions.\n",
                        "type": "string"
                    },
                    "numItems": {
                        "description": "The number of items in the list.\n",
                        "type": "number"
                    },
                    "numReferencingFilters": {
                        "description": "The number of [filters](https://www.terraform.io/api/resources/filters/) referencing the list.\n",
                        "type": "number"
                    },
                    "search": {
                        "description": "A search query to filter returned items. Its meaning depends on the list type: IP addresses must start with the provided string, hostnames and bulk redirects must contain the string, and ASNs must match the string exactly.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "description",
                    "id",
                    "items",
                    "kind",
                    "listId",
                    "modifiedOn",
                    "name",
                    "numItems",
                    "numReferencingFilters"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getListItem:getListItem": {
            "description": "Accepted Permissions\n\n- `Account Filter Lists Edit`\n- `Account Filter Lists Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleListItem = cloudflare.getListItem({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    listId: \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    itemId: \"34b12448945f11eaa1b71c4d701ab86e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_list_item = cloudflare.get_list_item(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    list_id=\"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    item_id=\"34b12448945f11eaa1b71c4d701ab86e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleListItem = Cloudflare.Index.GetListItem.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ListId = \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n        ItemId = \"34b12448945f11eaa1b71c4d701ab86e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetListItem(ctx, \u0026cloudflare.LookupListItemArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tListId:    \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n\t\t\tItemId:    \"34b12448945f11eaa1b71c4d701ab86e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetListItemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleListItem = CloudflareFunctions.getListItem(GetListItemArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .listId(\"2c0fc9fa937b11eaa1b71c4d701ab86e\")\n            .itemId(\"34b12448945f11eaa1b71c4d701ab86e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleListItem:\n    fn::invoke:\n      function: cloudflare:getListItem\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        listId: 2c0fc9fa937b11eaa1b71c4d701ab86e\n        itemId: 34b12448945f11eaa1b71c4d701ab86e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getListItem.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID for this resource.\n"
                    },
                    "itemId": {
                        "type": "string",
                        "description": "Defines the unique ID of the item in the List.\n"
                    },
                    "listId": {
                        "type": "string",
                        "description": "The unique ID of the list.\n"
                    }
                },
                "type": "object",
                "required": [
                    "itemId",
                    "listId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getListItem.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID for this resource.\n",
                        "type": "string"
                    },
                    "asn": {
                        "description": "Defines a non-negative 32 bit integer.\n",
                        "type": "integer"
                    },
                    "comment": {
                        "description": "Defines an informative summary of the list item.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "The RFC 3339 timestamp of when the list was created.\n",
                        "type": "string"
                    },
                    "hostname": {
                        "$ref": "#/types/cloudflare:index/getListItemHostname:getListItemHostname",
                        "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-).\n"
                    },
                    "id": {
                        "description": "Defines the unique ID of the item in the List.\n",
                        "type": "string"
                    },
                    "ip": {
                        "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.\n",
                        "type": "string"
                    },
                    "itemId": {
                        "description": "Defines the unique ID of the item in the List.\n",
                        "type": "string"
                    },
                    "listId": {
                        "description": "The unique ID of the list.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "The RFC 3339 timestamp of when the list was last modified.\n",
                        "type": "string"
                    },
                    "redirect": {
                        "$ref": "#/types/cloudflare:index/getListItemRedirect:getListItemRedirect",
                        "description": "The definition of the redirect.\n"
                    }
                },
                "required": [
                    "asn",
                    "comment",
                    "createdOn",
                    "hostname",
                    "id",
                    "ip",
                    "itemId",
                    "listId",
                    "modifiedOn",
                    "redirect"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getListItems:getListItems": {
            "description": "Accepted Permissions\n\n- `Account Filter Lists Edit`\n- `Account Filter Lists Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleListItems = cloudflare.getListItems({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    listId: \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    perPage: 1,\n    search: \"1.1.1.\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_list_items = cloudflare.get_list_items(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    list_id=\"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n    per_page=1,\n    search=\"1.1.1.\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleListItems = Cloudflare.Index.GetListItems.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ListId = \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n        PerPage = 1,\n        Search = \"1.1.1.\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetListItems(ctx, \u0026cloudflare.LookupListItemsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tListId:    \"2c0fc9fa937b11eaa1b71c4d701ab86e\",\n\t\t\tPerPage:   pulumi.IntRef(1),\n\t\t\tSearch:    pulumi.StringRef(\"1.1.1.\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetListItemsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleListItems = CloudflareFunctions.getListItems(GetListItemsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .listId(\"2c0fc9fa937b11eaa1b71c4d701ab86e\")\n            .perPage(1)\n            .search(\"1.1.1.\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleListItems:\n    fn::invoke:\n      function: cloudflare:getListItems\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        listId: 2c0fc9fa937b11eaa1b71c4d701ab86e\n        perPage: 1\n        search: 1.1.1.\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getListItems.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID for this resource.\n"
                    },
                    "listId": {
                        "type": "string",
                        "description": "The unique ID of the list.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "perPage": {
                        "type": "integer",
                        "description": "Amount of results to include in each paginated response. A non-negative 32 bit integer.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "A search query to filter returned items. Its meaning depends on the list type: IP addresses must start with the provided string, hostnames and bulk redirects must contain the string, and ASNs must match the string exactly.\n"
                    }
                },
                "type": "object",
                "required": [
                    "listId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getListItems.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID for this resource.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "listId": {
                        "description": "The unique ID of the list.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "perPage": {
                        "description": "Amount of results to include in each paginated response. A non-negative 32 bit integer.\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getListItemsResult:getListItemsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "A search query to filter returned items. Its meaning depends on the list type: IP addresses must start with the provided string, hostnames and bulk redirects must contain the string, and ASNs must match the string exactly.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "listId",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLists:getLists": {
            "description": "Accepted Permissions\n\n- `Account Filter Lists Edit`\n- `Account Filter Lists Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLists = cloudflare.getLists({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_lists = cloudflare.get_lists(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLists = Cloudflare.Index.GetLists.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLists(ctx, \u0026cloudflare.LookupListsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetListsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLists = CloudflareFunctions.getLists(GetListsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLists:\n    fn::invoke:\n      function: cloudflare:getLists\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLists.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID for this resource.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLists.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID for this resource.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getListsResult:getListsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLoadBalancer:getLoadBalancer": {
            "description": "Accepted Permissions\n\n- `Load Balancers Read`\n- `Load Balancers Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancer = cloudflare.getLoadBalancer({\n    zoneId: \"699d98642c564d2e855e9661899b7252\",\n    loadBalancerId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer = cloudflare.get_load_balancer(zone_id=\"699d98642c564d2e855e9661899b7252\",\n    load_balancer_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancer = Cloudflare.Index.GetLoadBalancer.Invoke(new()\n    {\n        ZoneId = \"699d98642c564d2e855e9661899b7252\",\n        LoadBalancerId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLoadBalancer(ctx, \u0026cloudflare.LookupLoadBalancerArgs{\n\t\t\tZoneId:         pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tLoadBalancerId: \"699d98642c564d2e855e9661899b7252\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLoadBalancerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLoadBalancer = CloudflareFunctions.getLoadBalancer(GetLoadBalancerArgs.builder()\n            .zoneId(\"699d98642c564d2e855e9661899b7252\")\n            .loadBalancerId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLoadBalancer:\n    fn::invoke:\n      function: cloudflare:getLoadBalancer\n      arguments:\n        zoneId: 699d98642c564d2e855e9661899b7252\n        loadBalancerId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLoadBalancer.\n",
                "properties": {
                    "loadBalancerId": {
                        "type": "string"
                    },
                    "popPools": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n"
                    },
                    "regionPools": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "loadBalancerId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getLoadBalancer.\n",
                "properties": {
                    "adaptiveRouting": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerAdaptiveRouting:getLoadBalancerAdaptiveRouting",
                        "description": "Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin.\n"
                    },
                    "countryPools": {
                        "additionalProperties": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "description": "A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region*pool mapping if it exists else to default*pools.\n",
                        "type": "object"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "defaultPools": {
                        "description": "A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when\u003cspan pulumi-lang-nodejs=\" regionPools \" pulumi-lang-dotnet=\" RegionPools \" pulumi-lang-go=\" regionPools \" pulumi-lang-python=\" region_pools \" pulumi-lang-yaml=\" regionPools \" pulumi-lang-java=\" regionPools \"\u003e regionPools \u003c/span\u003eare not configured for a given region.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "description": {
                        "description": "Object description.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether to enable (the default) this load balancer.\n",
                        "type": "boolean"
                    },
                    "fallbackPool": {
                        "description": "The pool ID to use when all other pools are detected as unhealthy.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "loadBalancerId": {
                        "type": "string"
                    },
                    "locationStrategy": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerLocationStrategy:getLoadBalancerLocationStrategy",
                        "description": "Controls location-based steering for non-proxied requests. See \u003cspan pulumi-lang-nodejs=\"`steeringPolicy`\" pulumi-lang-dotnet=\"`SteeringPolicy`\" pulumi-lang-go=\"`steeringPolicy`\" pulumi-lang-python=\"`steering_policy`\" pulumi-lang-yaml=\"`steeringPolicy`\" pulumi-lang-java=\"`steeringPolicy`\"\u003e`steeringPolicy`\u003c/span\u003e to learn how steering is affected.\n"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "description": "The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.\n",
                        "type": "string"
                    },
                    "networks": {
                        "description": "List of networks where Load Balancer or Pool is enabled.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "popPools": {
                        "additionalProperties": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "description": "Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country*pool, then region*pool mapping if it exists else to default_pools.\n",
                        "type": "object"
                    },
                    "proxied": {
                        "description": "Whether the hostname should be gray clouded (false) or orange clouded (true).\n",
                        "type": "boolean"
                    },
                    "randomSteering": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerRandomSteering:getLoadBalancerRandomSteering",
                        "description": "Configures pool weights.\n"
                    },
                    "regionPools": {
                        "additionalProperties": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "description": "A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools.\n",
                        "type": "object"
                    },
                    "rules": {
                        "description": "BETA Field Not General Access: A list of rules for this load balancer to execute.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLoadBalancerRule:getLoadBalancerRule"
                        },
                        "type": "array"
                    },
                    "sessionAffinity": {
                        "description": "Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of \u003cspan pulumi-lang-nodejs=\"`sessionAffinityTtl`\" pulumi-lang-dotnet=\"`SessionAffinityTtl`\" pulumi-lang-go=\"`sessionAffinityTtl`\" pulumi-lang-python=\"`session_affinity_ttl`\" pulumi-lang-yaml=\"`sessionAffinityTtl`\" pulumi-lang-java=\"`sessionAffinityTtl`\"\u003e`sessionAffinityTtl`\u003c/span\u003e seconds or the origin server is unhealthy, then a new origin server is calculated and used. See \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`sessionAffinityAttributes`\" pulumi-lang-dotnet=\"`SessionAffinityAttributes`\" pulumi-lang-go=\"`sessionAffinityAttributes`\" pulumi-lang-python=\"`session_affinity_attributes`\" pulumi-lang-yaml=\"`sessionAffinityAttributes`\" pulumi-lang-java=\"`sessionAffinityAttributes`\"\u003e`sessionAffinityAttributes`\u003c/span\u003e for additional required configuration.\nAvailable values: \"none\", \"cookie\", \u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e, \"header\".\n",
                        "type": "string"
                    },
                    "sessionAffinityAttributes": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerSessionAffinityAttributes:getLoadBalancerSessionAffinityAttributes",
                        "description": "Configures attributes for session affinity.\n"
                    },
                    "sessionAffinityTtl": {
                        "description": "Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per \u003cspan pulumi-lang-nodejs=\"`sessionAffinity`\" pulumi-lang-dotnet=\"`SessionAffinity`\" pulumi-lang-go=\"`sessionAffinity`\" pulumi-lang-python=\"`session_affinity`\" pulumi-lang-yaml=\"`sessionAffinity`\" pulumi-lang-java=\"`sessionAffinity`\"\u003e`sessionAffinity`\u003c/span\u003e policy are: - `\"cookie\"` / `\u003cspan pulumi-lang-nodejs=\"\"ipCookie\"\" pulumi-lang-dotnet=\"\"IpCookie\"\" pulumi-lang-go=\"\"ipCookie\"\" pulumi-lang-python=\"\"ip_cookie\"\" pulumi-lang-yaml=\"\"ipCookie\"\" pulumi-lang-java=\"\"ipCookie\"\"\u003e\"ipCookie\"\u003c/span\u003e`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified.\n",
                        "type": "number"
                    },
                    "steeringPolicy": {
                        "description": "Steering Policy for this load balancer.\n",
                        "type": "string"
                    },
                    "ttl": {
                        "description": "Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.\n",
                        "type": "number"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "adaptiveRouting",
                    "countryPools",
                    "createdOn",
                    "defaultPools",
                    "description",
                    "enabled",
                    "fallbackPool",
                    "id",
                    "loadBalancerId",
                    "locationStrategy",
                    "modifiedOn",
                    "name",
                    "networks",
                    "popPools",
                    "proxied",
                    "randomSteering",
                    "regionPools",
                    "rules",
                    "sessionAffinity",
                    "sessionAffinityAttributes",
                    "sessionAffinityTtl",
                    "steeringPolicy",
                    "ttl"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLoadBalancerMonitor:getLoadBalancerMonitor": {
            "description": "Accepted Permissions\n\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancerMonitor = cloudflare.getLoadBalancerMonitor({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    monitorId: \"f1aba936b94213e5b8dca0c0dbf1f9cc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer_monitor = cloudflare.get_load_balancer_monitor(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    monitor_id=\"f1aba936b94213e5b8dca0c0dbf1f9cc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancerMonitor = Cloudflare.Index.GetLoadBalancerMonitor.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        MonitorId = \"f1aba936b94213e5b8dca0c0dbf1f9cc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLoadBalancerMonitor(ctx, \u0026cloudflare.LookupLoadBalancerMonitorArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tMonitorId: \"f1aba936b94213e5b8dca0c0dbf1f9cc\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLoadBalancerMonitorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLoadBalancerMonitor = CloudflareFunctions.getLoadBalancerMonitor(GetLoadBalancerMonitorArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .monitorId(\"f1aba936b94213e5b8dca0c0dbf1f9cc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLoadBalancerMonitor:\n    fn::invoke:\n      function: cloudflare:getLoadBalancerMonitor\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        monitorId: f1aba936b94213e5b8dca0c0dbf1f9cc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLoadBalancerMonitor.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "monitorId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "monitorId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getLoadBalancerMonitor.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "allowInsecure": {
                        "description": "Do not validate the certificate when monitor use HTTPS. This parameter is currently only valid for HTTP and HTTPS monitors.\n",
                        "type": "boolean"
                    },
                    "consecutiveDown": {
                        "description": "To be marked unhealthy the monitored origin must fail this healthcheck N consecutive times.\n",
                        "type": "integer"
                    },
                    "consecutiveUp": {
                        "description": "To be marked healthy the monitored origin must pass this healthcheck N consecutive times.\n",
                        "type": "integer"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "description": "Object description.\n",
                        "type": "string"
                    },
                    "expectedBody": {
                        "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy. This parameter is only valid for HTTP and HTTPS monitors.\n",
                        "type": "string"
                    },
                    "expectedCodes": {
                        "description": "The expected HTTP response code or code range of the health check. This parameter is only valid for HTTP and HTTPS monitors.\n",
                        "type": "string"
                    },
                    "followRedirects": {
                        "description": "Follow redirects if returned by the origin. This parameter is only valid for HTTP and HTTPS monitors.\n",
                        "type": "boolean"
                    },
                    "header": {
                        "additionalProperties": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden. This parameter is only valid for HTTP and HTTPS monitors.\n",
                        "type": "object"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "interval": {
                        "description": "The interval between each health check. Shorter intervals may improve failover time, but will increase load on the origins as we check from multiple locations.\n",
                        "type": "integer"
                    },
                    "method": {
                        "description": "The method to use for the health check. This defaults to 'GET' for HTTP/HTTPS based checks and 'connection_established' for TCP based health checks.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "monitorId": {
                        "type": "string"
                    },
                    "path": {
                        "description": "The endpoint path you want to conduct a health check against. This parameter is only valid for HTTP and HTTPS monitors.\n",
                        "type": "string"
                    },
                    "port": {
                        "description": "The port number to connect to for the health check. Required for TCP, UDP, and SMTP checks. HTTP and HTTPS checks should only define the port when using a non-standard port (HTTP: default 80, HTTPS: default 443).\n",
                        "type": "integer"
                    },
                    "probeZone": {
                        "description": "Assign this monitor to emulate the specified zone while probing. This parameter is only valid for HTTP and HTTPS monitors.\n",
                        "type": "string"
                    },
                    "retries": {
                        "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.\n",
                        "type": "integer"
                    },
                    "timeout": {
                        "description": "The timeout (in seconds) before marking the health check as failed.\n",
                        "type": "integer"
                    },
                    "type": {
                        "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP','HTTPS', 'TCP', 'ICMP-PING', 'UDP-ICMP', and 'SMTP'.\nAvailable values: \"http\", \"https\", \"tcp\", \"udp*icmp\", \"icmp*ping\", \"smtp\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "allowInsecure",
                    "consecutiveDown",
                    "consecutiveUp",
                    "createdOn",
                    "description",
                    "expectedBody",
                    "expectedCodes",
                    "followRedirects",
                    "header",
                    "id",
                    "interval",
                    "method",
                    "modifiedOn",
                    "monitorId",
                    "path",
                    "port",
                    "probeZone",
                    "retries",
                    "timeout",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLoadBalancerMonitors:getLoadBalancerMonitors": {
            "description": "Accepted Permissions\n\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancerMonitors = cloudflare.getLoadBalancerMonitors({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer_monitors = cloudflare.get_load_balancer_monitors(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancerMonitors = Cloudflare.Index.GetLoadBalancerMonitors.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLoadBalancerMonitors(ctx, \u0026cloudflare.LookupLoadBalancerMonitorsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLoadBalancerMonitorsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLoadBalancerMonitors = CloudflareFunctions.getLoadBalancerMonitors(GetLoadBalancerMonitorsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLoadBalancerMonitors:\n    fn::invoke:\n      function: cloudflare:getLoadBalancerMonitors\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLoadBalancerMonitors.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLoadBalancerMonitors.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLoadBalancerMonitorsResult:getLoadBalancerMonitorsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLoadBalancerPool:getLoadBalancerPool": {
            "description": "Accepted Permissions\n\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancerPool = cloudflare.getLoadBalancerPool({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    poolId: \"17b5962d775c646f3f9725cbc7a53df4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer_pool = cloudflare.get_load_balancer_pool(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    pool_id=\"17b5962d775c646f3f9725cbc7a53df4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancerPool = Cloudflare.Index.GetLoadBalancerPool.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PoolId = \"17b5962d775c646f3f9725cbc7a53df4\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLoadBalancerPool(ctx, \u0026cloudflare.LookupLoadBalancerPoolArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPoolId:    pulumi.StringRef(\"17b5962d775c646f3f9725cbc7a53df4\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLoadBalancerPoolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLoadBalancerPool = CloudflareFunctions.getLoadBalancerPool(GetLoadBalancerPoolArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .poolId(\"17b5962d775c646f3f9725cbc7a53df4\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLoadBalancerPool:\n    fn::invoke:\n      function: cloudflare:getLoadBalancerPool\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        poolId: 17b5962d775c646f3f9725cbc7a53df4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLoadBalancerPool.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerPoolFilter:getLoadBalancerPoolFilter"
                    },
                    "poolId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLoadBalancerPool.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "checkRegions": {
                        "description": "A list of regions from which to run health checks. Null means every Cloudflare data center.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "description": "A human-readable description of the pool.\n",
                        "type": "string"
                    },
                    "disabledAt": {
                        "description": "This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any).\n",
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerPoolFilter:getLoadBalancerPoolFilter"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "latitude": {
                        "description": "The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set.\n",
                        "type": "number"
                    },
                    "loadShedding": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerPoolLoadShedding:getLoadBalancerPoolLoadShedding",
                        "description": "Configures load shedding policies and percentages for the pool.\n"
                    },
                    "longitude": {
                        "description": "The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set.\n",
                        "type": "number"
                    },
                    "minimumOrigins": {
                        "description": "The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool.\n",
                        "type": "integer"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "monitor": {
                        "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n",
                        "type": "string"
                    },
                    "monitorGroup": {
                        "description": "The ID of the Monitor Group to use for checking the health of origins within this pool.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed.\n",
                        "type": "string"
                    },
                    "networks": {
                        "description": "List of networks where Load Balancer or Pool is enabled.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "notificationEmail": {
                        "description": "This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list.\n",
                        "type": "string"
                    },
                    "notificationFilter": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerPoolNotificationFilter:getLoadBalancerPoolNotificationFilter",
                        "description": "Filter pool and origin health notifications by resource type or health status. Use null to reset.\n"
                    },
                    "originSteering": {
                        "$ref": "#/types/cloudflare:index/getLoadBalancerPoolOriginSteering:getLoadBalancerPoolOriginSteering",
                        "description": "Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.\n"
                    },
                    "origins": {
                        "description": "The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLoadBalancerPoolOrigin:getLoadBalancerPoolOrigin"
                        },
                        "type": "array"
                    },
                    "poolId": {
                        "type": "string"
                    }
                },
                "required": [
                    "checkRegions",
                    "createdOn",
                    "description",
                    "disabledAt",
                    "enabled",
                    "id",
                    "latitude",
                    "loadShedding",
                    "longitude",
                    "minimumOrigins",
                    "modifiedOn",
                    "monitor",
                    "monitorGroup",
                    "name",
                    "networks",
                    "notificationEmail",
                    "notificationFilter",
                    "originSteering",
                    "origins"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLoadBalancerPools:getLoadBalancerPools": {
            "description": "Accepted Permissions\n\n- `Load Balancing: Monitors and Pools Read`\n- `Load Balancing: Monitors and Pools Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancerPools = cloudflare.getLoadBalancerPools({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    monitor: \"monitor\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancer_pools = cloudflare.get_load_balancer_pools(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    monitor=\"monitor\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancerPools = Cloudflare.Index.GetLoadBalancerPools.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Monitor = \"monitor\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLoadBalancerPools(ctx, \u0026cloudflare.LookupLoadBalancerPoolsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tMonitor:   pulumi.StringRef(\"monitor\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLoadBalancerPoolsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLoadBalancerPools = CloudflareFunctions.getLoadBalancerPools(GetLoadBalancerPoolsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .monitor(\"monitor\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLoadBalancerPools:\n    fn::invoke:\n      function: cloudflare:getLoadBalancerPools\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        monitor: monitor\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLoadBalancerPools.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "monitor": {
                        "type": "string",
                        "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLoadBalancerPools.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "monitor": {
                        "description": "The ID of the Monitor to use for checking the health of origins within this pool.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLoadBalancerPoolsResult:getLoadBalancerPoolsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLoadBalancers:getLoadBalancers": {
            "description": "Accepted Permissions\n\n- `Load Balancers Read`\n- `Load Balancers Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLoadBalancers = cloudflare.getLoadBalancers({\n    zoneId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_load_balancers = cloudflare.get_load_balancers(zone_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLoadBalancers = Cloudflare.Index.GetLoadBalancers.Invoke(new()\n    {\n        ZoneId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLoadBalancers(ctx, \u0026cloudflare.LookupLoadBalancersArgs{\n\t\t\tZoneId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLoadBalancersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLoadBalancers = CloudflareFunctions.getLoadBalancers(GetLoadBalancersArgs.builder()\n            .zoneId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLoadBalancers:\n    fn::invoke:\n      function: cloudflare:getLoadBalancers\n      arguments:\n        zoneId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLoadBalancers.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLoadBalancers.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLoadBalancersResult:getLoadBalancersResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLogpullRetention:getLogpullRetention": {
            "description": "Accepted Permissions\n\n- `Logs Read`\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpullRetention = cloudflare.getLogpullRetention({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpull_retention = cloudflare.get_logpull_retention(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpullRetention = Cloudflare.Index.GetLogpullRetention.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLogpullRetention(ctx, \u0026cloudflare.LookupLogpullRetentionArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLogpullRetentionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLogpullRetention = CloudflareFunctions.getLogpullRetention(GetLogpullRetentionArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLogpullRetention:\n    fn::invoke:\n      function: cloudflare:getLogpullRetention\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLogpullRetention.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLogpullRetention.\n",
                "properties": {
                    "flag": {
                        "description": "The log retention flag for Logpull API.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "flag",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLogpushDatasetField:getLogpushDatasetField": {
            "description": "Accepted Permissions\n\n- `Logs Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpushDatasetField = cloudflare.getLogpushDatasetField({\n    datasetId: \"gateway_dns\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpush_dataset_field = cloudflare.get_logpush_dataset_field(dataset_id=\"gateway_dns\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpushDatasetField = Cloudflare.Index.GetLogpushDatasetField.Invoke(new()\n    {\n        DatasetId = \"gateway_dns\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLogpushDatasetField(ctx, \u0026cloudflare.GetLogpushDatasetFieldArgs{\n\t\t\tDatasetId: pulumi.StringRef(\"gateway_dns\"),\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLogpushDatasetFieldArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLogpushDatasetField = CloudflareFunctions.getLogpushDatasetField(GetLogpushDatasetFieldArgs.builder()\n            .datasetId(\"gateway_dns\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLogpushDatasetField:\n    fn::invoke:\n      function: cloudflare:getLogpushDatasetField\n      arguments:\n        datasetId: gateway_dns\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLogpushDatasetField.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "datasetId": {
                        "type": "string",
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLogpushDatasetField.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "datasetId": {
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "datasetId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLogpushDatasetJob:getLogpushDatasetJob": {
            "description": "Accepted Permissions\n\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpushDatasetJob = cloudflare.getLogpushDatasetJob({\n    datasetId: \"gateway_dns\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpush_dataset_job = cloudflare.get_logpush_dataset_job(dataset_id=\"gateway_dns\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpushDatasetJob = Cloudflare.Index.GetLogpushDatasetJob.Invoke(new()\n    {\n        DatasetId = \"gateway_dns\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLogpushDatasetJob(ctx, \u0026cloudflare.GetLogpushDatasetJobArgs{\n\t\t\tDatasetId: pulumi.StringRef(\"gateway_dns\"),\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLogpushDatasetJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLogpushDatasetJob = CloudflareFunctions.getLogpushDatasetJob(GetLogpushDatasetJobArgs.builder()\n            .datasetId(\"gateway_dns\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLogpushDatasetJob:\n    fn::invoke:\n      function: cloudflare:getLogpushDatasetJob\n      arguments:\n        datasetId: gateway_dns\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLogpushDatasetJob.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "datasetId": {
                        "type": "string",
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLogpushDatasetJob.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "dataset": {
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n",
                        "type": "string"
                    },
                    "datasetId": {
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n",
                        "type": "string"
                    },
                    "destinationConf": {
                        "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Flag that indicates if the job is enabled.\n",
                        "type": "boolean"
                    },
                    "errorMessage": {
                        "description": "If not null, the job is currently failing. Failures are usually. repetitive (example: no permissions to write to destination bucket). Only the last failure is recorded. On successful execution of a job the error*message and last*error are set to null.\n",
                        "type": "string"
                    },
                    "frequency": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files.\nAvailable values: \"high\", \"low\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Unique id of the job.\n",
                        "type": "integer"
                    },
                    "kind": {
                        "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).\nAvailable values: \"\", \"edge\".\n",
                        "type": "string"
                    },
                    "lastComplete": {
                        "description": "Records the last time for which logs have been successfully pushed. If the last successful push was for logs range 2018-07-23T10:00:00Z to 2018-07-23T10:01:00Z then the value of this field will be 2018-07-23T10:01:00Z. If the job has never run or has just been enabled and hasn't run yet then the field will be empty.\n",
                        "type": "string"
                    },
                    "lastError": {
                        "description": "Records the last time the job failed. If not null, the job is currently. failing. If null, the job has either never failed or has run successfully at least once since last failure. See also the\u003cspan pulumi-lang-nodejs=\" errorMessage \" pulumi-lang-dotnet=\" ErrorMessage \" pulumi-lang-go=\" errorMessage \" pulumi-lang-python=\" error_message \" pulumi-lang-yaml=\" errorMessage \" pulumi-lang-java=\" errorMessage \"\u003e errorMessage \u003c/span\u003efield.\n",
                        "type": "string"
                    },
                    "logpullOptions": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "This field is deprecated. Use \u003cspan pulumi-lang-nodejs=\"`outputOptions`\" pulumi-lang-dotnet=\"`OutputOptions`\" pulumi-lang-go=\"`outputOptions`\" pulumi-lang-python=\"`output_options`\" pulumi-lang-yaml=\"`outputOptions`\" pulumi-lang-java=\"`outputOptions`\"\u003e`outputOptions`\u003c/span\u003e instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.\n",
                        "type": "string"
                    },
                    "maxUploadBytes": {
                        "description": "The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size.\n",
                        "type": "integer"
                    },
                    "maxUploadIntervalSeconds": {
                        "description": "The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this.\n",
                        "type": "integer"
                    },
                    "maxUploadRecords": {
                        "description": "The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this.\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job.\n",
                        "type": "string"
                    },
                    "outputOptions": {
                        "$ref": "#/types/cloudflare:index/getLogpushDatasetJobOutputOptions:getLogpushDatasetJobOutputOptions",
                        "description": "The structured replacement for \u003cspan pulumi-lang-nodejs=\"`logpullOptions`\" pulumi-lang-dotnet=\"`LogpullOptions`\" pulumi-lang-go=\"`logpullOptions`\" pulumi-lang-python=\"`logpull_options`\" pulumi-lang-yaml=\"`logpullOptions`\" pulumi-lang-java=\"`logpullOptions`\"\u003e`logpullOptions`\u003c/span\u003e. When including this field, the \u003cspan pulumi-lang-nodejs=\"`logpullOption`\" pulumi-lang-dotnet=\"`LogpullOption`\" pulumi-lang-go=\"`logpullOption`\" pulumi-lang-python=\"`logpull_option`\" pulumi-lang-yaml=\"`logpullOption`\" pulumi-lang-java=\"`logpullOption`\"\u003e`logpullOption`\u003c/span\u003e field will be ignored.\n"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "dataset",
                    "datasetId",
                    "destinationConf",
                    "enabled",
                    "errorMessage",
                    "frequency",
                    "id",
                    "kind",
                    "lastComplete",
                    "lastError",
                    "logpullOptions",
                    "maxUploadBytes",
                    "maxUploadIntervalSeconds",
                    "maxUploadRecords",
                    "name",
                    "outputOptions"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLogpushJob:getLogpushJob": {
            "description": "Accepted Permissions\n\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpushJob = cloudflare.getLogpushJob({\n    jobId: 1,\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpush_job = cloudflare.get_logpush_job(job_id=1,\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpushJob = Cloudflare.Index.GetLogpushJob.Invoke(new()\n    {\n        JobId = 1,\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLogpushJob(ctx, \u0026cloudflare.LookupLogpushJobArgs{\n\t\t\tJobId:     1,\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLogpushJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLogpushJob = CloudflareFunctions.getLogpushJob(GetLogpushJobArgs.builder()\n            .jobId(1)\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLogpushJob:\n    fn::invoke:\n      function: cloudflare:getLogpushJob\n      arguments:\n        jobId: 1\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLogpushJob.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "jobId": {
                        "type": "integer",
                        "description": "Unique id of the job.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "jobId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getLogpushJob.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "dataset": {
                        "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).\nAvailable values: \"access*requests\", \"audit*logs\", \"audit*logs*v2\", \"biso*user*actions\", \"casb*findings\", \"device*posture*results\", \"dex*application*tests\", \"dex*device*state*events\", \"dlp*forensic*copies\", \"dns*firewall*logs\", \"dns*logs\", \"email*security*alerts\", \"email*security*post*delivery*events\", \"firewall*events\", \"gateway*dns\", \"gateway*http\", \"gateway*network\", \"http*requests\", \"ipsec*logs\", \"magic*ids*detections\", \"mcp*portal*logs\", \"nel*reports\", \"network*analytics*logs\", \"page*shield*events\", \"sinkhole*http*logs\", \"spectrum*events\", \"ssh*logs\", \"warp*config*changes\", \"warp*toggle*changes\", \"workers*trace*events\", \"zaraz*events\", \"zero*trust*network*sessions\".\n",
                        "type": "string"
                    },
                    "destinationConf": {
                        "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Flag that indicates if the job is enabled.\n",
                        "type": "boolean"
                    },
                    "errorMessage": {
                        "description": "If not null, the job is currently failing. Failures are usually. repetitive (example: no permissions to write to destination bucket). Only the last failure is recorded. On successful execution of a job the error*message and last*error are set to null.\n",
                        "type": "string"
                    },
                    "frequency": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files.\nAvailable values: \"high\", \"low\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Unique id of the job.\n",
                        "type": "integer"
                    },
                    "jobId": {
                        "description": "Unique id of the job.\n",
                        "type": "integer"
                    },
                    "kind": {
                        "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).\nAvailable values: \"\", \"edge\".\n",
                        "type": "string"
                    },
                    "lastComplete": {
                        "description": "Records the last time for which logs have been successfully pushed. If the last successful push was for logs range 2018-07-23T10:00:00Z to 2018-07-23T10:01:00Z then the value of this field will be 2018-07-23T10:01:00Z. If the job has never run or has just been enabled and hasn't run yet then the field will be empty.\n",
                        "type": "string"
                    },
                    "lastError": {
                        "description": "Records the last time the job failed. If not null, the job is currently. failing. If null, the job has either never failed or has run successfully at least once since last failure. See also the\u003cspan pulumi-lang-nodejs=\" errorMessage \" pulumi-lang-dotnet=\" ErrorMessage \" pulumi-lang-go=\" errorMessage \" pulumi-lang-python=\" error_message \" pulumi-lang-yaml=\" errorMessage \" pulumi-lang-java=\" errorMessage \"\u003e errorMessage \u003c/span\u003efield.\n",
                        "type": "string"
                    },
                    "logpullOptions": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "This field is deprecated. Use \u003cspan pulumi-lang-nodejs=\"`outputOptions`\" pulumi-lang-dotnet=\"`OutputOptions`\" pulumi-lang-go=\"`outputOptions`\" pulumi-lang-python=\"`output_options`\" pulumi-lang-yaml=\"`outputOptions`\" pulumi-lang-java=\"`outputOptions`\"\u003e`outputOptions`\u003c/span\u003e instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.\n",
                        "type": "string"
                    },
                    "maxUploadBytes": {
                        "description": "The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size.\n",
                        "type": "integer"
                    },
                    "maxUploadIntervalSeconds": {
                        "description": "The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this.\n",
                        "type": "integer"
                    },
                    "maxUploadRecords": {
                        "description": "The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this.\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job.\n",
                        "type": "string"
                    },
                    "outputOptions": {
                        "$ref": "#/types/cloudflare:index/getLogpushJobOutputOptions:getLogpushJobOutputOptions",
                        "description": "The structured replacement for \u003cspan pulumi-lang-nodejs=\"`logpullOptions`\" pulumi-lang-dotnet=\"`LogpullOptions`\" pulumi-lang-go=\"`logpullOptions`\" pulumi-lang-python=\"`logpull_options`\" pulumi-lang-yaml=\"`logpullOptions`\" pulumi-lang-java=\"`logpullOptions`\"\u003e`logpullOptions`\u003c/span\u003e. When including this field, the \u003cspan pulumi-lang-nodejs=\"`logpullOption`\" pulumi-lang-dotnet=\"`LogpullOption`\" pulumi-lang-go=\"`logpullOption`\" pulumi-lang-python=\"`logpull_option`\" pulumi-lang-yaml=\"`logpullOption`\" pulumi-lang-java=\"`logpullOption`\"\u003e`logpullOption`\u003c/span\u003e field will be ignored.\n"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "dataset",
                    "destinationConf",
                    "enabled",
                    "errorMessage",
                    "frequency",
                    "id",
                    "jobId",
                    "kind",
                    "lastComplete",
                    "lastError",
                    "logpullOptions",
                    "maxUploadBytes",
                    "maxUploadIntervalSeconds",
                    "maxUploadRecords",
                    "name",
                    "outputOptions"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getLogpushJobs:getLogpushJobs": {
            "description": "Accepted Permissions\n\n- `Logs Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleLogpushJobs = cloudflare.getLogpushJobs({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_logpush_jobs = cloudflare.get_logpush_jobs(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleLogpushJobs = Cloudflare.Index.GetLogpushJobs.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetLogpushJobs(ctx, \u0026cloudflare.LookupLogpushJobsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetLogpushJobsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleLogpushJobs = CloudflareFunctions.getLogpushJobs(GetLogpushJobsArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleLogpushJobs:\n    fn::invoke:\n      function: cloudflare:getLogpushJobs\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getLogpushJobs.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getLogpushJobs.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getLogpushJobsResult:getLogpushJobsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicNetworkMonitoringConfiguration:getMagicNetworkMonitoringConfiguration": {
            "description": "Accepted Permissions\n\n- `Magic Network Monitoring Admin`\n- `Magic Network Monitoring Config Read`\n- `Magic Network Monitoring Config Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicNetworkMonitoringConfiguration = cloudflare.getMagicNetworkMonitoringConfiguration({\n    accountId: \"6f91088a406011ed95aed352566e8d4c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_network_monitoring_configuration = cloudflare.get_magic_network_monitoring_configuration(account_id=\"6f91088a406011ed95aed352566e8d4c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicNetworkMonitoringConfiguration = Cloudflare.Index.GetMagicNetworkMonitoringConfiguration.Invoke(new()\n    {\n        AccountId = \"6f91088a406011ed95aed352566e8d4c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicNetworkMonitoringConfiguration(ctx, \u0026cloudflare.LookupMagicNetworkMonitoringConfigurationArgs{\n\t\t\tAccountId: pulumi.StringRef(\"6f91088a406011ed95aed352566e8d4c\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicNetworkMonitoringConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicNetworkMonitoringConfiguration = CloudflareFunctions.getMagicNetworkMonitoringConfiguration(GetMagicNetworkMonitoringConfigurationArgs.builder()\n            .accountId(\"6f91088a406011ed95aed352566e8d4c\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicNetworkMonitoringConfiguration:\n    fn::invoke:\n      function: cloudflare:getMagicNetworkMonitoringConfiguration\n      arguments:\n        accountId: 6f91088a406011ed95aed352566e8d4c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicNetworkMonitoringConfiguration.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getMagicNetworkMonitoringConfiguration.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "defaultSampling": {
                        "description": "Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router.\n",
                        "type": "number"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "name": {
                        "description": "The account name.\n",
                        "type": "string"
                    },
                    "routerIps": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "warpDevices": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicNetworkMonitoringConfigurationWarpDevice:getMagicNetworkMonitoringConfigurationWarpDevice"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "defaultSampling",
                    "name",
                    "routerIps",
                    "warpDevices",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicNetworkMonitoringRule:getMagicNetworkMonitoringRule": {
            "description": "Accepted Permissions\n\n- `Magic Network Monitoring Admin`\n- `Magic Network Monitoring Config Read`\n- `Magic Network Monitoring Config Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicNetworkMonitoringRule = cloudflare.getMagicNetworkMonitoringRule({\n    accountId: \"6f91088a406011ed95aed352566e8d4c\",\n    ruleId: \"2890e6fa406311ed9b5a23f70f6fb8cf\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_network_monitoring_rule = cloudflare.get_magic_network_monitoring_rule(account_id=\"6f91088a406011ed95aed352566e8d4c\",\n    rule_id=\"2890e6fa406311ed9b5a23f70f6fb8cf\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicNetworkMonitoringRule = Cloudflare.Index.GetMagicNetworkMonitoringRule.Invoke(new()\n    {\n        AccountId = \"6f91088a406011ed95aed352566e8d4c\",\n        RuleId = \"2890e6fa406311ed9b5a23f70f6fb8cf\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicNetworkMonitoringRule(ctx, \u0026cloudflare.LookupMagicNetworkMonitoringRuleArgs{\n\t\t\tAccountId: pulumi.StringRef(\"6f91088a406011ed95aed352566e8d4c\"),\n\t\t\tRuleId:    \"2890e6fa406311ed9b5a23f70f6fb8cf\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicNetworkMonitoringRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicNetworkMonitoringRule = CloudflareFunctions.getMagicNetworkMonitoringRule(GetMagicNetworkMonitoringRuleArgs.builder()\n            .accountId(\"6f91088a406011ed95aed352566e8d4c\")\n            .ruleId(\"2890e6fa406311ed9b5a23f70f6fb8cf\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicNetworkMonitoringRule:\n    fn::invoke:\n      function: cloudflare:getMagicNetworkMonitoringRule\n      arguments:\n        accountId: 6f91088a406011ed95aed352566e8d4c\n        ruleId: 2890e6fa406311ed9b5a23f70f6fb8cf\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicNetworkMonitoringRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "The id of the rule. Must be unique.\n"
                    }
                },
                "type": "object",
                "required": [
                    "ruleId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicNetworkMonitoringRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "automaticAdvertisement": {
                        "description": "Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit.\n",
                        "type": "boolean"
                    },
                    "bandwidthThreshold": {
                        "description": "The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n",
                        "type": "number"
                    },
                    "duration": {
                        "description": "The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"].\nAvailable values: \"1m\", \"5m\", \"10m\", \"15m\", \"20m\", \"30m\", \"45m\", \"60m\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The id of the rule. Must be unique.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.\n",
                        "type": "string"
                    },
                    "packetThreshold": {
                        "description": "The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum.\n",
                        "type": "number"
                    },
                    "prefixMatch": {
                        "description": "Prefix match type to be applied for a prefix auto advertisement when using an\u003cspan pulumi-lang-nodejs=\" advancedDdos \" pulumi-lang-dotnet=\" AdvancedDdos \" pulumi-lang-go=\" advancedDdos \" pulumi-lang-python=\" advanced_ddos \" pulumi-lang-yaml=\" advancedDdos \" pulumi-lang-java=\" advancedDdos \"\u003e advancedDdos \u003c/span\u003erule.\nAvailable values: \"exact\", \"subnet\", \"supernet\".\n",
                        "type": "string"
                    },
                    "prefixes": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "ruleId": {
                        "description": "The id of the rule. Must be unique.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "MNM rule type.\nAvailable values: \"threshold\", \"zscore\", \u003cspan pulumi-lang-nodejs=\"\"advancedDdos\"\" pulumi-lang-dotnet=\"\"AdvancedDdos\"\" pulumi-lang-go=\"\"advancedDdos\"\" pulumi-lang-python=\"\"advanced_ddos\"\" pulumi-lang-yaml=\"\"advancedDdos\"\" pulumi-lang-java=\"\"advancedDdos\"\"\u003e\"advancedDdos\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "zscoreSensitivity": {
                        "description": "Level of sensitivity set for zscore rules.\nAvailable values: \"low\", \"medium\", \"high\".\n",
                        "type": "string"
                    },
                    "zscoreTarget": {
                        "description": "Target of the zscore rule analysis.\nAvailable values: \"bits\", \"packets\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "automaticAdvertisement",
                    "bandwidthThreshold",
                    "duration",
                    "id",
                    "name",
                    "packetThreshold",
                    "prefixMatch",
                    "prefixes",
                    "ruleId",
                    "type",
                    "zscoreSensitivity",
                    "zscoreTarget"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicNetworkMonitoringRules:getMagicNetworkMonitoringRules": {
            "description": "Accepted Permissions\n\n- `Magic Network Monitoring Admin`\n- `Magic Network Monitoring Config Read`\n- `Magic Network Monitoring Config Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicNetworkMonitoringRules = cloudflare.getMagicNetworkMonitoringRules({\n    accountId: \"6f91088a406011ed95aed352566e8d4c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_network_monitoring_rules = cloudflare.get_magic_network_monitoring_rules(account_id=\"6f91088a406011ed95aed352566e8d4c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicNetworkMonitoringRules = Cloudflare.Index.GetMagicNetworkMonitoringRules.Invoke(new()\n    {\n        AccountId = \"6f91088a406011ed95aed352566e8d4c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicNetworkMonitoringRules(ctx, \u0026cloudflare.LookupMagicNetworkMonitoringRulesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"6f91088a406011ed95aed352566e8d4c\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicNetworkMonitoringRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicNetworkMonitoringRules = CloudflareFunctions.getMagicNetworkMonitoringRules(GetMagicNetworkMonitoringRulesArgs.builder()\n            .accountId(\"6f91088a406011ed95aed352566e8d4c\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicNetworkMonitoringRules:\n    fn::invoke:\n      function: cloudflare:getMagicNetworkMonitoringRules\n      arguments:\n        accountId: 6f91088a406011ed95aed352566e8d4c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicNetworkMonitoringRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getMagicNetworkMonitoringRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicNetworkMonitoringRulesResult:getMagicNetworkMonitoringRulesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitConnector:getMagicTransitConnector": {
            "description": "Accepted Permissions\n\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitConnector = cloudflare.getMagicTransitConnector({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    connectorId: \"connector_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_connector = cloudflare.get_magic_transit_connector(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    connector_id=\"connector_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitConnector = Cloudflare.Index.GetMagicTransitConnector.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ConnectorId = \"connector_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitConnector(ctx, \u0026cloudflare.LookupMagicTransitConnectorArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConnectorId: \"connector_id\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitConnectorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitConnector = CloudflareFunctions.getMagicTransitConnector(GetMagicTransitConnectorArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .connectorId(\"connector_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitConnector:\n    fn::invoke:\n      function: cloudflare:getMagicTransitConnector\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        connectorId: connector_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitConnector.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "connectorId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "connectorId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitConnector.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier\n",
                        "type": "string"
                    },
                    "activated": {
                        "type": "boolean"
                    },
                    "connectorId": {
                        "type": "string"
                    },
                    "device": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitConnectorDevice:getMagicTransitConnectorDevice"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "interruptWindowDaysOfWeeks": {
                        "description": "Allowed days of the week for upgrades. Default is all days.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "interruptWindowDurationHours": {
                        "type": "number"
                    },
                    "interruptWindowEmbargoDates": {
                        "description": "List of dates (YYYY-MM-DD) when upgrades are blocked.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "interruptWindowHourOfDay": {
                        "type": "number"
                    },
                    "lastHeartbeat": {
                        "type": "string"
                    },
                    "lastSeenVersion": {
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "licenseKey": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "timezone": {
                        "type": "string"
                    }
                },
                "required": [
                    "activated",
                    "connectorId",
                    "device",
                    "id",
                    "interruptWindowDaysOfWeeks",
                    "interruptWindowDurationHours",
                    "interruptWindowEmbargoDates",
                    "interruptWindowHourOfDay",
                    "lastHeartbeat",
                    "lastSeenVersion",
                    "lastUpdated",
                    "licenseKey",
                    "notes",
                    "timezone"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitConnectors:getMagicTransitConnectors": {
            "description": "Accepted Permissions\n\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitConnectors = cloudflare.getMagicTransitConnectors({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_connectors = cloudflare.get_magic_transit_connectors(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitConnectors = Cloudflare.Index.GetMagicTransitConnectors.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitConnectors(ctx, \u0026cloudflare.LookupMagicTransitConnectorsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitConnectorsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitConnectors = CloudflareFunctions.getMagicTransitConnectors(GetMagicTransitConnectorsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitConnectors:\n    fn::invoke:\n      function: cloudflare:getMagicTransitConnectors\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitConnectors.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitConnectors.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicTransitConnectorsResult:getMagicTransitConnectorsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSite:getMagicTransitSite": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSite = cloudflare.getMagicTransitSite({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site = cloudflare.get_magic_transit_site(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSite = Cloudflare.Index.GetMagicTransitSite.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSite(ctx, \u0026cloudflare.LookupMagicTransitSiteArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSite = CloudflareFunctions.getMagicTransitSite(GetMagicTransitSiteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSite:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSite\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSite.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteFilter:getMagicTransitSiteFilter"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSite.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "connectorId": {
                        "description": "Magic Connector identifier tag.\n",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteFilter:getMagicTransitSiteFilter"
                    },
                    "haMode": {
                        "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "location": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteLocation:getMagicTransitSiteLocation",
                        "description": "Location of site in latitude and longitude.\n"
                    },
                    "name": {
                        "description": "The name of the site.\n",
                        "type": "string"
                    },
                    "secondaryConnectorId": {
                        "description": "Magic Connector identifier tag. Used when high availability mode is on.\n",
                        "type": "string"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "connectorId",
                    "description",
                    "haMode",
                    "id",
                    "location",
                    "name",
                    "secondaryConnectorId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSiteAcl:getMagicTransitSiteAcl": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteAcl = cloudflare.getMagicTransitSiteAcl({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    aclId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_acl = cloudflare.get_magic_transit_site_acl(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    acl_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteAcl = Cloudflare.Index.GetMagicTransitSiteAcl.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AclId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSiteAcl(ctx, \u0026cloudflare.LookupMagicTransitSiteAclArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tAclId:     \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSiteAcl = CloudflareFunctions.getMagicTransitSiteAcl(GetMagicTransitSiteAclArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .aclId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSiteAcl:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSiteAcl\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n        aclId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSiteAcl.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "aclId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "aclId",
                    "siteId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSiteAcl.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "aclId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "Description for the ACL.\n",
                        "type": "string"
                    },
                    "forwardLocally": {
                        "description": "The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "lan1": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteAclLan1:getMagicTransitSiteAclLan1"
                    },
                    "lan2": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteAclLan2:getMagicTransitSiteAclLan2"
                    },
                    "name": {
                        "description": "The name of the ACL.\n",
                        "type": "string"
                    },
                    "protocols": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "unidirectional": {
                        "description": "The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.\n",
                        "type": "boolean"
                    }
                },
                "required": [
                    "aclId",
                    "description",
                    "forwardLocally",
                    "id",
                    "lan1",
                    "lan2",
                    "name",
                    "protocols",
                    "siteId",
                    "unidirectional"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSiteAcls:getMagicTransitSiteAcls": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteAcls = cloudflare.getMagicTransitSiteAcls({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_acls = cloudflare.get_magic_transit_site_acls(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteAcls = Cloudflare.Index.GetMagicTransitSiteAcls.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSiteAcls(ctx, \u0026cloudflare.LookupMagicTransitSiteAclsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteAclsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSiteAcls = CloudflareFunctions.getMagicTransitSiteAcls(GetMagicTransitSiteAclsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSiteAcls:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSiteAcls\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSiteAcls.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "siteId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSiteAcls.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicTransitSiteAclsResult:getMagicTransitSiteAclsResult"
                        },
                        "type": "array"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "siteId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSiteLan:getMagicTransitSiteLan": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteLan = cloudflare.getMagicTransitSiteLan({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    lanId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_lan = cloudflare.get_magic_transit_site_lan(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    lan_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteLan = Cloudflare.Index.GetMagicTransitSiteLan.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        LanId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSiteLan(ctx, \u0026cloudflare.LookupMagicTransitSiteLanArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tLanId:     \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteLanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSiteLan = CloudflareFunctions.getMagicTransitSiteLan(GetMagicTransitSiteLanArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .lanId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSiteLan:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSiteLan\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n        lanId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSiteLan.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "lanId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "lanId",
                    "siteId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSiteLan.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "bondId": {
                        "type": "integer"
                    },
                    "haLink": {
                        "description": "mark true to use this LAN for HA probing. only works for site with HA turned on. only one LAN can be set as the ha_link.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "isBreakout": {
                        "description": "mark true to use this LAN for source-based breakout traffic\n",
                        "type": "boolean"
                    },
                    "isPrioritized": {
                        "description": "mark true to use this LAN for source-based prioritized traffic\n",
                        "type": "boolean"
                    },
                    "lanId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "nat": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteLanNat:getMagicTransitSiteLanNat"
                    },
                    "physport": {
                        "type": "integer"
                    },
                    "routedSubnets": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicTransitSiteLanRoutedSubnet:getMagicTransitSiteLanRoutedSubnet"
                        },
                        "type": "array"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "staticAddressing": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteLanStaticAddressing:getMagicTransitSiteLanStaticAddressing",
                        "description": "If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static*address is required along with secondary and virtual address.\n"
                    },
                    "vlanTag": {
                        "description": "VLAN ID. Use zero for untagged.\n",
                        "type": "integer"
                    }
                },
                "required": [
                    "bondId",
                    "haLink",
                    "id",
                    "isBreakout",
                    "isPrioritized",
                    "lanId",
                    "name",
                    "nat",
                    "physport",
                    "routedSubnets",
                    "siteId",
                    "staticAddressing",
                    "vlanTag"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSiteLans:getMagicTransitSiteLans": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteLans = cloudflare.getMagicTransitSiteLans({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_lans = cloudflare.get_magic_transit_site_lans(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteLans = Cloudflare.Index.GetMagicTransitSiteLans.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSiteLans(ctx, \u0026cloudflare.LookupMagicTransitSiteLansArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteLansArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSiteLans = CloudflareFunctions.getMagicTransitSiteLans(GetMagicTransitSiteLansArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSiteLans:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSiteLans\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSiteLans.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "siteId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSiteLans.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicTransitSiteLansResult:getMagicTransitSiteLansResult"
                        },
                        "type": "array"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "siteId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSiteWan:getMagicTransitSiteWan": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteWan = cloudflare.getMagicTransitSiteWan({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    wanId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_wan = cloudflare.get_magic_transit_site_wan(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    wan_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteWan = Cloudflare.Index.GetMagicTransitSiteWan.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WanId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSiteWan(ctx, \u0026cloudflare.LookupMagicTransitSiteWanArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tWanId:     \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteWanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSiteWan = CloudflareFunctions.getMagicTransitSiteWan(GetMagicTransitSiteWanArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .wanId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSiteWan:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSiteWan\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n        wanId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSiteWan.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "wanId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "siteId",
                    "wanId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSiteWan.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "healthCheckRate": {
                        "description": "Magic WAN health check rate for tunnels created on this link. The default value is \u003cspan pulumi-lang-nodejs=\"`mid`\" pulumi-lang-dotnet=\"`Mid`\" pulumi-lang-go=\"`mid`\" pulumi-lang-python=\"`mid`\" pulumi-lang-yaml=\"`mid`\" pulumi-lang-java=\"`mid`\"\u003e`mid`\u003c/span\u003e.\nAvailable values: \"low\", \"mid\", \"high\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "physport": {
                        "type": "integer"
                    },
                    "priority": {
                        "description": "Priority of WAN for traffic loadbalancing.\n",
                        "type": "integer"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "staticAddressing": {
                        "$ref": "#/types/cloudflare:index/getMagicTransitSiteWanStaticAddressing:getMagicTransitSiteWanStaticAddressing",
                        "description": "(optional) if omitted, use DHCP. Submit secondary*address when site is in high availability mode.\n"
                    },
                    "vlanTag": {
                        "description": "VLAN ID. Use zero for untagged.\n",
                        "type": "integer"
                    },
                    "wanId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "healthCheckRate",
                    "id",
                    "name",
                    "physport",
                    "priority",
                    "siteId",
                    "staticAddressing",
                    "vlanTag",
                    "wanId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSiteWans:getMagicTransitSiteWans": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSiteWans = cloudflare.getMagicTransitSiteWans({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_site_wans = cloudflare.get_magic_transit_site_wans(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSiteWans = Cloudflare.Index.GetMagicTransitSiteWans.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSiteWans(ctx, \u0026cloudflare.LookupMagicTransitSiteWansArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSiteWansArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSiteWans = CloudflareFunctions.getMagicTransitSiteWans(GetMagicTransitSiteWansArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSiteWans:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSiteWans\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSiteWans.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "siteId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSiteWans.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicTransitSiteWansResult:getMagicTransitSiteWansResult"
                        },
                        "type": "array"
                    },
                    "siteId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "siteId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicTransitSites:getMagicTransitSites": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicTransitSites = cloudflare.getMagicTransitSites({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    connectorid: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_transit_sites = cloudflare.get_magic_transit_sites(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    connectorid=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicTransitSites = Cloudflare.Index.GetMagicTransitSites.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Connectorid = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicTransitSites(ctx, \u0026cloudflare.LookupMagicTransitSitesArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConnectorid: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicTransitSitesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicTransitSites = CloudflareFunctions.getMagicTransitSites(GetMagicTransitSitesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .connectorid(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicTransitSites:\n    fn::invoke:\n      function: cloudflare:getMagicTransitSites\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        connectorid: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicTransitSites.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "connectorid": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getMagicTransitSites.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "connectorid": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMagicTransitSitesResult:getMagicTransitSitesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicWanGreTunnel:getMagicWanGreTunnel": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanGreTunnel = cloudflare.getMagicWanGreTunnel({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    greTunnelId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_gre_tunnel = cloudflare.get_magic_wan_gre_tunnel(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    gre_tunnel_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanGreTunnel = Cloudflare.Index.GetMagicWanGreTunnel.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        GreTunnelId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicWanGreTunnel(ctx, \u0026cloudflare.LookupMagicWanGreTunnelArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tGreTunnelId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicWanGreTunnelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicWanGreTunnel = CloudflareFunctions.getMagicWanGreTunnel(GetMagicWanGreTunnelArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .greTunnelId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicWanGreTunnel:\n    fn::invoke:\n      function: cloudflare:getMagicWanGreTunnel\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        greTunnelId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicWanGreTunnel.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "greTunnelId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "greTunnelId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicWanGreTunnel.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "greTunnel": {
                        "$ref": "#/types/cloudflare:index/getMagicWanGreTunnelGreTunnel:getMagicWanGreTunnelGreTunnel"
                    },
                    "greTunnelId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "greTunnel",
                    "greTunnelId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicWanIpsecTunnel:getMagicWanIpsecTunnel": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanIpsecTunnel = cloudflare.getMagicWanIpsecTunnel({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    ipsecTunnelId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_ipsec_tunnel = cloudflare.get_magic_wan_ipsec_tunnel(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    ipsec_tunnel_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanIpsecTunnel = Cloudflare.Index.GetMagicWanIpsecTunnel.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        IpsecTunnelId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicWanIpsecTunnel(ctx, \u0026cloudflare.LookupMagicWanIpsecTunnelArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIpsecTunnelId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicWanIpsecTunnelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicWanIpsecTunnel = CloudflareFunctions.getMagicWanIpsecTunnel(GetMagicWanIpsecTunnelArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .ipsecTunnelId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicWanIpsecTunnel:\n    fn::invoke:\n      function: cloudflare:getMagicWanIpsecTunnel\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        ipsecTunnelId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicWanIpsecTunnel.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "ipsecTunnelId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "ipsecTunnelId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicWanIpsecTunnel.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "ipsecTunnel": {
                        "$ref": "#/types/cloudflare:index/getMagicWanIpsecTunnelIpsecTunnel:getMagicWanIpsecTunnelIpsecTunnel"
                    },
                    "ipsecTunnelId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "ipsecTunnel",
                    "ipsecTunnelId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMagicWanStaticRoute:getMagicWanStaticRoute": {
            "description": "Accepted Permissions\n\n- `Magic Transit Read`\n- `Magic Transit Write`\n- `Magic WAN Read`\n- `Magic WAN Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMagicWanStaticRoute = cloudflare.getMagicWanStaticRoute({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    routeId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_magic_wan_static_route = cloudflare.get_magic_wan_static_route(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    route_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMagicWanStaticRoute = Cloudflare.Index.GetMagicWanStaticRoute.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RouteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMagicWanStaticRoute(ctx, \u0026cloudflare.LookupMagicWanStaticRouteArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRouteId:   \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMagicWanStaticRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMagicWanStaticRoute = CloudflareFunctions.getMagicWanStaticRoute(GetMagicWanStaticRouteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .routeId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMagicWanStaticRoute:\n    fn::invoke:\n      function: cloudflare:getMagicWanStaticRoute\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        routeId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMagicWanStaticRoute.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "routeId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "routeId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMagicWanStaticRoute.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "route": {
                        "$ref": "#/types/cloudflare:index/getMagicWanStaticRouteRoute:getMagicWanStaticRouteRoute"
                    },
                    "routeId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "route",
                    "routeId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getManagedTransforms:getManagedTransforms": {
            "description": "Accepted Permissions\n\n- `Account Rulesets Read`\n- `Account Rulesets Write`\n- `Account WAF Read`\n- `Account WAF Write`\n- `Bot Management Read`\n- `Bot Management Write`\n- `Cache Settings Read`\n- `Cache Settings Write`\n- `Config Settings Read`\n- `Config Settings Write`\n- `Custom Errors Read`\n- `Custom Errors Write`\n- `Dynamic URL Redirects Read`\n- `Dynamic URL Redirects Write`\n- `HTTP DDoS Managed Ruleset Read`\n- `HTTP DDoS Managed Ruleset Write`\n- `L4 DDoS Managed Ruleset Read`\n- `L4 DDoS Managed Ruleset Write`\n- `Logs Read`\n- `Logs Write`\n- `Magic Firewall Read`\n- `Magic Firewall Write`\n- `Managed headers Read`\n- `Managed headers Write`\n- `Mass URL Redirects Read`\n- `Mass URL Redirects Write`\n- `Origin Read`\n- `Origin Write`\n- `Response Compression Read`\n- `Response Compression Write`\n- `Sanitize Read`\n- `Sanitize Write`\n- `Select Configuration Read`\n- `Select Configuration Write`\n- `Transform Rules Read`\n- `Transform Rules Write`\n- `Zone Transform Rules Read`\n- `Zone Transform Rules Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleManagedTransforms = cloudflare.getManagedTransforms({\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_managed_transforms = cloudflare.get_managed_transforms(zone_id=\"9f1839b6152d298aca64c4e906b6d074\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleManagedTransforms = Cloudflare.Index.GetManagedTransforms.Invoke(new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetManagedTransforms(ctx, \u0026cloudflare.LookupManagedTransformsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetManagedTransformsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleManagedTransforms = CloudflareFunctions.getManagedTransforms(GetManagedTransformsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleManagedTransforms:\n    fn::invoke:\n      function: cloudflare:getManagedTransforms\n      arguments:\n        zoneId: 9f1839b6152d298aca64c4e906b6d074\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getManagedTransforms.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getManagedTransforms.\n",
                "properties": {
                    "id": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    },
                    "managedRequestHeaders": {
                        "description": "The list of Managed Request Transforms.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getManagedTransformsManagedRequestHeader:getManagedTransformsManagedRequestHeader"
                        },
                        "type": "array"
                    },
                    "managedResponseHeaders": {
                        "description": "The list of Managed Response Transforms.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getManagedTransformsManagedResponseHeader:getManagedTransformsManagedResponseHeader"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "managedRequestHeaders",
                    "managedResponseHeaders"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMtlsCertificate:getMtlsCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMtlsCertificate = cloudflare.getMtlsCertificate({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    mtlsCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_mtls_certificate = cloudflare.get_mtls_certificate(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    mtls_certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMtlsCertificate = Cloudflare.Index.GetMtlsCertificate.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        MtlsCertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMtlsCertificate(ctx, \u0026cloudflare.LookupMtlsCertificateArgs{\n\t\t\tAccountId:         \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tMtlsCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMtlsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMtlsCertificate = CloudflareFunctions.getMtlsCertificate(GetMtlsCertificateArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .mtlsCertificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMtlsCertificate:\n    fn::invoke:\n      function: cloudflare:getMtlsCertificate\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        mtlsCertificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMtlsCertificate.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "mtlsCertificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "accountId",
                    "mtlsCertificateId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMtlsCertificate.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "ca": {
                        "description": "Indicates whether the certificate is a CA or leaf certificate.\n",
                        "type": "boolean"
                    },
                    "certificates": {
                        "description": "The uploaded root CA certificate.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "When the certificate expires.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "issuer": {
                        "description": "The certificate authority that issued the certificate.\n",
                        "type": "string"
                    },
                    "mtlsCertificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Optional unique name for the certificate. Only used for human readability.\n",
                        "type": "string"
                    },
                    "serialNumber": {
                        "description": "The certificate serial number.\n",
                        "type": "string"
                    },
                    "signature": {
                        "description": "The type of hash used for the certificate.\n",
                        "type": "string"
                    },
                    "uploadedOn": {
                        "description": "This is the time the certificate was uploaded.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "accountId",
                    "ca",
                    "certificates",
                    "expiresOn",
                    "id",
                    "issuer",
                    "mtlsCertificateId",
                    "name",
                    "serialNumber",
                    "signature",
                    "uploadedOn"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMtlsCertificateAssociations:getMtlsCertificateAssociations": {
            "description": "Accepted Permissions\n\n- `Account: SSL and Certificates Read`\n- `Account: SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMtlsCertificateAssociations = cloudflare.getMtlsCertificateAssociations({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    mtlsCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_mtls_certificate_associations = cloudflare.get_mtls_certificate_associations(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    mtls_certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMtlsCertificateAssociations = Cloudflare.Index.GetMtlsCertificateAssociations.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        MtlsCertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMtlsCertificateAssociations(ctx, \u0026cloudflare.GetMtlsCertificateAssociationsArgs{\n\t\t\tAccountId:         pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tMtlsCertificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMtlsCertificateAssociationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMtlsCertificateAssociations = CloudflareFunctions.getMtlsCertificateAssociations(GetMtlsCertificateAssociationsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .mtlsCertificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMtlsCertificateAssociations:\n    fn::invoke:\n      function: cloudflare:getMtlsCertificateAssociations\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        mtlsCertificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMtlsCertificateAssociations.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "mtlsCertificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "mtlsCertificateId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMtlsCertificateAssociations.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "mtlsCertificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "service": {
                        "description": "The service using the certificate.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Certificate deployment status for the given service.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "mtlsCertificateId",
                    "service",
                    "status",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getMtlsCertificates:getMtlsCertificates": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleMtlsCertificates = cloudflare.getMtlsCertificates({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_mtls_certificates = cloudflare.get_mtls_certificates(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleMtlsCertificates = Cloudflare.Index.GetMtlsCertificates.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetMtlsCertificates(ctx, \u0026cloudflare.LookupMtlsCertificatesArgs{\n\t\t\tAccountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetMtlsCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleMtlsCertificates = CloudflareFunctions.getMtlsCertificates(GetMtlsCertificatesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleMtlsCertificates:\n    fn::invoke:\n      function: cloudflare:getMtlsCertificates\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getMtlsCertificates.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object",
                "required": [
                    "accountId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getMtlsCertificates.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getMtlsCertificatesResult:getMtlsCertificatesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "accountId",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getNotificationPolicies:getNotificationPolicies": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Notifications Read`\n- `Notifications Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleNotificationPolicies = cloudflare.getNotificationPolicies({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_notification_policies = cloudflare.get_notification_policies(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleNotificationPolicies = Cloudflare.Index.GetNotificationPolicies.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetNotificationPolicies(ctx, \u0026cloudflare.LookupNotificationPoliciesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetNotificationPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleNotificationPolicies = CloudflareFunctions.getNotificationPolicies(GetNotificationPoliciesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleNotificationPolicies:\n    fn::invoke:\n      function: cloudflare:getNotificationPolicies\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getNotificationPolicies.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account id\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getNotificationPolicies.\n",
                "properties": {
                    "accountId": {
                        "description": "The account id\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getNotificationPoliciesResult:getNotificationPoliciesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getNotificationPolicy:getNotificationPolicy": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Notifications Read`\n- `Notifications Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleNotificationPolicy = cloudflare.getNotificationPolicy({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    policyId: \"0da2b59ef118439d8097bdfb215203c9\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_notification_policy = cloudflare.get_notification_policy(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    policy_id=\"0da2b59ef118439d8097bdfb215203c9\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleNotificationPolicy = Cloudflare.Index.GetNotificationPolicy.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PolicyId = \"0da2b59ef118439d8097bdfb215203c9\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetNotificationPolicy(ctx, \u0026cloudflare.LookupNotificationPolicyArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPolicyId:  \"0da2b59ef118439d8097bdfb215203c9\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetNotificationPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleNotificationPolicy = CloudflareFunctions.getNotificationPolicy(GetNotificationPolicyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .policyId(\"0da2b59ef118439d8097bdfb215203c9\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleNotificationPolicy:\n    fn::invoke:\n      function: cloudflare:getNotificationPolicy\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        policyId: 0da2b59ef118439d8097bdfb215203c9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getNotificationPolicy.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account id\n"
                    },
                    "policyId": {
                        "type": "string",
                        "description": "The unique identifier of a notification policy\n"
                    }
                },
                "type": "object",
                "required": [
                    "policyId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getNotificationPolicy.\n",
                "properties": {
                    "accountId": {
                        "description": "The account id\n",
                        "type": "string"
                    },
                    "alertInterval": {
                        "description": "Optional specification of how often to re-alert from the same incident, not support on all alert types.\n",
                        "type": "string"
                    },
                    "alertType": {
                        "description": "Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values.\nAvailable values: \"abuse*report*alert\", \"access*custom*certificate*expiration*type\", \"advanced*ddos*attack*l4*alert\", \"advanced*ddos*attack*l7*alert\", \"advanced*http*alert*error\", \"bgp*hijack*notification\", \"billing*usage*alert\", \"block*notification*block*removed\", \"block*notification*new*block\", \"block*notification*review*rejected\", \"bot*traffic*basic*alert\", \"brand*protection*alert\", \"brand*protection*digest\", \"clickhouse*alert*fw*anomaly\", \"clickhouse*alert*fw*ent*anomaly\", \"cloudforce*one*request*notification\", \"cni*maintenance*notification\", \"custom*analytics\", \"custom*bot*detection*alert\", \"custom*ssl*certificate*event*type\", \"dedicated*ssl*certificate*event*type\", \"device*connectivity*anomaly*alert\", \"dos*attack*l4\", \"dos*attack*l7\", \"expiring*service*token*alert\", \"failing*logpush*job*disabled*alert\", \"fbm*auto*advertisement\", \"fbm*dosd*attack\", \"fbm*volumetric*attack\", \"health*check*status*notification\", \"hostname*aop*custom*certificate*expiration*type\", \"http*alert*edge*error\", \"http*alert*origin*error\", \"image*notification\", \"image*resizing*notification\", \"incident*alert\", \"load*balancing*health*alert\", \"load*balancing*pool*enablement*alert\", \"logo*match*alert\", \"magic*tunnel*health*check*event\", \"magic*wan*tunnel*health\", \"maintenance*event*notification\", \"mtls*certificate*store*certificate*expiration*type\", \"pages*event*alert\", \"radar*notification\", \"real*origin*monitoring\", \"scriptmonitor*alert*new*code*change*detections\", \"scriptmonitor*alert*new*hosts\", \"scriptmonitor*alert*new*malicious*hosts\", \"scriptmonitor*alert*new*malicious*scripts\", \"scriptmonitor*alert*new*malicious*url\", \"scriptmonitor*alert*new*max*length*resource*url\", \"scriptmonitor*alert*new*resources\", \"secondary*dns*all*primaries*failing\", \"secondary*dns*primaries*failing\", \"secondary*dns*warning\", \"secondary*dns*zone*successfully*updated\", \"secondary*dns*zone*validation*warning\", \"security*insights*alert\", \"sentinel*alert\", \"stream*live*notifications\", \"synthetic*test*latency*alert\", \"synthetic*test*low*availability*alert\", \"traffic*anomalies*alert\", \"tunnel*health*event\", \"tunnel*update*event\", \"universal*ssl*event*type\", \"web*analytics*metrics*update\", \"zone*aop*custom*certificate*expiration*type\".\n",
                        "type": "string"
                    },
                    "created": {
                        "type": "string"
                    },
                    "description": {
                        "description": "Optional description for the Notification policy.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether or not the Notification policy is enabled.\n",
                        "type": "boolean"
                    },
                    "filters": {
                        "$ref": "#/types/cloudflare:index/getNotificationPolicyFilters:getNotificationPolicyFilters",
                        "description": "Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details.\n"
                    },
                    "id": {
                        "description": "The unique identifier of a notification policy\n",
                        "type": "string"
                    },
                    "mechanisms": {
                        "$ref": "#/types/cloudflare:index/getNotificationPolicyMechanisms:getNotificationPolicyMechanisms",
                        "description": "List of IDs that will be used when dispatching a notification. IDs for email type will be the email address.\n"
                    },
                    "modified": {
                        "type": "string"
                    },
                    "name": {
                        "description": "Name of the policy.\n",
                        "type": "string"
                    },
                    "policyId": {
                        "description": "The unique identifier of a notification policy\n",
                        "type": "string"
                    }
                },
                "required": [
                    "alertInterval",
                    "alertType",
                    "created",
                    "description",
                    "enabled",
                    "filters",
                    "id",
                    "mechanisms",
                    "modified",
                    "name",
                    "policyId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getNotificationPolicyWebhooks:getNotificationPolicyWebhooks": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Notifications Read`\n- `Notifications Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleNotificationPolicyWebhooks = cloudflare.getNotificationPolicyWebhooks({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    webhookId: \"b115d5ec15c641ee8b7692c449b5227b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_notification_policy_webhooks = cloudflare.get_notification_policy_webhooks(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    webhook_id=\"b115d5ec15c641ee8b7692c449b5227b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleNotificationPolicyWebhooks = Cloudflare.Index.GetNotificationPolicyWebhooks.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WebhookId = \"b115d5ec15c641ee8b7692c449b5227b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetNotificationPolicyWebhooks(ctx, \u0026cloudflare.LookupNotificationPolicyWebhooksArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWebhookId: \"b115d5ec15c641ee8b7692c449b5227b\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetNotificationPolicyWebhooksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleNotificationPolicyWebhooks = CloudflareFunctions.getNotificationPolicyWebhooks(GetNotificationPolicyWebhooksArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .webhookId(\"b115d5ec15c641ee8b7692c449b5227b\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleNotificationPolicyWebhooks:\n    fn::invoke:\n      function: cloudflare:getNotificationPolicyWebhooks\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        webhookId: b115d5ec15c641ee8b7692c449b5227b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getNotificationPolicyWebhooks.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account id\n"
                    },
                    "webhookId": {
                        "type": "string",
                        "description": "The unique identifier of a webhook\n"
                    }
                },
                "type": "object",
                "required": [
                    "webhookId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getNotificationPolicyWebhooks.\n",
                "properties": {
                    "accountId": {
                        "description": "The account id\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the webhook destination was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique identifier of a webhook\n",
                        "type": "string"
                    },
                    "lastFailure": {
                        "description": "Timestamp of the last time an attempt to dispatch a notification to this webhook failed.\n",
                        "type": "string"
                    },
                    "lastSuccess": {
                        "description": "Timestamp of the last time Cloudflare was able to successfully dispatch a notification using this webhook.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the webhook destination. This will be included in the request body when you receive a webhook notification.\n",
                        "type": "string"
                    },
                    "secret": {
                        "description": "Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "type": {
                        "description": "Type of webhook endpoint.\nAvailable values: \"datadog\", \"discord\", \"feishu\", \"gchat\", \"generic\", \"opsgenie\", \"slack\", \"splunk\".\n",
                        "type": "string"
                    },
                    "url": {
                        "description": "The POST endpoint to call when dispatching a notification.\n",
                        "type": "string"
                    },
                    "webhookId": {
                        "description": "The unique identifier of a webhook\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "id",
                    "lastFailure",
                    "lastSuccess",
                    "name",
                    "secret",
                    "type",
                    "url",
                    "webhookId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getNotificationPolicyWebhooksList:getNotificationPolicyWebhooksList": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Notifications Read`\n- `Notifications Write`\n- `Zero Trust: PII Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleNotificationPolicyWebhooksList = cloudflare.getNotificationPolicyWebhooksList({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_notification_policy_webhooks_list = cloudflare.get_notification_policy_webhooks_list(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleNotificationPolicyWebhooksList = Cloudflare.Index.GetNotificationPolicyWebhooksList.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetNotificationPolicyWebhooksList(ctx, \u0026cloudflare.LookupNotificationPolicyWebhooksListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetNotificationPolicyWebhooksListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleNotificationPolicyWebhooksList = CloudflareFunctions.getNotificationPolicyWebhooksList(GetNotificationPolicyWebhooksListArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleNotificationPolicyWebhooksList:\n    fn::invoke:\n      function: cloudflare:getNotificationPolicyWebhooksList\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getNotificationPolicyWebhooksList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account id\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getNotificationPolicyWebhooksList.\n",
                "properties": {
                    "accountId": {
                        "description": "The account id\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getNotificationPolicyWebhooksListResult:getNotificationPolicyWebhooksListResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getObservatoryScheduledTest:getObservatoryScheduledTest": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleObservatoryScheduledTest = cloudflare.getObservatoryScheduledTest({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    url: \"example.com\",\n    region: \"us-central1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_observatory_scheduled_test = cloudflare.get_observatory_scheduled_test(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    url=\"example.com\",\n    region=\"us-central1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleObservatoryScheduledTest = Cloudflare.Index.GetObservatoryScheduledTest.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Url = \"example.com\",\n        Region = \"us-central1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetObservatoryScheduledTest(ctx, \u0026cloudflare.LookupObservatoryScheduledTestArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tUrl:    \"example.com\",\n\t\t\tRegion: pulumi.StringRef(\"us-central1\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetObservatoryScheduledTestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleObservatoryScheduledTest = CloudflareFunctions.getObservatoryScheduledTest(GetObservatoryScheduledTestArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .url(\"example.com\")\n            .region(\"us-central1\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleObservatoryScheduledTest:\n    fn::invoke:\n      function: cloudflare:getObservatoryScheduledTest\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        url: example.com\n        region: us-central1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getObservatoryScheduledTest.\n",
                "properties": {
                    "region": {
                        "type": "string",
                        "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "A URL.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "url"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getObservatoryScheduledTest.\n",
                "properties": {
                    "frequency": {
                        "description": "The frequency of the test.\nAvailable values: \"DAILY\", \"WEEKLY\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "region": {
                        "description": "A test region.\nAvailable values: \"asia-east1\", \"asia-northeast1\", \"asia-northeast2\", \"asia-south1\", \"asia-southeast1\", \"australia-southeast1\", \"europe-north1\", \"europe-southwest1\", \"europe-west1\", \"europe-west2\", \"europe-west3\", \"europe-west4\", \"europe-west8\", \"europe-west9\", \"me-west1\", \"southamerica-east1\", \"us-central1\", \"us-east1\", \"us-east4\", \"us-south1\", \"us-west1\".\n",
                        "type": "string"
                    },
                    "url": {
                        "description": "A URL.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "frequency",
                    "region",
                    "url",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getOrganization:getOrganization": {
            "description": "Accepted Permissions\n\n- `User Details Read`\n- `User Details Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOrganization = cloudflare.getOrganization({\n    organizationId: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_organization = cloudflare.get_organization(organization_id=\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOrganization = Cloudflare.Index.GetOrganization.Invoke(new()\n    {\n        OrganizationId = \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetOrganization(ctx, \u0026cloudflare.LookupOrganizationArgs{\n\t\t\tOrganizationId: pulumi.StringRef(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetOrganizationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleOrganization = CloudflareFunctions.getOrganization(GetOrganizationArgs.builder()\n            .organizationId(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleOrganization:\n    fn::invoke:\n      function: cloudflare:getOrganization\n      arguments:\n        organizationId: a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getOrganization.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getOrganizationFilter:getOrganizationFilter"
                    },
                    "organizationId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getOrganization.\n",
                "properties": {
                    "createTime": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getOrganizationFilter:getOrganizationFilter"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "meta": {
                        "$ref": "#/types/cloudflare:index/getOrganizationMeta:getOrganizationMeta"
                    },
                    "name": {
                        "type": "string"
                    },
                    "organizationId": {
                        "type": "string"
                    },
                    "parent": {
                        "$ref": "#/types/cloudflare:index/getOrganizationParent:getOrganizationParent"
                    },
                    "profile": {
                        "$ref": "#/types/cloudflare:index/getOrganizationProfile:getOrganizationProfile"
                    }
                },
                "required": [
                    "createTime",
                    "id",
                    "meta",
                    "name",
                    "parent",
                    "profile"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getOrganizationProfile:getOrganizationProfile": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOrganizationProfile = cloudflare.getOrganizationProfile({\n    organizationId: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_organization_profile = cloudflare.get_organization_profile(organization_id=\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOrganizationProfile = Cloudflare.Index.GetOrganizationProfile.Invoke(new()\n    {\n        OrganizationId = \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetOrganizationProfile(ctx, \u0026cloudflare.LookupOrganizationProfileArgs{\n\t\t\tOrganizationId: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetOrganizationProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleOrganizationProfile = CloudflareFunctions.getOrganizationProfile(GetOrganizationProfileArgs.builder()\n            .organizationId(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleOrganizationProfile:\n    fn::invoke:\n      function: cloudflare:getOrganizationProfile\n      arguments:\n        organizationId: a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getOrganizationProfile.\n",
                "properties": {
                    "organizationId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "organizationId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getOrganizationProfile.\n",
                "properties": {
                    "businessAddress": {
                        "type": "string"
                    },
                    "businessEmail": {
                        "type": "string"
                    },
                    "businessName": {
                        "type": "string"
                    },
                    "businessPhone": {
                        "type": "string"
                    },
                    "externalMetadata": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "organizationId": {
                        "type": "string"
                    }
                },
                "required": [
                    "businessAddress",
                    "businessEmail",
                    "businessName",
                    "businessPhone",
                    "externalMetadata",
                    "organizationId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getOrganizations:getOrganizations": {
            "description": "Accepted Permissions\n\n- `User Details Read`\n- `User Details Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOrganizations = cloudflare.getOrganizations({\n    ids: [\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\"],\n    containing: {\n        account: \"account\",\n        organization: \"organization\",\n        user: \"user\",\n    },\n    name: {\n        contains: \"contains\",\n        endsWith: \"endsWith\",\n        startsWith: \"startsWith\",\n    },\n    pageSize: 0,\n    pageToken: \"page_token\",\n    parent: {\n        id: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_organizations = cloudflare.get_organizations(ids=[\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\"],\n    containing={\n        \"account\": \"account\",\n        \"organization\": \"organization\",\n        \"user\": \"user\",\n    },\n    name={\n        \"contains\": \"contains\",\n        \"ends_with\": \"endsWith\",\n        \"starts_with\": \"startsWith\",\n    },\n    page_size=0,\n    page_token=\"page_token\",\n    parent={\n        \"id\": \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOrganizations = Cloudflare.Index.GetOrganizations.Invoke(new()\n    {\n        Ids = new[]\n        {\n            \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n        },\n        Containing = new Cloudflare.Inputs.GetOrganizationsContainingInputArgs\n        {\n            Account = \"account\",\n            Organization = \"organization\",\n            User = \"user\",\n        },\n        Name = new Cloudflare.Inputs.GetOrganizationsNameInputArgs\n        {\n            Contains = \"contains\",\n            EndsWith = \"endsWith\",\n            StartsWith = \"startsWith\",\n        },\n        PageSize = 0,\n        PageToken = \"page_token\",\n        Parent = new Cloudflare.Inputs.GetOrganizationsParentInputArgs\n        {\n            Id = \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetOrganizations(ctx, \u0026cloudflare.LookupOrganizationsArgs{\n\t\t\tIds: []string{\n\t\t\t\t\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n\t\t\t},\n\t\t\tContaining: cloudflare.GetOrganizationsContaining{\n\t\t\t\tAccount:      pulumi.StringRef(\"account\"),\n\t\t\t\tOrganization: pulumi.StringRef(\"organization\"),\n\t\t\t\tUser:         pulumi.StringRef(\"user\"),\n\t\t\t},\n\t\t\tName: cloudflare.GetOrganizationsName{\n\t\t\t\tContains:   pulumi.StringRef(\"contains\"),\n\t\t\t\tEndsWith:   pulumi.StringRef(\"endsWith\"),\n\t\t\t\tStartsWith: pulumi.StringRef(\"startsWith\"),\n\t\t\t},\n\t\t\tPageSize:  pulumi.IntRef(0),\n\t\t\tPageToken: pulumi.StringRef(\"page_token\"),\n\t\t\tParent: cloudflare.GetOrganizationsParent{\n\t\t\t\tId: \"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetOrganizationsArgs;\nimport com.pulumi.cloudflare.inputs.GetOrganizationsContainingArgs;\nimport com.pulumi.cloudflare.inputs.GetOrganizationsNameArgs;\nimport com.pulumi.cloudflare.inputs.GetOrganizationsParentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleOrganizations = CloudflareFunctions.getOrganizations(GetOrganizationsArgs.builder()\n            .ids(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n            .containing(GetOrganizationsContainingArgs.builder()\n                .account(\"account\")\n                .organization(\"organization\")\n                .user(\"user\")\n                .build())\n            .name(GetOrganizationsNameArgs.builder()\n                .contains(\"contains\")\n                .endsWith(\"endsWith\")\n                .startsWith(\"startsWith\")\n                .build())\n            .pageSize(0)\n            .pageToken(\"page_token\")\n            .parent(GetOrganizationsParentArgs.builder()\n                .id(\"a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleOrganizations:\n    fn::invoke:\n      function: cloudflare:getOrganizations\n      arguments:\n        ids:\n          - a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\n        containing:\n          account: account\n          organization: organization\n          user: user\n        name:\n          contains: contains\n          endsWith: endsWith\n          startsWith: startsWith\n        pageSize: 0\n        pageToken: page_token\n        parent:\n          id: a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getOrganizations.\n",
                "properties": {
                    "containing": {
                        "$ref": "#/types/cloudflare:index/getOrganizationsContaining:getOrganizationsContaining"
                    },
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Only return organizations with the specified IDs (ex. id=foo\u0026id=bar). Send multiple elements\nby repeating the query value.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "$ref": "#/types/cloudflare:index/getOrganizationsName:getOrganizationsName"
                    },
                    "pageSize": {
                        "type": "integer",
                        "description": "The amount of items to return. Defaults to 10.\n"
                    },
                    "pageToken": {
                        "type": "string",
                        "description": "An opaque token returned from the last list response that when\nprovided will retrieve the next page.\n"
                    },
                    "parent": {
                        "$ref": "#/types/cloudflare:index/getOrganizationsParent:getOrganizationsParent"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getOrganizations.\n",
                "properties": {
                    "containing": {
                        "$ref": "#/types/cloudflare:index/getOrganizationsContaining:getOrganizationsContaining"
                    },
                    "ids": {
                        "description": "Only return organizations with the specified IDs (ex. id=foo\u0026id=bar). Send multiple elements\nby repeating the query value.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "$ref": "#/types/cloudflare:index/getOrganizationsName:getOrganizationsName"
                    },
                    "pageSize": {
                        "description": "The amount of items to return. Defaults to 10.\n",
                        "type": "integer"
                    },
                    "pageToken": {
                        "description": "An opaque token returned from the last list response that when\nprovided will retrieve the next page.\n",
                        "type": "string"
                    },
                    "parent": {
                        "$ref": "#/types/cloudflare:index/getOrganizationsParent:getOrganizationsParent"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getOrganizationsResult:getOrganizationsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getOriginCaCertificate:getOriginCaCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOriginCaCertificate = cloudflare.getOriginCaCertificate({\n    certificateId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_origin_ca_certificate = cloudflare.get_origin_ca_certificate(certificate_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOriginCaCertificate = Cloudflare.Index.GetOriginCaCertificate.Invoke(new()\n    {\n        CertificateId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetOriginCaCertificate(ctx, \u0026cloudflare.LookupOriginCaCertificateArgs{\n\t\t\tCertificateId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetOriginCaCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleOriginCaCertificate = CloudflareFunctions.getOriginCaCertificate(GetOriginCaCertificateArgs.builder()\n            .certificateId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleOriginCaCertificate:\n    fn::invoke:\n      function: cloudflare:getOriginCaCertificate\n      arguments:\n        certificateId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getOriginCaCertificate.\n",
                "properties": {
                    "certificateId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getOriginCaCertificateFilter:getOriginCaCertificateFilter"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getOriginCaCertificate.\n",
                "properties": {
                    "certificate": {
                        "description": "The Origin CA certificate. Will be newline-encoded.\n",
                        "type": "string"
                    },
                    "certificateId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "csr": {
                        "description": "The Certificate Signing Request (CSR). Must be newline-encoded.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "description": "When the certificate will expire.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getOriginCaCertificateFilter:getOriginCaCertificateFilter"
                    },
                    "hostnames": {
                        "description": "Array of hostnames or wildcard names bound to the certificate.\nHostnames must be fully qualified domain names (FQDNs) belonging to zones on your account (e.g., `example.com` or `sub.example.com`). Wildcards are supported only as a `*.` prefix for a single level (e.g., `*.example.com`). Double wildcards (`*.*.example.com`) and interior wildcards (`foo.*.example.com`) are not allowed. The wildcard suffix must be a multi-label domain (`*.example.com` is valid, but `*.com` is not). Unicode/IDN hostnames are accepted and automatically converted to punycode.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "requestType": {
                        "description": "Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).\nAvailable values: \"origin-rsa\", \"origin-ecc\", \"keyless-certificate\".\n",
                        "type": "string"
                    },
                    "requestedValidity": {
                        "description": "The number of days for which the certificate should be valid.\nAvailable values: 7, 30, 90, 365, 730, 1095, 5475.\n",
                        "type": "number"
                    }
                },
                "required": [
                    "certificate",
                    "csr",
                    "expiresOn",
                    "hostnames",
                    "id",
                    "requestType",
                    "requestedValidity"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getOriginCaCertificates:getOriginCaCertificates": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleOriginCaCertificates = cloudflare.getOriginCaCertificates({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    limit: 10,\n    offset: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_origin_ca_certificates = cloudflare.get_origin_ca_certificates(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    limit=10,\n    offset=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleOriginCaCertificates = Cloudflare.Index.GetOriginCaCertificates.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Limit = 10,\n        Offset = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetOriginCaCertificates(ctx, \u0026cloudflare.LookupOriginCaCertificatesArgs{\n\t\t\tZoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t\tOffset: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetOriginCaCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleOriginCaCertificates = CloudflareFunctions.getOriginCaCertificates(GetOriginCaCertificatesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .limit(10)\n            .offset(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleOriginCaCertificates:\n    fn::invoke:\n      function: cloudflare:getOriginCaCertificates\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        limit: 10\n        offset: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getOriginCaCertificates.\n",
                "properties": {
                    "limit": {
                        "type": "integer",
                        "description": "Limit to the number of records returned.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "offset": {
                        "type": "integer",
                        "description": "Offset the results\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getOriginCaCertificates.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "limit": {
                        "description": "Limit to the number of records returned.\n",
                        "type": "integer"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "offset": {
                        "description": "Offset the results\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getOriginCaCertificatesResult:getOriginCaCertificatesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageRule:getPageRule": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageRule = cloudflare.getPageRule({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    pageruleId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_rule = cloudflare.get_page_rule(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    pagerule_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageRule = Cloudflare.Index.GetPageRule.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PageruleId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageRule(ctx, \u0026cloudflare.LookupPageRuleArgs{\n\t\t\tZoneId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPageruleId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageRule = CloudflareFunctions.getPageRule(GetPageRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .pageruleId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageRule:\n    fn::invoke:\n      function: cloudflare:getPageRule\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        pageruleId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageRule.\n",
                "properties": {
                    "pageruleId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "pageruleId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPageRule.\n",
                "properties": {
                    "createdOn": {
                        "description": "The timestamp of when the Page Rule was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "The timestamp of when the Page Rule was last modified.\n",
                        "type": "string"
                    },
                    "pageruleId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "priority": {
                        "description": "The priority of the rule, used to define which Page Rule is processed\nover another. A higher number indicates a higher priority. For example,\nif you have a catch-all Page Rule (rule A: `/images/*`) but want a more\nspecific Page Rule to take precedence (rule B: `/images/special/*`),\nspecify a higher priority for rule B so it overrides rule A.\n",
                        "type": "integer"
                    },
                    "status": {
                        "description": "The status of the Page Rule.\nAvailable values: \"active\", \"disabled\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "id",
                    "modifiedOn",
                    "pageruleId",
                    "priority",
                    "status"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldConnections:getPageShieldConnections": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldConnections = cloudflare.getPageShieldConnections({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    connectionId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_connections = cloudflare.get_page_shield_connections(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    connection_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldConnections = Cloudflare.Index.GetPageShieldConnections.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ConnectionId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldConnections(ctx, \u0026cloudflare.GetPageShieldConnectionsArgs{\n\t\t\tZoneId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConnectionId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldConnectionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldConnections = CloudflareFunctions.getPageShieldConnections(GetPageShieldConnectionsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .connectionId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldConnections:\n    fn::invoke:\n      function: cloudflare:getPageShieldConnections\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        connectionId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldConnections.\n",
                "properties": {
                    "connectionId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "connectionId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldConnections.\n",
                "properties": {
                    "addedAt": {
                        "type": "string"
                    },
                    "connectionId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "domainReportedMalicious": {
                        "type": "boolean"
                    },
                    "firstPageUrl": {
                        "type": "string"
                    },
                    "firstSeenAt": {
                        "type": "string"
                    },
                    "host": {
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "lastSeenAt": {
                        "type": "string"
                    },
                    "maliciousDomainCategories": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "maliciousUrlCategories": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "pageUrls": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "url": {
                        "type": "string"
                    },
                    "urlContainsCdnCgiPath": {
                        "type": "boolean"
                    },
                    "urlReportedMalicious": {
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "addedAt",
                    "connectionId",
                    "domainReportedMalicious",
                    "firstPageUrl",
                    "firstSeenAt",
                    "host",
                    "id",
                    "lastSeenAt",
                    "maliciousDomainCategories",
                    "maliciousUrlCategories",
                    "pageUrls",
                    "url",
                    "urlContainsCdnCgiPath",
                    "urlReportedMalicious"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldConnectionsList:getPageShieldConnectionsList": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldConnectionsList = cloudflare.getPageShieldConnectionsList({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    excludeCdnCgi: true,\n    excludeUrls: \"blog.cloudflare.com,www.example\",\n    \"export\": \"csv\",\n    hosts: \"blog.cloudflare.com,www.example*,*cloudflare.com\",\n    orderBy: \"first_seen_at\",\n    page: \"2\",\n    pageUrl: \"example.com/page,*/checkout,example.com/*,*checkout*\",\n    perPage: 100,\n    prioritizeMalicious: true,\n    status: \"active,inactive\",\n    urls: \"blog.cloudflare.com,www.example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_connections_list = cloudflare.get_page_shield_connections_list(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    exclude_cdn_cgi=True,\n    exclude_urls=\"blog.cloudflare.com,www.example\",\n    export=\"csv\",\n    hosts=\"blog.cloudflare.com,www.example*,*cloudflare.com\",\n    order_by=\"first_seen_at\",\n    page=\"2\",\n    page_url=\"example.com/page,*/checkout,example.com/*,*checkout*\",\n    per_page=100,\n    prioritize_malicious=True,\n    status=\"active,inactive\",\n    urls=\"blog.cloudflare.com,www.example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldConnectionsList = Cloudflare.Index.GetPageShieldConnectionsList.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        ExcludeCdnCgi = true,\n        ExcludeUrls = \"blog.cloudflare.com,www.example\",\n        Export = \"csv\",\n        Hosts = \"blog.cloudflare.com,www.example*,*cloudflare.com\",\n        OrderBy = \"first_seen_at\",\n        Page = \"2\",\n        PageUrl = \"example.com/page,*/checkout,example.com/*,*checkout*\",\n        PerPage = 100,\n        PrioritizeMalicious = true,\n        Status = \"active,inactive\",\n        Urls = \"blog.cloudflare.com,www.example\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldConnectionsList(ctx, \u0026cloudflare.LookupPageShieldConnectionsListArgs{\n\t\t\tZoneId:              pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection:           pulumi.StringRef(\"asc\"),\n\t\t\tExcludeCdnCgi:       pulumi.BoolRef(true),\n\t\t\tExcludeUrls:         pulumi.StringRef(\"blog.cloudflare.com,www.example\"),\n\t\t\tExport:              pulumi.StringRef(\"csv\"),\n\t\t\tHosts:               pulumi.StringRef(\"blog.cloudflare.com,www.example*,*cloudflare.com\"),\n\t\t\tOrderBy:             pulumi.StringRef(\"first_seen_at\"),\n\t\t\tPage:                pulumi.StringRef(\"2\"),\n\t\t\tPageUrl:             pulumi.StringRef(\"example.com/page,*/checkout,example.com/*,*checkout*\"),\n\t\t\tPerPage:             pulumi.Float64Ref(100),\n\t\t\tPrioritizeMalicious: pulumi.BoolRef(true),\n\t\t\tStatus:              pulumi.StringRef(\"active,inactive\"),\n\t\t\tUrls:                pulumi.StringRef(\"blog.cloudflare.com,www.example\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldConnectionsListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldConnectionsList = CloudflareFunctions.getPageShieldConnectionsList(GetPageShieldConnectionsListArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .excludeCdnCgi(true)\n            .excludeUrls(\"blog.cloudflare.com,www.example\")\n            .export(\"csv\")\n            .hosts(\"blog.cloudflare.com,www.example*,*cloudflare.com\")\n            .orderBy(\"first_seen_at\")\n            .page(\"2\")\n            .pageUrl(\"example.com/page,*/checkout,example.com/*,*checkout*\")\n            .perPage(100)\n            .prioritizeMalicious(true)\n            .status(\"active,inactive\")\n            .urls(\"blog.cloudflare.com,www.example\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldConnectionsList:\n    fn::invoke:\n      function: cloudflare:getPageShieldConnectionsList\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        excludeCdnCgi: true\n        excludeUrls: blog.cloudflare.com,www.example\n        export: csv\n        hosts: blog.cloudflare.com,www.example*,*cloudflare.com\n        orderBy: first_seen_at\n        page: '2'\n        pageUrl: example.com/page,*/checkout,example.com/*,*checkout*\n        perPage: 100\n        prioritizeMalicious: true\n        status: active,inactive\n        urls: blog.cloudflare.com,www.example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldConnectionsList.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "The direction used to sort returned connections.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "excludeCdnCgi": {
                        "type": "boolean",
                        "description": "When true, excludes connections seen in a `/cdn-cgi` path from the returned connections. The default value is true.\n"
                    },
                    "excludeUrls": {
                        "type": "string",
                        "description": "Excludes connections whose URL contains one of the URL-encoded URLs separated by commas.\n"
                    },
                    "export": {
                        "type": "string",
                        "description": "Export the list of connections as a file, limited to 50000 entries.\nAvailable values: \"csv\".\n"
                    },
                    "hosts": {
                        "type": "string",
                        "description": "Includes connections that match one or more URL-encoded hostnames separated by commas.\n"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "orderBy": {
                        "type": "string"
                    },
                    "page": {
                        "type": "string"
                    },
                    "pageUrl": {
                        "type": "string"
                    },
                    "perPage": {
                        "type": "number"
                    },
                    "prioritizeMalicious": {
                        "type": "boolean"
                    },
                    "status": {
                        "type": "string"
                    },
                    "urls": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldConnectionsList.\n",
                "properties": {
                    "direction": {
                        "description": "The direction used to sort returned connections.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "excludeCdnCgi": {
                        "description": "When true, excludes connections seen in a `/cdn-cgi` path from the returned connections. The default value is true.\n",
                        "type": "boolean"
                    },
                    "excludeUrls": {
                        "description": "Excludes connections whose URL contains one of the URL-encoded URLs separated by commas.\n",
                        "type": "string"
                    },
                    "export": {
                        "description": "Export the list of connections as a file, limited to 50000 entries.\nAvailable values: \"csv\".\n",
                        "type": "string"
                    },
                    "hosts": {
                        "description": "Includes connections that match one or more URL-encoded hostnames separated by commas.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "orderBy": {
                        "type": "string"
                    },
                    "page": {
                        "type": "string"
                    },
                    "pageUrl": {
                        "type": "string"
                    },
                    "perPage": {
                        "type": "number"
                    },
                    "prioritizeMalicious": {
                        "type": "boolean"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPageShieldConnectionsListResult:getPageShieldConnectionsListResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "type": "string"
                    },
                    "urls": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldCookies:getPageShieldCookies": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldCookies = cloudflare.getPageShieldCookies({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    cookieId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_cookies = cloudflare.get_page_shield_cookies(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    cookie_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldCookies = Cloudflare.Index.GetPageShieldCookies.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CookieId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldCookies(ctx, \u0026cloudflare.GetPageShieldCookiesArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCookieId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldCookiesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldCookies = CloudflareFunctions.getPageShieldCookies(GetPageShieldCookiesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .cookieId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldCookies:\n    fn::invoke:\n      function: cloudflare:getPageShieldCookies\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        cookieId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldCookies.\n",
                "properties": {
                    "cookieId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "cookieId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldCookies.\n",
                "properties": {
                    "cookieId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "domainAttribute": {
                        "type": "string"
                    },
                    "expiresAttribute": {
                        "type": "string"
                    },
                    "firstSeenAt": {
                        "type": "string"
                    },
                    "host": {
                        "type": "string"
                    },
                    "httpOnlyAttribute": {
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "lastSeenAt": {
                        "type": "string"
                    },
                    "maxAgeAttribute": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pageUrls": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "pathAttribute": {
                        "type": "string"
                    },
                    "sameSiteAttribute": {
                        "description": "Available values: \"lax\", \"strict\", \"none\".\n",
                        "type": "string"
                    },
                    "secureAttribute": {
                        "type": "boolean"
                    },
                    "type": {
                        "description": "Available values: \u003cspan pulumi-lang-nodejs=\"\"firstParty\"\" pulumi-lang-dotnet=\"\"FirstParty\"\" pulumi-lang-go=\"\"firstParty\"\" pulumi-lang-python=\"\"first_party\"\" pulumi-lang-yaml=\"\"firstParty\"\" pulumi-lang-java=\"\"firstParty\"\"\u003e\"firstParty\"\u003c/span\u003e, \"unknown\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "cookieId",
                    "domainAttribute",
                    "expiresAttribute",
                    "firstSeenAt",
                    "host",
                    "httpOnlyAttribute",
                    "id",
                    "lastSeenAt",
                    "maxAgeAttribute",
                    "name",
                    "pageUrls",
                    "pathAttribute",
                    "sameSiteAttribute",
                    "secureAttribute",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldCookiesList:getPageShieldCookiesList": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldCookiesList = cloudflare.getPageShieldCookiesList({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    domain: \"example.com\",\n    \"export\": \"csv\",\n    hosts: \"blog.cloudflare.com,www.example*,*cloudflare.com\",\n    httpOnly: true,\n    name: \"session_id\",\n    orderBy: \"first_seen_at\",\n    page: \"2\",\n    pageUrl: \"example.com/page,*/checkout,example.com/*,*checkout*\",\n    path: \"/\",\n    perPage: 100,\n    sameSite: \"strict\",\n    secure: true,\n    type: \"first_party\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_cookies_list = cloudflare.get_page_shield_cookies_list(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    domain=\"example.com\",\n    export=\"csv\",\n    hosts=\"blog.cloudflare.com,www.example*,*cloudflare.com\",\n    http_only=True,\n    name=\"session_id\",\n    order_by=\"first_seen_at\",\n    page=\"2\",\n    page_url=\"example.com/page,*/checkout,example.com/*,*checkout*\",\n    path=\"/\",\n    per_page=100,\n    same_site=\"strict\",\n    secure=True,\n    type=\"first_party\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldCookiesList = Cloudflare.Index.GetPageShieldCookiesList.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        Domain = \"example.com\",\n        Export = \"csv\",\n        Hosts = \"blog.cloudflare.com,www.example*,*cloudflare.com\",\n        HttpOnly = true,\n        Name = \"session_id\",\n        OrderBy = \"first_seen_at\",\n        Page = \"2\",\n        PageUrl = \"example.com/page,*/checkout,example.com/*,*checkout*\",\n        Path = \"/\",\n        PerPage = 100,\n        SameSite = \"strict\",\n        Secure = true,\n        Type = \"first_party\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldCookiesList(ctx, \u0026cloudflare.LookupPageShieldCookiesListArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection: pulumi.StringRef(\"asc\"),\n\t\t\tDomain:    pulumi.StringRef(\"example.com\"),\n\t\t\tExport:    pulumi.StringRef(\"csv\"),\n\t\t\tHosts:     pulumi.StringRef(\"blog.cloudflare.com,www.example*,*cloudflare.com\"),\n\t\t\tHttpOnly:  pulumi.BoolRef(true),\n\t\t\tName:      pulumi.StringRef(\"session_id\"),\n\t\t\tOrderBy:   pulumi.StringRef(\"first_seen_at\"),\n\t\t\tPage:      pulumi.StringRef(\"2\"),\n\t\t\tPageUrl:   pulumi.StringRef(\"example.com/page,*/checkout,example.com/*,*checkout*\"),\n\t\t\tPath:      pulumi.StringRef(\"/\"),\n\t\t\tPerPage:   pulumi.Float64Ref(100),\n\t\t\tSameSite:  pulumi.StringRef(\"strict\"),\n\t\t\tSecure:    pulumi.BoolRef(true),\n\t\t\tType:      pulumi.StringRef(\"first_party\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldCookiesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldCookiesList = CloudflareFunctions.getPageShieldCookiesList(GetPageShieldCookiesListArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .domain(\"example.com\")\n            .export(\"csv\")\n            .hosts(\"blog.cloudflare.com,www.example*,*cloudflare.com\")\n            .httpOnly(true)\n            .name(\"session_id\")\n            .orderBy(\"first_seen_at\")\n            .page(\"2\")\n            .pageUrl(\"example.com/page,*/checkout,example.com/*,*checkout*\")\n            .path(\"/\")\n            .perPage(100)\n            .sameSite(\"strict\")\n            .secure(true)\n            .type(\"first_party\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldCookiesList:\n    fn::invoke:\n      function: cloudflare:getPageShieldCookiesList\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        domain: example.com\n        export: csv\n        hosts: blog.cloudflare.com,www.example*,*cloudflare.com\n        httpOnly: true\n        name: session_id\n        orderBy: first_seen_at\n        page: '2'\n        pageUrl: example.com/page,*/checkout,example.com/*,*checkout*\n        path: /\n        perPage: 100\n        sameSite: strict\n        secure: true\n        type: first_party\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldCookiesList.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "The direction used to sort returned cookies.'\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "Filters the returned cookies that match the specified domain attribute\n"
                    },
                    "export": {
                        "type": "string",
                        "description": "Export the list of cookies as a file, limited to 50000 entries.\nAvailable values: \"csv\".\n"
                    },
                    "hosts": {
                        "type": "string",
                        "description": "Includes cookies that match one or more URL-encoded hostnames separated by commas.\n"
                    },
                    "httpOnly": {
                        "type": "boolean"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "orderBy": {
                        "type": "string"
                    },
                    "page": {
                        "type": "string"
                    },
                    "pageUrl": {
                        "type": "string"
                    },
                    "path": {
                        "type": "string"
                    },
                    "perPage": {
                        "type": "number"
                    },
                    "sameSite": {
                        "type": "string"
                    },
                    "secure": {
                        "type": "boolean"
                    },
                    "type": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldCookiesList.\n",
                "properties": {
                    "direction": {
                        "description": "The direction used to sort returned cookies.'\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "domain": {
                        "description": "Filters the returned cookies that match the specified domain attribute\n",
                        "type": "string"
                    },
                    "export": {
                        "description": "Export the list of cookies as a file, limited to 50000 entries.\nAvailable values: \"csv\".\n",
                        "type": "string"
                    },
                    "hosts": {
                        "description": "Includes cookies that match one or more URL-encoded hostnames separated by commas.\n",
                        "type": "string"
                    },
                    "httpOnly": {
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "orderBy": {
                        "type": "string"
                    },
                    "page": {
                        "type": "string"
                    },
                    "pageUrl": {
                        "type": "string"
                    },
                    "path": {
                        "type": "string"
                    },
                    "perPage": {
                        "type": "number"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPageShieldCookiesListResult:getPageShieldCookiesListResult"
                        },
                        "type": "array"
                    },
                    "sameSite": {
                        "type": "string"
                    },
                    "secure": {
                        "type": "boolean"
                    },
                    "type": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldPolicies:getPageShieldPolicies": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldPolicies = cloudflare.getPageShieldPolicies({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_policies = cloudflare.get_page_shield_policies(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldPolicies = Cloudflare.Index.GetPageShieldPolicies.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldPolicies(ctx, \u0026cloudflare.LookupPageShieldPoliciesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldPolicies = CloudflareFunctions.getPageShieldPolicies(GetPageShieldPoliciesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldPolicies:\n    fn::invoke:\n      function: cloudflare:getPageShieldPolicies\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldPolicies.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldPolicies.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPageShieldPoliciesResult:getPageShieldPoliciesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldPolicy:getPageShieldPolicy": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldPolicy = cloudflare.getPageShieldPolicy({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    policyId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_policy = cloudflare.get_page_shield_policy(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    policy_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldPolicy = Cloudflare.Index.GetPageShieldPolicy.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PolicyId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldPolicy(ctx, \u0026cloudflare.LookupPageShieldPolicyArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPolicyId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldPolicy = CloudflareFunctions.getPageShieldPolicy(GetPageShieldPolicyArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .policyId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldPolicy:\n    fn::invoke:\n      function: cloudflare:getPageShieldPolicy\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        policyId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldPolicy.\n",
                "properties": {
                    "policyId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "policyId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldPolicy.\n",
                "properties": {
                    "action": {
                        "description": "The action to take if the expression matches\nAvailable values: \"allow\", \"log\", \"add*reporting*directives\".\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "A description for the policy\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether the policy is enabled\n",
                        "type": "boolean"
                    },
                    "expression": {
                        "description": "The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "policyId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "The policy which will be applied\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "action",
                    "description",
                    "enabled",
                    "expression",
                    "id",
                    "policyId",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldScripts:getPageShieldScripts": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldScripts = cloudflare.getPageShieldScripts({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_scripts = cloudflare.get_page_shield_scripts(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldScripts = Cloudflare.Index.GetPageShieldScripts.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldScripts(ctx, \u0026cloudflare.GetPageShieldScriptsArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldScriptsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldScripts = CloudflareFunctions.getPageShieldScripts(GetPageShieldScriptsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldScripts:\n    fn::invoke:\n      function: cloudflare:getPageShieldScripts\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        scriptId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldScripts.\n",
                "properties": {
                    "scriptId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "scriptId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldScripts.\n",
                "properties": {
                    "addedAt": {
                        "type": "string"
                    },
                    "cryptominingScore": {
                        "description": "The cryptomining score of the JavaScript content.\n",
                        "type": "integer"
                    },
                    "dataflowScore": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "The dataflow score of the JavaScript content. This field has been deprecated in favour of js*integrity*score.\n",
                        "type": "integer"
                    },
                    "domainReportedMalicious": {
                        "type": "boolean"
                    },
                    "fetchedAt": {
                        "description": "The timestamp of when the script was last fetched.\n",
                        "type": "string"
                    },
                    "firstPageUrl": {
                        "type": "string"
                    },
                    "firstSeenAt": {
                        "type": "string"
                    },
                    "hash": {
                        "description": "The computed hash of the analyzed script.\n",
                        "type": "string"
                    },
                    "host": {
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "jsIntegrityScore": {
                        "description": "The integrity score of the JavaScript content.\n",
                        "type": "integer"
                    },
                    "lastSeenAt": {
                        "type": "string"
                    },
                    "magecartScore": {
                        "description": "The magecart score of the JavaScript content.\n",
                        "type": "integer"
                    },
                    "maliciousDomainCategories": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "maliciousUrlCategories": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "malwareScore": {
                        "description": "The malware score of the JavaScript content.\n",
                        "type": "integer"
                    },
                    "obfuscationScore": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "The obfuscation score of the JavaScript content. This field has been deprecated in favour of js*integrity*score.\n",
                        "type": "integer"
                    },
                    "pageUrls": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "scriptId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "url": {
                        "type": "string"
                    },
                    "urlContainsCdnCgiPath": {
                        "type": "boolean"
                    },
                    "urlReportedMalicious": {
                        "type": "boolean"
                    },
                    "versions": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPageShieldScriptsVersion:getPageShieldScriptsVersion"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "addedAt",
                    "cryptominingScore",
                    "dataflowScore",
                    "domainReportedMalicious",
                    "fetchedAt",
                    "firstPageUrl",
                    "firstSeenAt",
                    "hash",
                    "host",
                    "id",
                    "jsIntegrityScore",
                    "lastSeenAt",
                    "magecartScore",
                    "maliciousDomainCategories",
                    "maliciousUrlCategories",
                    "malwareScore",
                    "obfuscationScore",
                    "pageUrls",
                    "scriptId",
                    "url",
                    "urlContainsCdnCgiPath",
                    "urlReportedMalicious",
                    "versions"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPageShieldScriptsList:getPageShieldScriptsList": {
            "description": "Accepted Permissions\n\n- `Domain Page Shield`\n- `Domain Page Shield Read`\n- `Page Shield`\n- `Page Shield Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePageShieldScriptsList = cloudflare.getPageShieldScriptsList({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    excludeUrls: \"blog.cloudflare.com,www.example\",\n    \"export\": \"csv\",\n    hosts: \"blog.cloudflare.com,www.example*,*cloudflare.com\",\n    orderBy: \"first_seen_at\",\n    page: \"2\",\n    pageUrl: \"example.com/page,*/checkout,example.com/*,*checkout*\",\n    perPage: 100,\n    prioritizeMalicious: true,\n    status: \"active,inactive\",\n    urls: \"blog.cloudflare.com,www.example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_page_shield_scripts_list = cloudflare.get_page_shield_scripts_list(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    exclude_urls=\"blog.cloudflare.com,www.example\",\n    export=\"csv\",\n    hosts=\"blog.cloudflare.com,www.example*,*cloudflare.com\",\n    order_by=\"first_seen_at\",\n    page=\"2\",\n    page_url=\"example.com/page,*/checkout,example.com/*,*checkout*\",\n    per_page=100,\n    prioritize_malicious=True,\n    status=\"active,inactive\",\n    urls=\"blog.cloudflare.com,www.example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePageShieldScriptsList = Cloudflare.Index.GetPageShieldScriptsList.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        ExcludeUrls = \"blog.cloudflare.com,www.example\",\n        Export = \"csv\",\n        Hosts = \"blog.cloudflare.com,www.example*,*cloudflare.com\",\n        OrderBy = \"first_seen_at\",\n        Page = \"2\",\n        PageUrl = \"example.com/page,*/checkout,example.com/*,*checkout*\",\n        PerPage = 100,\n        PrioritizeMalicious = true,\n        Status = \"active,inactive\",\n        Urls = \"blog.cloudflare.com,www.example\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPageShieldScriptsList(ctx, \u0026cloudflare.LookupPageShieldScriptsListArgs{\n\t\t\tZoneId:              pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection:           pulumi.StringRef(\"asc\"),\n\t\t\tExcludeUrls:         pulumi.StringRef(\"blog.cloudflare.com,www.example\"),\n\t\t\tExport:              pulumi.StringRef(\"csv\"),\n\t\t\tHosts:               pulumi.StringRef(\"blog.cloudflare.com,www.example*,*cloudflare.com\"),\n\t\t\tOrderBy:             pulumi.StringRef(\"first_seen_at\"),\n\t\t\tPage:                pulumi.StringRef(\"2\"),\n\t\t\tPageUrl:             pulumi.StringRef(\"example.com/page,*/checkout,example.com/*,*checkout*\"),\n\t\t\tPerPage:             pulumi.Float64Ref(100),\n\t\t\tPrioritizeMalicious: pulumi.BoolRef(true),\n\t\t\tStatus:              pulumi.StringRef(\"active,inactive\"),\n\t\t\tUrls:                pulumi.StringRef(\"blog.cloudflare.com,www.example\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPageShieldScriptsListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePageShieldScriptsList = CloudflareFunctions.getPageShieldScriptsList(GetPageShieldScriptsListArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .excludeUrls(\"blog.cloudflare.com,www.example\")\n            .export(\"csv\")\n            .hosts(\"blog.cloudflare.com,www.example*,*cloudflare.com\")\n            .orderBy(\"first_seen_at\")\n            .page(\"2\")\n            .pageUrl(\"example.com/page,*/checkout,example.com/*,*checkout*\")\n            .perPage(100)\n            .prioritizeMalicious(true)\n            .status(\"active,inactive\")\n            .urls(\"blog.cloudflare.com,www.example\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePageShieldScriptsList:\n    fn::invoke:\n      function: cloudflare:getPageShieldScriptsList\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        excludeUrls: blog.cloudflare.com,www.example\n        export: csv\n        hosts: blog.cloudflare.com,www.example*,*cloudflare.com\n        orderBy: first_seen_at\n        page: '2'\n        pageUrl: example.com/page,*/checkout,example.com/*,*checkout*\n        perPage: 100\n        prioritizeMalicious: true\n        status: active,inactive\n        urls: blog.cloudflare.com,www.example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPageShieldScriptsList.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "The direction used to sort returned scripts.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "excludeCdnCgi": {
                        "type": "boolean",
                        "description": "When true, excludes scripts seen in a `/cdn-cgi` path from the returned scripts. The default value is true.\n"
                    },
                    "excludeDuplicates": {
                        "type": "boolean",
                        "description": "When true, excludes duplicate scripts. We consider a script duplicate of another if their javascript\ncontent matches and they share the same url host and zone hostname. In such case, we return the most\nrecent script for the URL host and zone hostname combination.\n"
                    },
                    "excludeUrls": {
                        "type": "string",
                        "description": "Excludes scripts whose URL contains one of the URL-encoded URLs separated by commas.\n"
                    },
                    "export": {
                        "type": "string",
                        "description": "Export the list of scripts as a file, limited to 50000 entries.\nAvailable values: \"csv\".\n"
                    },
                    "hosts": {
                        "type": "string",
                        "description": "Includes scripts that match one or more URL-encoded hostnames separated by commas.\n"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "orderBy": {
                        "type": "string"
                    },
                    "page": {
                        "type": "string"
                    },
                    "pageUrl": {
                        "type": "string"
                    },
                    "perPage": {
                        "type": "number"
                    },
                    "prioritizeMalicious": {
                        "type": "boolean"
                    },
                    "status": {
                        "type": "string"
                    },
                    "urls": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPageShieldScriptsList.\n",
                "properties": {
                    "direction": {
                        "description": "The direction used to sort returned scripts.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "excludeCdnCgi": {
                        "description": "When true, excludes scripts seen in a `/cdn-cgi` path from the returned scripts. The default value is true.\n",
                        "type": "boolean"
                    },
                    "excludeDuplicates": {
                        "description": "When true, excludes duplicate scripts. We consider a script duplicate of another if their javascript\ncontent matches and they share the same url host and zone hostname. In such case, we return the most\nrecent script for the URL host and zone hostname combination.\n",
                        "type": "boolean"
                    },
                    "excludeUrls": {
                        "description": "Excludes scripts whose URL contains one of the URL-encoded URLs separated by commas.\n",
                        "type": "string"
                    },
                    "export": {
                        "description": "Export the list of scripts as a file, limited to 50000 entries.\nAvailable values: \"csv\".\n",
                        "type": "string"
                    },
                    "hosts": {
                        "description": "Includes scripts that match one or more URL-encoded hostnames separated by commas.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "orderBy": {
                        "type": "string"
                    },
                    "page": {
                        "type": "string"
                    },
                    "pageUrl": {
                        "type": "string"
                    },
                    "perPage": {
                        "type": "number"
                    },
                    "prioritizeMalicious": {
                        "type": "boolean"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPageShieldScriptsListResult:getPageShieldScriptsListResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "type": "string"
                    },
                    "urls": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "excludeCdnCgi",
                    "excludeDuplicates",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPagesDomain:getPagesDomain": {
            "description": "Accepted Permissions\n\n- `Pages Read`\n- `Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePagesDomain = cloudflare.getPagesDomain({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    projectName: \"this-is-my-project-01\",\n    domainName: \"this-is-my-domain-01.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pages_domain = cloudflare.get_pages_domain(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    project_name=\"this-is-my-project-01\",\n    domain_name=\"this-is-my-domain-01.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePagesDomain = Cloudflare.Index.GetPagesDomain.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ProjectName = \"this-is-my-project-01\",\n        DomainName = \"this-is-my-domain-01.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPagesDomain(ctx, \u0026cloudflare.LookupPagesDomainArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tProjectName: \"this-is-my-project-01\",\n\t\t\tDomainName:  \"this-is-my-domain-01.com\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPagesDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePagesDomain = CloudflareFunctions.getPagesDomain(GetPagesDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .projectName(\"this-is-my-project-01\")\n            .domainName(\"this-is-my-domain-01.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePagesDomain:\n    fn::invoke:\n      function: cloudflare:getPagesDomain\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        projectName: this-is-my-project-01\n        domainName: this-is-my-domain-01.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPagesDomain.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "domainName": {
                        "type": "string",
                        "description": "The domain name.\n"
                    },
                    "projectName": {
                        "type": "string",
                        "description": "Name of the project.\n"
                    }
                },
                "type": "object",
                "required": [
                    "domainName",
                    "projectName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPagesDomain.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "certificateAuthority": {
                        "description": "Available values: \"google\", \u003cspan pulumi-lang-nodejs=\"\"letsEncrypt\"\" pulumi-lang-dotnet=\"\"LetsEncrypt\"\" pulumi-lang-go=\"\"letsEncrypt\"\" pulumi-lang-python=\"\"lets_encrypt\"\" pulumi-lang-yaml=\"\"letsEncrypt\"\" pulumi-lang-java=\"\"letsEncrypt\"\"\u003e\"letsEncrypt\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "domainId": {
                        "type": "string"
                    },
                    "domainName": {
                        "description": "The domain name.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The domain name.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The domain name.\n",
                        "type": "string"
                    },
                    "projectName": {
                        "description": "Name of the project.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Available values: \"initializing\", \"pending\", \"active\", \"deactivated\", \"blocked\", \"error\".\n",
                        "type": "string"
                    },
                    "validationData": {
                        "$ref": "#/types/cloudflare:index/getPagesDomainValidationData:getPagesDomainValidationData"
                    },
                    "verificationData": {
                        "$ref": "#/types/cloudflare:index/getPagesDomainVerificationData:getPagesDomainVerificationData"
                    },
                    "zoneTag": {
                        "type": "string"
                    }
                },
                "required": [
                    "certificateAuthority",
                    "createdOn",
                    "domainId",
                    "domainName",
                    "id",
                    "name",
                    "projectName",
                    "status",
                    "validationData",
                    "verificationData",
                    "zoneTag"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPagesDomains:getPagesDomains": {
            "description": "Accepted Permissions\n\n- `Pages Read`\n- `Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePagesDomains = cloudflare.getPagesDomains({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    projectName: \"this-is-my-project-01\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pages_domains = cloudflare.get_pages_domains(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    project_name=\"this-is-my-project-01\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePagesDomains = Cloudflare.Index.GetPagesDomains.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ProjectName = \"this-is-my-project-01\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPagesDomains(ctx, \u0026cloudflare.LookupPagesDomainsArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tProjectName: \"this-is-my-project-01\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPagesDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePagesDomains = CloudflareFunctions.getPagesDomains(GetPagesDomainsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .projectName(\"this-is-my-project-01\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePagesDomains:\n    fn::invoke:\n      function: cloudflare:getPagesDomains\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        projectName: this-is-my-project-01\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPagesDomains.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "projectName": {
                        "type": "string",
                        "description": "Name of the project.\n"
                    }
                },
                "type": "object",
                "required": [
                    "projectName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPagesDomains.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "projectName": {
                        "description": "Name of the project.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPagesDomainsResult:getPagesDomainsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "projectName",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPagesProject:getPagesProject": {
            "description": "Accepted Permissions\n\n- `Pages Read`\n- `Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePagesProject = cloudflare.getPagesProject({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    projectName: \"this-is-my-project-01\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pages_project = cloudflare.get_pages_project(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    project_name=\"this-is-my-project-01\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePagesProject = Cloudflare.Index.GetPagesProject.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ProjectName = \"this-is-my-project-01\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPagesProject(ctx, \u0026cloudflare.LookupPagesProjectArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tProjectName: \"this-is-my-project-01\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPagesProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePagesProject = CloudflareFunctions.getPagesProject(GetPagesProjectArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .projectName(\"this-is-my-project-01\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePagesProject:\n    fn::invoke:\n      function: cloudflare:getPagesProject\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        projectName: this-is-my-project-01\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPagesProject.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "projectName": {
                        "type": "string",
                        "description": "Name of the project.\n"
                    }
                },
                "type": "object",
                "required": [
                    "projectName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPagesProject.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "buildConfig": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectBuildConfig:getPagesProjectBuildConfig",
                        "description": "Configs for the project build process.\n"
                    },
                    "canonicalDeployment": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectCanonicalDeployment:getPagesProjectCanonicalDeployment",
                        "description": "Most recent production deployment of the project.\n"
                    },
                    "createdOn": {
                        "description": "When the project was created.\n",
                        "type": "string"
                    },
                    "deploymentConfigs": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectDeploymentConfigs:getPagesProjectDeploymentConfigs",
                        "description": "Configs for deployments in a project.\n"
                    },
                    "domains": {
                        "description": "A list of associated custom domains for the project.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "framework": {
                        "description": "Framework the project is using.\n",
                        "type": "string"
                    },
                    "frameworkVersion": {
                        "description": "Version of the framework the project is using.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Name of the project.\n",
                        "type": "string"
                    },
                    "latestDeployment": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectLatestDeployment:getPagesProjectLatestDeployment",
                        "description": "Most recent deployment of the project.\n"
                    },
                    "name": {
                        "description": "Name of the project.\n",
                        "type": "string"
                    },
                    "previewScriptName": {
                        "description": "Name of the preview script.\n",
                        "type": "string"
                    },
                    "productionBranch": {
                        "description": "Production branch of the project. Used to identify production deployments.\n",
                        "type": "string"
                    },
                    "productionScriptName": {
                        "description": "Name of the production script.\n",
                        "type": "string"
                    },
                    "projectName": {
                        "description": "Name of the project.\n",
                        "type": "string"
                    },
                    "source": {
                        "$ref": "#/types/cloudflare:index/getPagesProjectSource:getPagesProjectSource",
                        "description": "Configs for the project source control.\n"
                    },
                    "subdomain": {
                        "description": "The Cloudflare subdomain associated with the project.\n",
                        "type": "string"
                    },
                    "usesFunctions": {
                        "description": "Whether the project uses functions.\n",
                        "type": "boolean"
                    }
                },
                "required": [
                    "buildConfig",
                    "canonicalDeployment",
                    "createdOn",
                    "deploymentConfigs",
                    "domains",
                    "framework",
                    "frameworkVersion",
                    "id",
                    "latestDeployment",
                    "name",
                    "previewScriptName",
                    "productionBranch",
                    "productionScriptName",
                    "projectName",
                    "source",
                    "subdomain",
                    "usesFunctions"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPagesProjects:getPagesProjects": {
            "description": "Accepted Permissions\n\n- `Pages Read`\n- `Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePagesProjects = cloudflare.getPagesProjects({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pages_projects = cloudflare.get_pages_projects(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePagesProjects = Cloudflare.Index.GetPagesProjects.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPagesProjects(ctx, \u0026cloudflare.LookupPagesProjectsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPagesProjectsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePagesProjects = CloudflareFunctions.getPagesProjects(GetPagesProjectsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePagesProjects:\n    fn::invoke:\n      function: cloudflare:getPagesProjects\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPagesProjects.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPagesProjects.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPagesProjectsResult:getPagesProjectsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPipeline:getPipeline": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipeline = cloudflare.getPipeline({\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    pipelineId: \"043e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline = cloudflare.get_pipeline(account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    pipeline_id=\"043e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipeline = Cloudflare.Index.GetPipeline.Invoke(new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        PipelineId = \"043e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPipeline(ctx, \u0026cloudflare.LookupPipelineArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPipelineId: \"043e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPipelineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePipeline = CloudflareFunctions.getPipeline(GetPipelineArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .pipelineId(\"043e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePipeline:\n    fn::invoke:\n      function: cloudflare:getPipeline\n      arguments:\n        accountId: 0123105f4ecef8ad9ca31a8372d0c353\n        pipelineId: 043e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPipeline.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "pipelineId": {
                        "type": "string",
                        "description": "Specifies the public ID of the pipeline.\n"
                    }
                },
                "type": "object",
                "required": [
                    "pipelineId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getPipeline.\n",
                "properties": {
                    "accountId": {
                        "description": "Specifies the public ID of the account.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "failureReason": {
                        "description": "Indicates the reason for the failure of the Pipeline.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Specifies the public ID of the pipeline.\n",
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "description": "Indicates the name of the Pipeline.\n",
                        "type": "string"
                    },
                    "pipelineId": {
                        "description": "Specifies the public ID of the pipeline.\n",
                        "type": "string"
                    },
                    "sql": {
                        "description": "Specifies SQL for the Pipeline processing flow.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Indicates the current status of the Pipeline.\n",
                        "type": "string"
                    },
                    "tables": {
                        "description": "List of streams and sinks used by this pipeline.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPipelineTable:getPipelineTable"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "createdAt",
                    "failureReason",
                    "id",
                    "modifiedAt",
                    "name",
                    "pipelineId",
                    "sql",
                    "status",
                    "tables"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPipelineSink:getPipelineSink": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipelineSink = cloudflare.getPipelineSink({\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    sinkId: \"0223105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline_sink = cloudflare.get_pipeline_sink(account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    sink_id=\"0223105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipelineSink = Cloudflare.Index.GetPipelineSink.Invoke(new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        SinkId = \"0223105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPipelineSink(ctx, \u0026cloudflare.LookupPipelineSinkArgs{\n\t\t\tAccountId: pulumi.StringRef(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSinkId:    pulumi.StringRef(\"0223105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPipelineSinkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePipelineSink = CloudflareFunctions.getPipelineSink(GetPipelineSinkArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .sinkId(\"0223105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePipelineSink:\n    fn::invoke:\n      function: cloudflare:getPipelineSink\n      arguments:\n        accountId: 0123105f4ecef8ad9ca31a8372d0c353\n        sinkId: 0223105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPipelineSink.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinkFilter:getPipelineSinkFilter"
                    },
                    "sinkId": {
                        "type": "string",
                        "description": "Specifies the publid ID of the sink.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPipelineSink.\n",
                "properties": {
                    "accountId": {
                        "description": "Specifies the public ID of the account.\n",
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinkConfig:getPipelineSinkConfig",
                        "description": "Defines the configuration of the R2 Sink.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinkFilter:getPipelineSinkFilter"
                    },
                    "format": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinkFormat:getPipelineSinkFormat"
                    },
                    "id": {
                        "description": "Specifies the publid ID of the sink.\n",
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "description": "Defines the name of the Sink.\n",
                        "type": "string"
                    },
                    "schema": {
                        "$ref": "#/types/cloudflare:index/getPipelineSinkSchema:getPipelineSinkSchema"
                    },
                    "sinkId": {
                        "description": "Specifies the publid ID of the sink.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Specifies the type of sink.\nAvailable values: \"r2\", \"r2*data*catalog\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "config",
                    "createdAt",
                    "format",
                    "id",
                    "modifiedAt",
                    "name",
                    "schema",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPipelineSinks:getPipelineSinks": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipelineSinks = cloudflare.getPipelineSinks({\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    pipelineId: \"pipeline_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline_sinks = cloudflare.get_pipeline_sinks(account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    pipeline_id=\"pipeline_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipelineSinks = Cloudflare.Index.GetPipelineSinks.Invoke(new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        PipelineId = \"pipeline_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPipelineSinks(ctx, \u0026cloudflare.LookupPipelineSinksArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPipelineId: pulumi.StringRef(\"pipeline_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPipelineSinksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePipelineSinks = CloudflareFunctions.getPipelineSinks(GetPipelineSinksArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .pipelineId(\"pipeline_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePipelineSinks:\n    fn::invoke:\n      function: cloudflare:getPipelineSinks\n      arguments:\n        accountId: 0123105f4ecef8ad9ca31a8372d0c353\n        pipelineId: pipeline_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPipelineSinks.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "pipelineId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPipelineSinks.\n",
                "properties": {
                    "accountId": {
                        "description": "Specifies the public ID of the account.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "pipelineId": {
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPipelineSinksResult:getPipelineSinksResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPipelineStream:getPipelineStream": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipelineStream = cloudflare.getPipelineStream({\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    streamId: \"033e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline_stream = cloudflare.get_pipeline_stream(account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    stream_id=\"033e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipelineStream = Cloudflare.Index.GetPipelineStream.Invoke(new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        StreamId = \"033e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPipelineStream(ctx, \u0026cloudflare.LookupPipelineStreamArgs{\n\t\t\tAccountId: pulumi.StringRef(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tStreamId:  pulumi.StringRef(\"033e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPipelineStreamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePipelineStream = CloudflareFunctions.getPipelineStream(GetPipelineStreamArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .streamId(\"033e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePipelineStream:\n    fn::invoke:\n      function: cloudflare:getPipelineStream\n      arguments:\n        accountId: 0123105f4ecef8ad9ca31a8372d0c353\n        streamId: 033e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPipelineStream.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamFilter:getPipelineStreamFilter"
                    },
                    "streamId": {
                        "type": "string",
                        "description": "Specifies the public ID of the stream.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPipelineStream.\n",
                "properties": {
                    "accountId": {
                        "description": "Specifies the public ID of the account.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "endpoint": {
                        "description": "Indicates the endpoint URL of this stream.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamFilter:getPipelineStreamFilter"
                    },
                    "format": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamFormat:getPipelineStreamFormat"
                    },
                    "http": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamHttp:getPipelineStreamHttp"
                    },
                    "id": {
                        "description": "Specifies the public ID of the stream.\n",
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "name": {
                        "description": "Indicates the name of the Stream.\n",
                        "type": "string"
                    },
                    "schema": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamSchema:getPipelineStreamSchema"
                    },
                    "streamId": {
                        "description": "Specifies the public ID of the stream.\n",
                        "type": "string"
                    },
                    "version": {
                        "description": "Indicates the current version of this stream.\n",
                        "type": "integer"
                    },
                    "workerBinding": {
                        "$ref": "#/types/cloudflare:index/getPipelineStreamWorkerBinding:getPipelineStreamWorkerBinding"
                    }
                },
                "required": [
                    "createdAt",
                    "endpoint",
                    "format",
                    "http",
                    "id",
                    "modifiedAt",
                    "name",
                    "schema",
                    "version",
                    "workerBinding"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getPipelineStreams:getPipelineStreams": {
            "description": "Accepted Permissions\n\n- `Pipelines Read`\n- `Pipelines Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst examplePipelineStreams = cloudflare.getPipelineStreams({\n    accountId: \"0123105f4ecef8ad9ca31a8372d0c353\",\n    pipelineId: \"043e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_pipeline_streams = cloudflare.get_pipeline_streams(account_id=\"0123105f4ecef8ad9ca31a8372d0c353\",\n    pipeline_id=\"043e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var examplePipelineStreams = Cloudflare.Index.GetPipelineStreams.Invoke(new()\n    {\n        AccountId = \"0123105f4ecef8ad9ca31a8372d0c353\",\n        PipelineId = \"043e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetPipelineStreams(ctx, \u0026cloudflare.LookupPipelineStreamsArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"0123105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPipelineId: pulumi.StringRef(\"043e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetPipelineStreamsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var examplePipelineStreams = CloudflareFunctions.getPipelineStreams(GetPipelineStreamsArgs.builder()\n            .accountId(\"0123105f4ecef8ad9ca31a8372d0c353\")\n            .pipelineId(\"043e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  examplePipelineStreams:\n    fn::invoke:\n      function: cloudflare:getPipelineStreams\n      arguments:\n        accountId: 0123105f4ecef8ad9ca31a8372d0c353\n        pipelineId: 043e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getPipelineStreams.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Specifies the public ID of the account.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "pipelineId": {
                        "type": "string",
                        "description": "Specifies the public ID of the pipeline.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getPipelineStreams.\n",
                "properties": {
                    "accountId": {
                        "description": "Specifies the public ID of the account.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "pipelineId": {
                        "description": "Specifies the public ID of the pipeline.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getPipelineStreamsResult:getPipelineStreamsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getQueue:getQueue": {
            "description": "Accepted Permissions\n\n- `Queues Read`\n- `Queues Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleQueue = cloudflare.getQueue({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    queueId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_queue = cloudflare.get_queue(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    queue_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleQueue = Cloudflare.Index.GetQueue.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        QueueId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetQueue(ctx, \u0026cloudflare.LookupQueueArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tQueueId:   \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetQueueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleQueue = CloudflareFunctions.getQueue(GetQueueArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .queueId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleQueue:\n    fn::invoke:\n      function: cloudflare:getQueue\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        queueId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getQueue.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "queueId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "queueId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getQueue.\n",
                "properties": {
                    "accountId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "consumers": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getQueueConsumer:getQueueConsumer"
                        },
                        "type": "array"
                    },
                    "consumersTotalCount": {
                        "type": "number"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "id": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "producers": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getQueueProducer:getQueueProducer"
                        },
                        "type": "array"
                    },
                    "producersTotalCount": {
                        "type": "number"
                    },
                    "queueId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "queueName": {
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/getQueueSettings:getQueueSettings"
                    }
                },
                "required": [
                    "consumers",
                    "consumersTotalCount",
                    "createdOn",
                    "id",
                    "modifiedOn",
                    "producers",
                    "producersTotalCount",
                    "queueId",
                    "queueName",
                    "settings"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getQueueConsumer:getQueueConsumer": {
            "description": "Accepted Permissions\n\n- `Queues Read`\n- `Queues Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nvariables:\n  exampleQueueConsumer:\n    fn::invoke:\n      function: cloudflare:getQueueConsumer\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        queueId: 023e105f4ecef8ad9ca31a8372d0c353\n        consumerId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getQueueConsumer.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "queueId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "queueId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getQueueConsumer.\n",
                "properties": {
                    "accountId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "consumerId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "deadLetterQueue": {
                        "description": "Name of the dead letter queue, or empty string if not configured\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "queueId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "queueName": {
                        "type": "string"
                    },
                    "scriptName": {
                        "description": "Name of a Worker\n",
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/getQueueConsumerSettings:getQueueConsumerSettings"
                    },
                    "type": {
                        "description": "Available values: \"worker\", \u003cspan pulumi-lang-nodejs=\"\"httpPull\"\" pulumi-lang-dotnet=\"\"HttpPull\"\" pulumi-lang-go=\"\"httpPull\"\" pulumi-lang-python=\"\"http_pull\"\" pulumi-lang-yaml=\"\"httpPull\"\" pulumi-lang-java=\"\"httpPull\"\"\u003e\"httpPull\"\u003c/span\u003e.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "consumerId",
                    "createdOn",
                    "deadLetterQueue",
                    "queueId",
                    "queueName",
                    "scriptName",
                    "settings",
                    "type",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getQueueConsumers:getQueueConsumers": {
            "description": "Accepted Permissions\n\n- `Queues Read`\n- `Queues Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleQueueConsumers = cloudflare.getQueueConsumers({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    queueId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_queue_consumers = cloudflare.get_queue_consumers(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    queue_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleQueueConsumers = Cloudflare.Index.GetQueueConsumers.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        QueueId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetQueueConsumers(ctx, \u0026cloudflare.LookupQueueConsumersArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tQueueId:   \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetQueueConsumersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleQueueConsumers = CloudflareFunctions.getQueueConsumers(GetQueueConsumersArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .queueId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleQueueConsumers:\n    fn::invoke:\n      function: cloudflare:getQueueConsumers\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        queueId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getQueueConsumers.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "queueId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "queueId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getQueueConsumers.\n",
                "properties": {
                    "accountId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "queueId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getQueueConsumersResult:getQueueConsumersResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "queueId",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getQueues:getQueues": {
            "description": "Accepted Permissions\n\n- `Queues Read`\n- `Queues Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleQueues = cloudflare.getQueues({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_queues = cloudflare.get_queues(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleQueues = Cloudflare.Index.GetQueues.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetQueues(ctx, \u0026cloudflare.LookupQueuesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetQueuesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleQueues = CloudflareFunctions.getQueues(GetQueuesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleQueues:\n    fn::invoke:\n      function: cloudflare:getQueues\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getQueues.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "A Resource identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getQueues.\n",
                "properties": {
                    "accountId": {
                        "description": "A Resource identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getQueuesResult:getQueuesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2Bucket:getR2Bucket": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2Bucket = cloudflare.getR2Bucket({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket = cloudflare.get_r2_bucket(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2Bucket = Cloudflare.Index.GetR2Bucket.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2Bucket(ctx, \u0026cloudflare.LookupR2BucketArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2BucketArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2Bucket = CloudflareFunctions.getR2Bucket(GetR2BucketArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2Bucket:\n    fn::invoke:\n      function: cloudflare:getR2Bucket\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2Bucket.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2Bucket.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "creationDate": {
                        "description": "Creation timestamp.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "jurisdiction": {
                        "description": "Jurisdiction where objects in this bucket are guaranteed to be stored.\nAvailable values: \"default\", \"eu\", \"fedramp\".\n",
                        "type": "string"
                    },
                    "location": {
                        "description": "Location of the bucket.\nAvailable values: \"apac\", \"eeur\", \"enam\", \"weur\", \"wnam\", \"oc\".\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "storageClass": {
                        "description": "Storage class for newly uploaded objects, unless specified otherwise.\nAvailable values: \"Standard\", \"InfrequentAccess\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "bucketName",
                    "creationDate",
                    "id",
                    "jurisdiction",
                    "location",
                    "name",
                    "storageClass"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2BucketCors:getR2BucketCors": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketCors = cloudflare.getR2BucketCors({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_cors = cloudflare.get_r2_bucket_cors(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketCors = Cloudflare.Index.GetR2BucketCors.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2BucketCors(ctx, \u0026cloudflare.LookupR2BucketCorsArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2BucketCorsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2BucketCors = CloudflareFunctions.getR2BucketCors(GetR2BucketCorsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2BucketCors:\n    fn::invoke:\n      function: cloudflare:getR2BucketCors\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2BucketCors.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2BucketCors.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "rules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getR2BucketCorsRule:getR2BucketCorsRule"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "bucketName",
                    "rules",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2BucketEventNotification:getR2BucketEventNotification": {
            "description": "Accepted Permissions\n\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketEventNotification = cloudflare.getR2BucketEventNotification({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    queueId: \"queue_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_event_notification = cloudflare.get_r2_bucket_event_notification(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    queue_id=\"queue_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketEventNotification = Cloudflare.Index.GetR2BucketEventNotification.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        QueueId = \"queue_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2BucketEventNotification(ctx, \u0026cloudflare.LookupR2BucketEventNotificationArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t\tQueueId:    \"queue_id\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2BucketEventNotificationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2BucketEventNotification = CloudflareFunctions.getR2BucketEventNotification(GetR2BucketEventNotificationArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .queueId(\"queue_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2BucketEventNotification:\n    fn::invoke:\n      function: cloudflare:getR2BucketEventNotification\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n        queueId: queue_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2BucketEventNotification.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "queueId": {
                        "type": "string",
                        "description": "Queue ID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName",
                    "queueId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2BucketEventNotification.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "queueId": {
                        "description": "Queue ID.\n",
                        "type": "string"
                    },
                    "queueName": {
                        "description": "Name of the queue.\n",
                        "type": "string"
                    },
                    "rules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getR2BucketEventNotificationRule:getR2BucketEventNotificationRule"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "bucketName",
                    "queueId",
                    "queueName",
                    "rules",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2BucketLifecycle:getR2BucketLifecycle": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketLifecycle = cloudflare.getR2BucketLifecycle({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_lifecycle = cloudflare.get_r2_bucket_lifecycle(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketLifecycle = Cloudflare.Index.GetR2BucketLifecycle.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2BucketLifecycle(ctx, \u0026cloudflare.LookupR2BucketLifecycleArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2BucketLifecycleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2BucketLifecycle = CloudflareFunctions.getR2BucketLifecycle(GetR2BucketLifecycleArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2BucketLifecycle:\n    fn::invoke:\n      function: cloudflare:getR2BucketLifecycle\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2BucketLifecycle.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2BucketLifecycle.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "rules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getR2BucketLifecycleRule:getR2BucketLifecycleRule"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "bucketName",
                    "rules",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2BucketLock:getR2BucketLock": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketLock = cloudflare.getR2BucketLock({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_lock = cloudflare.get_r2_bucket_lock(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketLock = Cloudflare.Index.GetR2BucketLock.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2BucketLock(ctx, \u0026cloudflare.LookupR2BucketLockArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2BucketLockArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2BucketLock = CloudflareFunctions.getR2BucketLock(GetR2BucketLockArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2BucketLock:\n    fn::invoke:\n      function: cloudflare:getR2BucketLock\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2BucketLock.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2BucketLock.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "rules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getR2BucketLockRule:getR2BucketLockRule"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "bucketName",
                    "rules",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2BucketSippy:getR2BucketSippy": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2BucketSippy = cloudflare.getR2BucketSippy({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_bucket_sippy = cloudflare.get_r2_bucket_sippy(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2BucketSippy = Cloudflare.Index.GetR2BucketSippy.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2BucketSippy(ctx, \u0026cloudflare.LookupR2BucketSippyArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2BucketSippyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2BucketSippy = CloudflareFunctions.getR2BucketSippy(GetR2BucketSippyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2BucketSippy:\n    fn::invoke:\n      function: cloudflare:getR2BucketSippy\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2BucketSippy.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2BucketSippy.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "destination": {
                        "$ref": "#/types/cloudflare:index/getR2BucketSippyDestination:getR2BucketSippyDestination",
                        "description": "Details about the configured destination bucket.\n"
                    },
                    "enabled": {
                        "description": "State of Sippy for this bucket.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "source": {
                        "$ref": "#/types/cloudflare:index/getR2BucketSippySource:getR2BucketSippySource",
                        "description": "Details about the configured source bucket.\n"
                    }
                },
                "required": [
                    "bucketName",
                    "destination",
                    "enabled",
                    "source",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2CustomDomain:getR2CustomDomain": {
            "description": "Accepted Permissions\n\n- `Workers R2 Storage Read`\n- `Workers R2 Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2CustomDomain = cloudflare.getR2CustomDomain({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucketName: \"example-bucket\",\n    domain: \"example-domain/custom-domain.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_custom_domain = cloudflare.get_r2_custom_domain(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    bucket_name=\"example-bucket\",\n    domain=\"example-domain/custom-domain.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2CustomDomain = Cloudflare.Index.GetR2CustomDomain.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        BucketName = \"example-bucket\",\n        Domain = \"example-domain/custom-domain.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2CustomDomain(ctx, \u0026cloudflare.LookupR2CustomDomainArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tBucketName: \"example-bucket\",\n\t\t\tDomain:     \"example-domain/custom-domain.com\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2CustomDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2CustomDomain = CloudflareFunctions.getR2CustomDomain(GetR2CustomDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .bucketName(\"example-bucket\")\n            .domain(\"example-domain/custom-domain.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2CustomDomain:\n    fn::invoke:\n      function: cloudflare:getR2CustomDomain\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        bucketName: example-bucket\n        domain: example-domain/custom-domain.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2CustomDomain.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Name of the bucket.\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "Name of the custom domain.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName",
                    "domain"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2CustomDomain.\n",
                "properties": {
                    "accountId": {
                        "description": "Account ID.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Name of the bucket.\n",
                        "type": "string"
                    },
                    "ciphers": {
                        "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "domain": {
                        "description": "Name of the custom domain.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether this bucket is publicly accessible at the specified custom domain.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "minTls": {
                        "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.\nAvailable values: \"1.0\", \"1.1\", \"1.2\", \"1.3\".\n",
                        "type": "string"
                    },
                    "status": {
                        "$ref": "#/types/cloudflare:index/getR2CustomDomainStatus:getR2CustomDomainStatus"
                    },
                    "zoneId": {
                        "description": "Zone ID of the custom domain resides in.\n",
                        "type": "string"
                    },
                    "zoneName": {
                        "description": "Zone that the custom domain resides in.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "bucketName",
                    "ciphers",
                    "domain",
                    "enabled",
                    "minTls",
                    "status",
                    "zoneId",
                    "zoneName",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getR2DataCatalog:getR2DataCatalog": {
            "description": "Accepted Permissions\n\n- `Workers R2 Data Catalog Read`\n- `Workers R2 Data Catalog Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleR2DataCatalog = cloudflare.getR2DataCatalog({\n    accountId: \"0123456789abcdef0123456789abcdef\",\n    bucketName: \"my-data-bucket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_r2_data_catalog = cloudflare.get_r2_data_catalog(account_id=\"0123456789abcdef0123456789abcdef\",\n    bucket_name=\"my-data-bucket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleR2DataCatalog = Cloudflare.Index.GetR2DataCatalog.Invoke(new()\n    {\n        AccountId = \"0123456789abcdef0123456789abcdef\",\n        BucketName = \"my-data-bucket\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetR2DataCatalog(ctx, \u0026cloudflare.LookupR2DataCatalogArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"0123456789abcdef0123456789abcdef\"),\n\t\t\tBucketName: \"my-data-bucket\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetR2DataCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleR2DataCatalog = CloudflareFunctions.getR2DataCatalog(GetR2DataCatalogArgs.builder()\n            .accountId(\"0123456789abcdef0123456789abcdef\")\n            .bucketName(\"my-data-bucket\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleR2DataCatalog:\n    fn::invoke:\n      function: cloudflare:getR2DataCatalog\n      arguments:\n        accountId: 0123456789abcdef0123456789abcdef\n        bucketName: my-data-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getR2DataCatalog.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Use this to identify the account.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "Specifies the R2 bucket name.\n"
                    }
                },
                "type": "object",
                "required": [
                    "bucketName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getR2DataCatalog.\n",
                "properties": {
                    "accountId": {
                        "description": "Use this to identify the account.\n",
                        "type": "string"
                    },
                    "bucket": {
                        "description": "Specifies the associated R2 bucket name.\n",
                        "type": "string"
                    },
                    "bucketName": {
                        "description": "Specifies the R2 bucket name.\n",
                        "type": "string"
                    },
                    "credentialStatus": {
                        "description": "Shows the credential configuration status.\nAvailable values: \"present\", \"absent\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Specifies the R2 bucket name.\n",
                        "type": "string"
                    },
                    "maintenanceConfig": {
                        "$ref": "#/types/cloudflare:index/getR2DataCatalogMaintenanceConfig:getR2DataCatalogMaintenanceConfig",
                        "description": "Configures maintenance for the catalog.\n"
                    },
                    "name": {
                        "description": "Specifies the catalog name (generated from account and bucket name).\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Indicates the status of the catalog.\nAvailable values: \"active\", \"inactive\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "bucket",
                    "bucketName",
                    "credentialStatus",
                    "id",
                    "maintenanceConfig",
                    "name",
                    "status"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRateLimit:getRateLimit": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRateLimit = cloudflare.getRateLimit({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    rateLimitId: \"372e67954025e0ba6aaa6d586b9e0b59\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_rate_limit = cloudflare.get_rate_limit(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    rate_limit_id=\"372e67954025e0ba6aaa6d586b9e0b59\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRateLimit = Cloudflare.Index.GetRateLimit.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RateLimitId = \"372e67954025e0ba6aaa6d586b9e0b59\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRateLimit(ctx, \u0026cloudflare.LookupRateLimitArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRateLimitId: \"372e67954025e0ba6aaa6d586b9e0b59\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRateLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRateLimit = CloudflareFunctions.getRateLimit(GetRateLimitArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .rateLimitId(\"372e67954025e0ba6aaa6d586b9e0b59\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRateLimit:\n    fn::invoke:\n      function: cloudflare:getRateLimit\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        rateLimitId: 372e67954025e0ba6aaa6d586b9e0b59\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRateLimit.\n",
                "properties": {
                    "rateLimitId": {
                        "type": "string",
                        "description": "Defines the unique identifier of the rate limit.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "rateLimitId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getRateLimit.\n",
                "properties": {
                    "action": {
                        "$ref": "#/types/cloudflare:index/getRateLimitAction:getRateLimitAction",
                        "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded.\n"
                    },
                    "bypasses": {
                        "description": "Criteria specifying when the current rate limit should be bypassed. You can specify that the rate limit should not apply to one or more URLs.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRateLimitBypass:getRateLimitBypass"
                        },
                        "type": "array"
                    },
                    "description": {
                        "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.\n",
                        "type": "string"
                    },
                    "disabled": {
                        "description": "When true, indicates that the rate limit is currently disabled.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Defines the unique identifier of the rate limit.\n",
                        "type": "string"
                    },
                    "match": {
                        "$ref": "#/types/cloudflare:index/getRateLimitMatch:getRateLimitMatch",
                        "description": "Determines which traffic the rate limit counts towards the threshold.\n"
                    },
                    "period": {
                        "description": "The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action.\n",
                        "type": "number"
                    },
                    "rateLimitId": {
                        "description": "Defines the unique identifier of the rate limit.\n",
                        "type": "string"
                    },
                    "threshold": {
                        "description": "The threshold that will trigger the configured mitigation action. Configure this value along with the \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e property to establish a threshold per period.\n",
                        "type": "number"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "action",
                    "bypasses",
                    "description",
                    "disabled",
                    "id",
                    "match",
                    "period",
                    "rateLimitId",
                    "threshold"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRateLimits:getRateLimits": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRateLimits = cloudflare.getRateLimits({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_rate_limits = cloudflare.get_rate_limits(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRateLimits = Cloudflare.Index.GetRateLimits.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRateLimits(ctx, \u0026cloudflare.LookupRateLimitsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRateLimitsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRateLimits = CloudflareFunctions.getRateLimits(GetRateLimitsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRateLimits:\n    fn::invoke:\n      function: cloudflare:getRateLimits\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRateLimits.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getRateLimits.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRateLimitsResult:getRateLimitsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRegionalHostname:getRegionalHostname": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegionalHostname = cloudflare.getRegionalHostname({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname: \"foo.example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_regional_hostname = cloudflare.get_regional_hostname(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    hostname=\"foo.example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegionalHostname = Cloudflare.Index.GetRegionalHostname.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Hostname = \"foo.example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRegionalHostname(ctx, \u0026cloudflare.LookupRegionalHostnameArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tHostname: \"foo.example.com\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRegionalHostnameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRegionalHostname = CloudflareFunctions.getRegionalHostname(GetRegionalHostnameArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .hostname(\"foo.example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRegionalHostname:\n    fn::invoke:\n      function: cloudflare:getRegionalHostname\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        hostname: foo.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRegionalHostname.\n",
                "properties": {
                    "hostname": {
                        "type": "string",
                        "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "hostname"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getRegionalHostname.\n",
                "properties": {
                    "createdOn": {
                        "description": "When the regional hostname was created\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`\n",
                        "type": "string"
                    },
                    "regionKey": {
                        "description": "Identifying key for the region\n",
                        "type": "string"
                    },
                    "routing": {
                        "description": "Configure which routing method to use for the regional hostname\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "hostname",
                    "id",
                    "regionKey",
                    "routing"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRegionalHostnames:getRegionalHostnames": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegionalHostnames = cloudflare.getRegionalHostnames({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_regional_hostnames = cloudflare.get_regional_hostnames(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegionalHostnames = Cloudflare.Index.GetRegionalHostnames.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRegionalHostnames(ctx, \u0026cloudflare.LookupRegionalHostnamesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRegionalHostnamesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRegionalHostnames = CloudflareFunctions.getRegionalHostnames(GetRegionalHostnamesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRegionalHostnames:\n    fn::invoke:\n      function: cloudflare:getRegionalHostnames\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRegionalHostnames.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getRegionalHostnames.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRegionalHostnamesResult:getRegionalHostnamesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRegionalTieredCache:getRegionalTieredCache": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegionalTieredCache = cloudflare.getRegionalTieredCache({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_regional_tiered_cache = cloudflare.get_regional_tiered_cache(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegionalTieredCache = Cloudflare.Index.GetRegionalTieredCache.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRegionalTieredCache(ctx, \u0026cloudflare.LookupRegionalTieredCacheArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRegionalTieredCacheArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRegionalTieredCache = CloudflareFunctions.getRegionalTieredCache(GetRegionalTieredCacheArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRegionalTieredCache:\n    fn::invoke:\n      function: cloudflare:getRegionalTieredCache\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRegionalTieredCache.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getRegionalTieredCache.\n",
                "properties": {
                    "editable": {
                        "description": "Whether the setting is editable.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time this setting was modified.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "Value of the Regional Tiered Cache zone setting.\nAvailable values: \"on\", \"off\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "id",
                    "modifiedOn",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRegistrarDomain:getRegistrarDomain": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegistrarDomain = cloudflare.getRegistrarDomain({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    domainName: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_registrar_domain = cloudflare.get_registrar_domain(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    domain_name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegistrarDomain = Cloudflare.Index.GetRegistrarDomain.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DomainName = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRegistrarDomain(ctx, \u0026cloudflare.LookupRegistrarDomainArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDomainName: \"example.com\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRegistrarDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRegistrarDomain = CloudflareFunctions.getRegistrarDomain(GetRegistrarDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .domainName(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRegistrarDomain:\n    fn::invoke:\n      function: cloudflare:getRegistrarDomain\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        domainName: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRegistrarDomain.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "domainName": {
                        "type": "string",
                        "description": "Fully qualified domain name (FQDN) including the extension\n(e.g., `example.com`, `mybrand.app`). The domain name uniquely\nidentifies a registration — the same domain cannot be registered\ntwice, making it a natural idempotency key for registration requests.\n"
                    }
                },
                "type": "object",
                "required": [
                    "domainName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getRegistrarDomain.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "domainName": {
                        "description": "Fully qualified domain name (FQDN) including the extension\n(e.g., `example.com`, `mybrand.app`). The domain name uniquely\nidentifies a registration — the same domain cannot be registered\ntwice, making it a natural idempotency key for registration requests.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    }
                },
                "required": [
                    "domainName",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRegistrarDomains:getRegistrarDomains": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRegistrarDomains = cloudflare.getRegistrarDomains({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_registrar_domains = cloudflare.get_registrar_domains(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRegistrarDomains = Cloudflare.Index.GetRegistrarDomains.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRegistrarDomains(ctx, \u0026cloudflare.LookupRegistrarDomainsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRegistrarDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRegistrarDomains = CloudflareFunctions.getRegistrarDomains(GetRegistrarDomainsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRegistrarDomains:\n    fn::invoke:\n      function: cloudflare:getRegistrarDomains\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRegistrarDomains.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getRegistrarDomains.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRegistrarDomainsResult:getRegistrarDomainsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getResourceGroup:getResourceGroup": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleResourceGroup = cloudflare.getResourceGroup({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    resourceGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_resource_group = cloudflare.get_resource_group(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    resource_group_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleResourceGroup = Cloudflare.Index.GetResourceGroup.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ResourceGroupId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetResourceGroup(ctx, \u0026cloudflare.GetResourceGroupArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tResourceGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleResourceGroup = CloudflareFunctions.getResourceGroup(GetResourceGroupArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .resourceGroupId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleResourceGroup:\n    fn::invoke:\n      function: cloudflare:getResourceGroup\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        resourceGroupId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getResourceGroup.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "resourceGroupId": {
                        "type": "string",
                        "description": "Resource Group identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "resourceGroupId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getResourceGroup.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier of the resource group.\n",
                        "type": "string"
                    },
                    "meta": {
                        "$ref": "#/types/cloudflare:index/getResourceGroupMeta:getResourceGroupMeta",
                        "description": "Attributes associated to the resource group.\n"
                    },
                    "name": {
                        "description": "Name of the resource group.\n",
                        "type": "string"
                    },
                    "resourceGroupId": {
                        "description": "Resource Group identifier tag.\n",
                        "type": "string"
                    },
                    "scopes": {
                        "description": "The scope associated to the resource group\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getResourceGroupScope:getResourceGroupScope"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "id",
                    "meta",
                    "name",
                    "resourceGroupId",
                    "scopes"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getResourceGroups:getResourceGroups": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleResourceGroups = cloudflare.getResourceGroups({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    name: \"NameOfTheResourceGroup\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_resource_groups = cloudflare.get_resource_groups(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    name=\"NameOfTheResourceGroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleResourceGroups = Cloudflare.Index.GetResourceGroups.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Name = \"NameOfTheResourceGroup\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetResourceGroups(ctx, \u0026cloudflare.LookupResourceGroupsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tName:      pulumi.StringRef(\"NameOfTheResourceGroup\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetResourceGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleResourceGroups = CloudflareFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .name(\"NameOfTheResourceGroup\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleResourceGroups:\n    fn::invoke:\n      function: cloudflare:getResourceGroups\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: 023e105f4ecef8ad9ca31a8372d0c353\n        name: NameOfTheResourceGroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getResourceGroups.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "ID of the resource group to be fetched.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the resource group to be fetched.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getResourceGroups.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "ID of the resource group to be fetched.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Name of the resource group to be fetched.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getResourceGroupsResult:getResourceGroupsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRuleset:getRuleset": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRuleset = cloudflare.getRuleset({\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    id: \"2f2feab2026849078ba485f918791bdc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_ruleset = cloudflare.get_ruleset(zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    id=\"2f2feab2026849078ba485f918791bdc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRuleset = Cloudflare.Index.GetRuleset.Invoke(new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        Id = \"2f2feab2026849078ba485f918791bdc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRuleset(ctx, \u0026cloudflare.LookupRulesetArgs{\n\t\t\tZoneId: pulumi.StringRef(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tId:     pulumi.StringRef(\"2f2feab2026849078ba485f918791bdc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRulesetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRuleset = CloudflareFunctions.getRuleset(GetRulesetArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .id(\"2f2feab2026849078ba485f918791bdc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRuleset:\n    fn::invoke:\n      function: cloudflare:getRuleset\n      arguments:\n        zoneId: 9f1839b6152d298aca64c4e906b6d074\n        id: 2f2feab2026849078ba485f918791bdc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRuleset.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The unique ID of the account.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "The unique ID of the ruleset.\n"
                    },
                    "rulesetId": {
                        "type": "string",
                        "description": "The unique ID of the ruleset.\n",
                        "deprecationMessage": "Configure id instead. This attribute will be removed in the next major version of the provider."
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getRuleset.\n",
                "properties": {
                    "accountId": {
                        "description": "The unique ID of the account.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "An informative description of the ruleset.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The unique ID of the ruleset.\n",
                        "type": "string"
                    },
                    "kind": {
                        "description": "The kind of the ruleset.\nAvailable values: \"managed\", \"custom\", \"root\", \"zone\".\n",
                        "type": "string"
                    },
                    "lastUpdated": {
                        "description": "The timestamp of when the ruleset was last modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The human-readable name of the ruleset.\n",
                        "type": "string"
                    },
                    "phase": {
                        "description": "The phase of the ruleset.\nAvailable values: \"ddos*l4\", \"ddos*l7\", \"http*config*settings\", \"http*custom*errors\", \"http*log*custom*fields\", \"http*ratelimit\", \"http*request*cache*settings\", \"http*request*dynamic*redirect\", \"http*request*firewall*custom\", \"http*request*firewall*managed\", \"http*request*late*transform\", \"http*request*origin\", \"http*request*redirect\", \"http*request*sanitize\", \"http*request*sbfm\", \"http*request*transform\", \"http*response*cache*settings\", \"http*response*compression\", \"http*response*firewall*managed\", \"http*response*headers*transform\", \"magic*transit\", \"magic*transit*ids*managed\", \"magic*transit*managed\", \"magic*transit*ratelimit\".\n",
                        "type": "string"
                    },
                    "rules": {
                        "description": "The list of rules in the ruleset.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRulesetRule:getRulesetRule"
                        },
                        "type": "array"
                    },
                    "rulesetId": {
                        "deprecationMessage": "Configure id instead. This attribute will be removed in the next major version of the provider.",
                        "description": "The unique ID of the ruleset.\n",
                        "type": "string"
                    },
                    "version": {
                        "description": "The version of the ruleset.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "kind",
                    "lastUpdated",
                    "name",
                    "phase",
                    "rules",
                    "version"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getRulesets:getRulesets": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleRulesets = cloudflare.getRulesets({\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_rulesets = cloudflare.get_rulesets(zone_id=\"9f1839b6152d298aca64c4e906b6d074\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleRulesets = Cloudflare.Index.GetRulesets.Invoke(new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetRulesets(ctx, \u0026cloudflare.LookupRulesetsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetRulesetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleRulesets = CloudflareFunctions.getRulesets(GetRulesetsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleRulesets:\n    fn::invoke:\n      function: cloudflare:getRulesets\n      arguments:\n        zoneId: 9f1839b6152d298aca64c4e906b6d074\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getRulesets.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The unique ID of the account.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Maximum number of rulesets to fetch (defaults to 1000).\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getRulesets.\n",
                "properties": {
                    "accountId": {
                        "description": "The unique ID of the account.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Maximum number of rulesets to fetch (defaults to 1000).\n",
                        "type": "integer"
                    },
                    "results": {
                        "deprecationMessage": "Use rulesets instead. This attribute will be removed in the next major version of the provider.",
                        "description": "A list of rulesets. The returned information will not include the rules in each ruleset.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRulesetsResult:getRulesetsResult"
                        },
                        "type": "array"
                    },
                    "rulesets": {
                        "description": "A list of rulesets. The returned information will not include the rules in each ruleset.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getRulesetsRuleset:getRulesetsRuleset"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "rulesets",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSchemaValidationOperationSettings:getSchemaValidationOperationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationOperationSettings = cloudflare.getSchemaValidationOperationSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    operationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_operation_settings = cloudflare.get_schema_validation_operation_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    operation_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationOperationSettings = Cloudflare.Index.GetSchemaValidationOperationSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        OperationId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSchemaValidationOperationSettings(ctx, \u0026cloudflare.LookupSchemaValidationOperationSettingsArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOperationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSchemaValidationOperationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSchemaValidationOperationSettings = CloudflareFunctions.getSchemaValidationOperationSettings(GetSchemaValidationOperationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .operationId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSchemaValidationOperationSettings:\n    fn::invoke:\n      function: cloudflare:getSchemaValidationOperationSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        operationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSchemaValidationOperationSettings.\n",
                "properties": {
                    "operationId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "operationId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getSchemaValidationOperationSettings.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "mitigationAction": {
                        "type": "string"
                    },
                    "operationId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "mitigationAction",
                    "operationId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSchemaValidationOperationSettingsList:getSchemaValidationOperationSettingsList": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationOperationSettingsList = cloudflare.getSchemaValidationOperationSettingsList({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_operation_settings_list = cloudflare.get_schema_validation_operation_settings_list(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationOperationSettingsList = Cloudflare.Index.GetSchemaValidationOperationSettingsList.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSchemaValidationOperationSettingsList(ctx, \u0026cloudflare.LookupSchemaValidationOperationSettingsListArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSchemaValidationOperationSettingsListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSchemaValidationOperationSettingsList = CloudflareFunctions.getSchemaValidationOperationSettingsList(GetSchemaValidationOperationSettingsListArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSchemaValidationOperationSettingsList:\n    fn::invoke:\n      function: cloudflare:getSchemaValidationOperationSettingsList\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSchemaValidationOperationSettingsList.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSchemaValidationOperationSettingsList.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSchemaValidationOperationSettingsListResult:getSchemaValidationOperationSettingsListResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSchemaValidationSchemas:getSchemaValidationSchemas": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationSchemas = cloudflare.getSchemaValidationSchemas({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    schemaId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    omitSource: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_schemas = cloudflare.get_schema_validation_schemas(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    schema_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    omit_source=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationSchemas = Cloudflare.Index.GetSchemaValidationSchemas.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SchemaId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        OmitSource = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSchemaValidationSchemas(ctx, \u0026cloudflare.LookupSchemaValidationSchemasArgs{\n\t\t\tZoneId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSchemaId:   pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tOmitSource: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSchemaValidationSchemasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSchemaValidationSchemas = CloudflareFunctions.getSchemaValidationSchemas(GetSchemaValidationSchemasArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .schemaId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .omitSource(true)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSchemaValidationSchemas:\n    fn::invoke:\n      function: cloudflare:getSchemaValidationSchemas\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        schemaId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        omitSource: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSchemaValidationSchemas.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getSchemaValidationSchemasFilter:getSchemaValidationSchemasFilter"
                    },
                    "omitSource": {
                        "type": "boolean",
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n"
                    },
                    "schemaId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSchemaValidationSchemas.\n",
                "properties": {
                    "createdAt": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getSchemaValidationSchemasFilter:getSchemaValidationSchemasFilter"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "kind": {
                        "description": "The kind of the schema\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"openapiV3\"\" pulumi-lang-dotnet=\"\"OpenapiV3\"\" pulumi-lang-go=\"\"openapiV3\"\" pulumi-lang-python=\"\"openapi_v3\"\" pulumi-lang-yaml=\"\"openapiV3\"\" pulumi-lang-java=\"\"openapiV3\"\"\u003e\"openapiV3\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A human-readable name for the schema\n",
                        "type": "string"
                    },
                    "omitSource": {
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n",
                        "type": "boolean"
                    },
                    "schemaId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "source": {
                        "description": "The raw schema, e.g., the OpenAPI schema, either as JSON or YAML\n",
                        "type": "string"
                    },
                    "validationEnabled": {
                        "description": "An indicator if this schema is enabled\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "id",
                    "kind",
                    "name",
                    "omitSource",
                    "schemaId",
                    "source",
                    "validationEnabled"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSchemaValidationSchemasList:getSchemaValidationSchemasList": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationSchemasList = cloudflare.getSchemaValidationSchemasList({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    validationEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_schemas_list = cloudflare.get_schema_validation_schemas_list(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    validation_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationSchemasList = Cloudflare.Index.GetSchemaValidationSchemasList.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ValidationEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSchemaValidationSchemasList(ctx, \u0026cloudflare.LookupSchemaValidationSchemasListArgs{\n\t\t\tZoneId:            pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tValidationEnabled: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSchemaValidationSchemasListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSchemaValidationSchemasList = CloudflareFunctions.getSchemaValidationSchemasList(GetSchemaValidationSchemasListArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .validationEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSchemaValidationSchemasList:\n    fn::invoke:\n      function: cloudflare:getSchemaValidationSchemasList\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        validationEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSchemaValidationSchemasList.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "omitSource": {
                        "type": "boolean",
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n"
                    },
                    "validationEnabled": {
                        "type": "boolean",
                        "description": "Filter for enabled schemas\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSchemaValidationSchemasList.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "omitSource": {
                        "description": "Omit the source-files of schemas and only retrieve their meta-data.\n",
                        "type": "boolean"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSchemaValidationSchemasListResult:getSchemaValidationSchemasListResult"
                        },
                        "type": "array"
                    },
                    "validationEnabled": {
                        "description": "Filter for enabled schemas\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "omitSource",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSchemaValidationSettings:getSchemaValidationSettings": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSchemaValidationSettings = cloudflare.getSchemaValidationSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_schema_validation_settings = cloudflare.get_schema_validation_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSchemaValidationSettings = Cloudflare.Index.GetSchemaValidationSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSchemaValidationSettings(ctx, \u0026cloudflare.LookupSchemaValidationSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSchemaValidationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSchemaValidationSettings = CloudflareFunctions.getSchemaValidationSettings(GetSchemaValidationSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSchemaValidationSettings:\n    fn::invoke:\n      function: cloudflare:getSchemaValidationSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSchemaValidationSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSchemaValidationSettings.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "validationDefaultMitigationAction": {
                        "description": "The default mitigation action used\n",
                        "type": "string"
                    },
                    "validationOverrideMitigationAction": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "validationDefaultMitigationAction",
                    "validationOverrideMitigationAction",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSnippet:getSnippet": {
            "description": "Accepted Permissions\n\n- `Snippets Read`\n- `Snippets Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSnippet = cloudflare.getSnippet({\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n    snippetName: \"my_snippet\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_snippet = cloudflare.get_snippet(zone_id=\"9f1839b6152d298aca64c4e906b6d074\",\n    snippet_name=\"my_snippet\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSnippet = Cloudflare.Index.GetSnippet.Invoke(new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n        SnippetName = \"my_snippet\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSnippet(ctx, \u0026cloudflare.LookupSnippetArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t\tSnippetName: \"my_snippet\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSnippetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSnippet = CloudflareFunctions.getSnippet(GetSnippetArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .snippetName(\"my_snippet\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSnippet:\n    fn::invoke:\n      function: cloudflare:getSnippet\n      arguments:\n        zoneId: 9f1839b6152d298aca64c4e906b6d074\n        snippetName: my_snippet\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSnippet.\n",
                "properties": {
                    "snippetName": {
                        "type": "string",
                        "description": "Identify the snippet.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Use this field to specify the unique ID of the zone.\n"
                    }
                },
                "type": "object",
                "required": [
                    "snippetName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getSnippet.\n",
                "properties": {
                    "createdOn": {
                        "description": "Indicates when the snippet was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Indicates when the snippet was last modified.\n",
                        "type": "string"
                    },
                    "snippetName": {
                        "description": "Identify the snippet.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Use this field to specify the unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "modifiedOn",
                    "snippetName",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSnippetList:getSnippetList": {
            "description": "Accepted Permissions\n\n- `Snippets Read`\n- `Snippets Write`\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSnippetList.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Use this field to specify the unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSnippetList.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSnippetListResult:getSnippetListResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Use this field to specify the unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSnippetRulesList:getSnippetRulesList": {
            "inputs": {
                "description": "A collection of arguments for invoking getSnippetRulesList.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object",
                "required": [
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getSnippetRulesList.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSnippetRulesListResult:getSnippetRulesListResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSnippets:getSnippets": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSnippets = cloudflare.getSnippets({\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_snippets = cloudflare.get_snippets(zone_id=\"9f1839b6152d298aca64c4e906b6d074\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSnippets = Cloudflare.Index.GetSnippets.Invoke(new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSnippets(ctx, \u0026cloudflare.LookupSnippetsArgs{\n\t\t\tZoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSnippetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSnippets = CloudflareFunctions.getSnippets(GetSnippetsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSnippets:\n    fn::invoke:\n      function: cloudflare:getSnippets\n      arguments:\n        zoneId: 9f1839b6152d298aca64c4e906b6d074\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSnippets.\n",
                "properties": {
                    "snippetName": {
                        "type": "string",
                        "description": "The identifying name of the snippet.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object",
                "required": [
                    "snippetName",
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getSnippets.\n",
                "properties": {
                    "createdOn": {
                        "description": "The timestamp of when the snippet was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "The timestamp of when the snippet was last modified.\n",
                        "type": "string"
                    },
                    "snippetName": {
                        "description": "The identifying name of the snippet.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "modifiedOn",
                    "snippetName",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSnippetsList:getSnippetsList": {
            "inputs": {
                "description": "A collection of arguments for invoking getSnippetsList.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object",
                "required": [
                    "zoneId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getSnippetsList.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSnippetsListResult:getSnippetsListResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "zoneId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSpectrumApplication:getSpectrumApplication": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSpectrumApplication = cloudflare.getSpectrumApplication({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    appId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_spectrum_application = cloudflare.get_spectrum_application(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    app_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSpectrumApplication = Cloudflare.Index.GetSpectrumApplication.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AppId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSpectrumApplication(ctx, \u0026cloudflare.LookupSpectrumApplicationArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAppId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSpectrumApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSpectrumApplication = CloudflareFunctions.getSpectrumApplication(GetSpectrumApplicationArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .appId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSpectrumApplication:\n    fn::invoke:\n      function: cloudflare:getSpectrumApplication\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        appId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSpectrumApplication.\n",
                "properties": {
                    "appId": {
                        "type": "string",
                        "description": "App identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getSpectrumApplicationFilter:getSpectrumApplicationFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Zone identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSpectrumApplication.\n",
                "properties": {
                    "appId": {
                        "description": "App identifier.\n",
                        "type": "string"
                    },
                    "argoSmartRouting": {
                        "description": "Enables Argo Smart Routing for this application.\nNotes: Only available for TCP applications with\u003cspan pulumi-lang-nodejs=\" trafficType \" pulumi-lang-dotnet=\" TrafficType \" pulumi-lang-go=\" trafficType \" pulumi-lang-python=\" traffic_type \" pulumi-lang-yaml=\" trafficType \" pulumi-lang-java=\" trafficType \"\u003e trafficType \u003c/span\u003eset to \"direct\".\n",
                        "type": "boolean"
                    },
                    "createdOn": {
                        "description": "When the Application was created.\n",
                        "type": "string"
                    },
                    "dns": {
                        "$ref": "#/types/cloudflare:index/getSpectrumApplicationDns:getSpectrumApplicationDns",
                        "description": "The name and type of DNS record for the Spectrum application.\n"
                    },
                    "edgeIps": {
                        "$ref": "#/types/cloudflare:index/getSpectrumApplicationEdgeIps:getSpectrumApplicationEdgeIps",
                        "description": "The anycast edge IP configuration for the hostname of this application.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getSpectrumApplicationFilter:getSpectrumApplicationFilter"
                    },
                    "id": {
                        "description": "App identifier.\n",
                        "type": "string"
                    },
                    "ipFirewall": {
                        "description": "Enables IP Access Rules for this application.\nNotes: Only available for TCP applications.\n",
                        "type": "boolean"
                    },
                    "modifiedOn": {
                        "description": "When the Application was last modified.\n",
                        "type": "string"
                    },
                    "originDirects": {
                        "description": "List of origin IP addresses. Array may contain multiple IP addresses for load balancing.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "originDns": {
                        "$ref": "#/types/cloudflare:index/getSpectrumApplicationOriginDns:getSpectrumApplicationOriginDns",
                        "description": "The name and type of DNS record for the Spectrum application.\n"
                    },
                    "originPort": {
                        "$ref": "pulumi.json#/Any",
                        "description": "The destination port at the origin. Only specified in conjunction with origin_dns. May use an integer to specify a single origin port, for example \u003cspan pulumi-lang-nodejs=\"`1000`\" pulumi-lang-dotnet=\"`1000`\" pulumi-lang-go=\"`1000`\" pulumi-lang-python=\"`1000`\" pulumi-lang-yaml=\"`1000`\" pulumi-lang-java=\"`1000`\"\u003e`1000`\u003c/span\u003e, or a string to specify a range of origin ports, for example `\"1000-2000\"`.\nNotes: If specifying a port range, the number of ports in the range must match the number of ports specified in the \"protocol\" field.\n"
                    },
                    "protocol": {
                        "description": "The port configuration at Cloudflare's edge. May specify a single port, for example `\"tcp/1000\"`, or a range of ports, for example `\"tcp/1000-2000\"`.\n",
                        "type": "string"
                    },
                    "proxyProtocol": {
                        "description": "Enables Proxy Protocol to the origin. Refer to [Enable Proxy protocol](https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/) for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol.\nAvailable values: \"off\", \"v1\", \"v2\", \"simple\".\n",
                        "type": "string"
                    },
                    "tls": {
                        "description": "The type of TLS termination associated with the application.\nAvailable values: \"off\", \"flexible\", \"full\", \"strict\".\n",
                        "type": "string"
                    },
                    "trafficType": {
                        "description": "Determines how data travels from the edge to your origin. When set to \"direct\", Spectrum will send traffic directly to your origin, and the application's type is derived from the \u003cspan pulumi-lang-nodejs=\"`protocol`\" pulumi-lang-dotnet=\"`Protocol`\" pulumi-lang-go=\"`protocol`\" pulumi-lang-python=\"`protocol`\" pulumi-lang-yaml=\"`protocol`\" pulumi-lang-java=\"`protocol`\"\u003e`protocol`\u003c/span\u003e. When set to \"http\" or \"https\", Spectrum will apply Cloudflare's HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly.\nAvailable values: \"direct\", \"http\", \"https\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Zone identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "argoSmartRouting",
                    "createdOn",
                    "dns",
                    "edgeIps",
                    "id",
                    "ipFirewall",
                    "modifiedOn",
                    "originDirects",
                    "originDns",
                    "originPort",
                    "protocol",
                    "proxyProtocol",
                    "tls",
                    "trafficType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSpectrumApplications:getSpectrumApplications": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSpectrumApplications = cloudflare.getSpectrumApplications({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_spectrum_applications = cloudflare.get_spectrum_applications(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSpectrumApplications = Cloudflare.Index.GetSpectrumApplications.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSpectrumApplications(ctx, \u0026cloudflare.LookupSpectrumApplicationsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSpectrumApplicationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSpectrumApplications = CloudflareFunctions.getSpectrumApplications(GetSpectrumApplicationsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSpectrumApplications:\n    fn::invoke:\n      function: cloudflare:getSpectrumApplications\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSpectrumApplications.\n",
                "properties": {
                    "direction": {
                        "type": "string",
                        "description": "Sets the direction by which results are ordered.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Application field by which results are ordered.\nAvailable values: \"protocol\", \"app*id\", \"created*on\", \u003cspan pulumi-lang-nodejs=\"\"modifiedOn\"\" pulumi-lang-dotnet=\"\"ModifiedOn\"\" pulumi-lang-go=\"\"modifiedOn\"\" pulumi-lang-python=\"\"modified_on\"\" pulumi-lang-yaml=\"\"modifiedOn\"\" pulumi-lang-java=\"\"modifiedOn\"\"\u003e\"modifiedOn\"\u003c/span\u003e, \"dns\".\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Zone identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSpectrumApplications.\n",
                "properties": {
                    "direction": {
                        "description": "Sets the direction by which results are ordered.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "Application field by which results are ordered.\nAvailable values: \"protocol\", \"app*id\", \"created*on\", \u003cspan pulumi-lang-nodejs=\"\"modifiedOn\"\" pulumi-lang-dotnet=\"\"ModifiedOn\"\" pulumi-lang-go=\"\"modifiedOn\"\" pulumi-lang-python=\"\"modified_on\"\" pulumi-lang-yaml=\"\"modifiedOn\"\" pulumi-lang-java=\"\"modifiedOn\"\"\u003e\"modifiedOn\"\u003c/span\u003e, \"dns\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSpectrumApplicationsResult:getSpectrumApplicationsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Zone identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "direction",
                    "order",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSsoConnector:getSsoConnector": {
            "description": "Accepted Permissions\n\n- `SSO Connector Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSsoConnector = cloudflare.getSsoConnector({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    ssoConnectorId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_sso_connector = cloudflare.get_sso_connector(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    sso_connector_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSsoConnector = Cloudflare.Index.GetSsoConnector.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SsoConnectorId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSsoConnector(ctx, \u0026cloudflare.LookupSsoConnectorArgs{\n\t\t\tAccountId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSsoConnectorId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSsoConnectorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSsoConnector = CloudflareFunctions.getSsoConnector(GetSsoConnectorArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .ssoConnectorId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSsoConnector:\n    fn::invoke:\n      function: cloudflare:getSsoConnector\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        ssoConnectorId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSsoConnector.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "ssoConnectorId": {
                        "type": "string",
                        "description": "SSO Connector identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "ssoConnectorId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getSsoConnector.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "Timestamp for the creation of the SSO connector\n",
                        "type": "string"
                    },
                    "emailDomain": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "id": {
                        "description": "SSO Connector identifier tag.\n",
                        "type": "string"
                    },
                    "ssoConnectorId": {
                        "description": "SSO Connector identifier tag.\n",
                        "type": "string"
                    },
                    "updatedOn": {
                        "description": "Timestamp for the last update of the SSO connector\n",
                        "type": "string"
                    },
                    "useFedrampLanguage": {
                        "description": "Controls the display of FedRAMP language to the user during SSO login\n",
                        "type": "boolean"
                    },
                    "verification": {
                        "$ref": "#/types/cloudflare:index/getSsoConnectorVerification:getSsoConnectorVerification"
                    }
                },
                "required": [
                    "createdOn",
                    "emailDomain",
                    "enabled",
                    "id",
                    "ssoConnectorId",
                    "updatedOn",
                    "useFedrampLanguage",
                    "verification"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getSsoConnectors:getSsoConnectors": {
            "description": "Accepted Permissions\n\n- `SSO Connector Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleSsoConnectors = cloudflare.getSsoConnectors({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_sso_connectors = cloudflare.get_sso_connectors(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleSsoConnectors = Cloudflare.Index.GetSsoConnectors.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetSsoConnectors(ctx, \u0026cloudflare.LookupSsoConnectorsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetSsoConnectorsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleSsoConnectors = CloudflareFunctions.getSsoConnectors(GetSsoConnectorsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleSsoConnectors:\n    fn::invoke:\n      function: cloudflare:getSsoConnectors\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getSsoConnectors.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getSsoConnectors.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getSsoConnectorsResult:getSsoConnectorsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStream:getStream": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStream = cloudflare.getStream({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream = cloudflare.get_stream(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStream = Cloudflare.Index.GetStream.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStream(ctx, \u0026cloudflare.LookupStreamArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStream = CloudflareFunctions.getStream(GetStreamArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStream:\n    fn::invoke:\n      function: cloudflare:getStream\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        identifier: ea95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStream.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getStream.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "allowedOrigins": {
                        "description": "Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "clippedFrom": {
                        "description": "The unique identifier of the source video this video was clipped from.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and time the media item was created.\n",
                        "type": "string"
                    },
                    "creator": {
                        "description": "A user-defined identifier for the media creator.\n",
                        "type": "string"
                    },
                    "duration": {
                        "description": "The duration of the video in seconds. A value of `-1` means the duration is unknown. The duration becomes available after the upload and before the video is ready.\n",
                        "type": "number"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "A Cloudflare-generated unique identifier for a media item.\n",
                        "type": "string"
                    },
                    "input": {
                        "$ref": "#/types/cloudflare:index/getStreamInput:getStreamInput"
                    },
                    "liveInput": {
                        "description": "The live input ID used to upload a video with Stream Live.\n",
                        "type": "string"
                    },
                    "maxDurationSeconds": {
                        "description": "The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown.\n",
                        "type": "integer"
                    },
                    "maxSizeBytes": {
                        "description": "The maximum size in bytes for the video upload.\n",
                        "type": "integer"
                    },
                    "meta": {
                        "description": "A user modifiable key-value store used to reference other systems of record for managing videos.\n",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the media item was last modified.\n",
                        "type": "string"
                    },
                    "playback": {
                        "$ref": "#/types/cloudflare:index/getStreamPlayback:getStreamPlayback"
                    },
                    "preview": {
                        "description": "The video's preview page URI. This field is omitted until encoding is complete.\n",
                        "type": "string"
                    },
                    "publicDetails": {
                        "$ref": "#/types/cloudflare:index/getStreamPublicDetails:getStreamPublicDetails",
                        "description": "Public details for the video including title, share link, channel link, and logo.\n"
                    },
                    "readyToStream": {
                        "description": "Indicates whether the video is playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n",
                        "type": "boolean"
                    },
                    "readyToStreamAt": {
                        "description": "Indicates the time at which the video became playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.\n",
                        "type": "string"
                    },
                    "requireSignedUrls": {
                        "description": "Indicates whether the video can be a accessed using the UID. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, a signed token must be generated with a signing key to view the video.\n",
                        "type": "boolean"
                    },
                    "scheduledDeletion": {
                        "description": "Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time.\n",
                        "type": "string"
                    },
                    "size": {
                        "description": "The size of the media item in bytes.\n",
                        "type": "number"
                    },
                    "status": {
                        "$ref": "#/types/cloudflare:index/getStreamStatus:getStreamStatus",
                        "description": "Specifies a detailed status for a video. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, the \u003cspan pulumi-lang-nodejs=\"`step`\" pulumi-lang-dotnet=\"`Step`\" pulumi-lang-go=\"`step`\" pulumi-lang-python=\"`step`\" pulumi-lang-yaml=\"`step`\" pulumi-lang-java=\"`step`\"\u003e`step`\u003c/span\u003e field returns \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`manifest`\" pulumi-lang-dotnet=\"`Manifest`\" pulumi-lang-go=\"`manifest`\" pulumi-lang-python=\"`manifest`\" pulumi-lang-yaml=\"`manifest`\" pulumi-lang-java=\"`manifest`\"\u003e`manifest`\u003c/span\u003e. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`inprogress`\" pulumi-lang-dotnet=\"`Inprogress`\" pulumi-lang-go=\"`inprogress`\" pulumi-lang-python=\"`inprogress`\" pulumi-lang-yaml=\"`inprogress`\" pulumi-lang-java=\"`inprogress`\"\u003e`inprogress`\u003c/span\u003e, `pctComplete` returns a number between 0 and 100 to indicate the approximate percent of completion. If the \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, `errorReasonCode` and `errorReasonText` provide additional details.\n"
                    },
                    "thumbnail": {
                        "description": "The media item's thumbnail URI. This field is omitted until encoding is complete.\n",
                        "type": "string"
                    },
                    "thumbnailTimestampPct": {
                        "description": "The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video.\n",
                        "type": "number"
                    },
                    "uid": {
                        "description": "A Cloudflare-generated unique identifier for a media item.\n",
                        "type": "string"
                    },
                    "uploadExpiry": {
                        "description": "The date and time when the video upload URL is no longer valid for direct user uploads.\n",
                        "type": "string"
                    },
                    "uploaded": {
                        "description": "The date and time the media item was uploaded.\n",
                        "type": "string"
                    },
                    "watermark": {
                        "$ref": "#/types/cloudflare:index/getStreamWatermark:getStreamWatermark"
                    }
                },
                "required": [
                    "allowedOrigins",
                    "clippedFrom",
                    "created",
                    "creator",
                    "duration",
                    "identifier",
                    "input",
                    "liveInput",
                    "maxDurationSeconds",
                    "maxSizeBytes",
                    "meta",
                    "modified",
                    "playback",
                    "preview",
                    "publicDetails",
                    "readyToStream",
                    "readyToStreamAt",
                    "requireSignedUrls",
                    "scheduledDeletion",
                    "size",
                    "status",
                    "thumbnail",
                    "thumbnailTimestampPct",
                    "uid",
                    "uploadExpiry",
                    "uploaded",
                    "watermark",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamAudioTrack:getStreamAudioTrack": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamAudioTrack = cloudflare.getStreamAudioTrack({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_audio_track = cloudflare.get_stream_audio_track(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamAudioTrack = Cloudflare.Index.GetStreamAudioTrack.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamAudioTrack(ctx, \u0026cloudflare.LookupStreamAudioTrackArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamAudioTrackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamAudioTrack = CloudflareFunctions.getStreamAudioTrack(GetStreamAudioTrackArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamAudioTrack:\n    fn::invoke:\n      function: cloudflare:getStreamAudioTrack\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        identifier: ea95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamAudioTrack.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getStreamAudioTrack.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "audios": {
                        "description": "Array of audio tracks for the video.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getStreamAudioTrackAudio:getStreamAudioTrackAudio"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "A Cloudflare-generated unique identifier for a media item.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "audios",
                    "identifier",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamCaptionLanguage:getStreamCaptionLanguage": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamCaptionLanguage = cloudflare.getStreamCaptionLanguage({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n    language: \"tr\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_caption_language = cloudflare.get_stream_caption_language(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\",\n    language=\"tr\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamCaptionLanguage = Cloudflare.Index.GetStreamCaptionLanguage.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n        Language = \"tr\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamCaptionLanguage(ctx, \u0026cloudflare.LookupStreamCaptionLanguageArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n\t\t\tLanguage:   \"tr\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamCaptionLanguageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamCaptionLanguage = CloudflareFunctions.getStreamCaptionLanguage(GetStreamCaptionLanguageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .language(\"tr\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamCaptionLanguage:\n    fn::invoke:\n      function: cloudflare:getStreamCaptionLanguage\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        identifier: ea95132c15732412d22c1476fa83f27a\n        language: tr\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamCaptionLanguage.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    },
                    "language": {
                        "type": "string",
                        "description": "The language tag in BCP 47 format.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier",
                    "language"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getStreamCaptionLanguage.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "generated": {
                        "description": "Whether the caption was generated via AI.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "A Cloudflare-generated unique identifier for a media item.\n",
                        "type": "string"
                    },
                    "label": {
                        "description": "The language label displayed in the native language to users.\n",
                        "type": "string"
                    },
                    "language": {
                        "description": "The language tag in BCP 47 format.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "The status of a generated caption.\nAvailable values: \"ready\", \"inprogress\", \"error\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "generated",
                    "identifier",
                    "label",
                    "language",
                    "status",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamDownload:getStreamDownload": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamDownload = cloudflare.getStreamDownload({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_download = cloudflare.get_stream_download(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamDownload = Cloudflare.Index.GetStreamDownload.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamDownload(ctx, \u0026cloudflare.LookupStreamDownloadArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamDownloadArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamDownload = CloudflareFunctions.getStreamDownload(GetStreamDownloadArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamDownload:\n    fn::invoke:\n      function: cloudflare:getStreamDownload\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        identifier: ea95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamDownload.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "A Cloudflare-generated unique identifier for a media item.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getStreamDownload.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "A Cloudflare-generated unique identifier for a media item.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "identifier",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamKey:getStreamKey": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamKey = cloudflare.getStreamKey({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_key = cloudflare.get_stream_key(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamKey = Cloudflare.Index.GetStreamKey.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamKey(ctx, \u0026cloudflare.LookupStreamKeyArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamKey = CloudflareFunctions.getStreamKey(GetStreamKeyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamKey:\n    fn::invoke:\n      function: cloudflare:getStreamKey\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamKey.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getStreamKey.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and time a signing key was created.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "keyId": {
                        "description": "The unique identifier for the signing key.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "created",
                    "id",
                    "keyId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamLiveInput:getStreamLiveInput": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamLiveInput = cloudflare.getStreamLiveInput({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    liveInputIdentifier: \"66be4bf738797e01e1fca35a7bdecdcd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_live_input = cloudflare.get_stream_live_input(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    live_input_identifier=\"66be4bf738797e01e1fca35a7bdecdcd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamLiveInput = Cloudflare.Index.GetStreamLiveInput.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        LiveInputIdentifier = \"66be4bf738797e01e1fca35a7bdecdcd\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamLiveInput(ctx, \u0026cloudflare.LookupStreamLiveInputArgs{\n\t\t\tAccountId:           pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tLiveInputIdentifier: \"66be4bf738797e01e1fca35a7bdecdcd\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamLiveInputArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamLiveInput = CloudflareFunctions.getStreamLiveInput(GetStreamLiveInputArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .liveInputIdentifier(\"66be4bf738797e01e1fca35a7bdecdcd\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamLiveInput:\n    fn::invoke:\n      function: cloudflare:getStreamLiveInput\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        liveInputIdentifier: 66be4bf738797e01e1fca35a7bdecdcd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamLiveInput.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "liveInputIdentifier": {
                        "type": "string",
                        "description": "A unique identifier for a live input.\n"
                    }
                },
                "type": "object",
                "required": [
                    "liveInputIdentifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getStreamLiveInput.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and time the live input was created.\n",
                        "type": "string"
                    },
                    "deleteRecordingAfterDays": {
                        "description": "Indicates the number of days after which the live inputs recordings will be deleted. When a stream completes and the recording is ready, the value is used to calculate a scheduled deletion date for that recording. Omit the field to indicate no change, or include with a \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e value to remove an existing scheduled deletion.\n",
                        "type": "number"
                    },
                    "enabled": {
                        "description": "Indicates whether the live input is enabled and can accept streams.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "liveInputIdentifier": {
                        "description": "A unique identifier for a live input.\n",
                        "type": "string"
                    },
                    "meta": {
                        "description": "A user modifiable key-value store used to reference other systems of record for managing live inputs.\n",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the live input was last modified.\n",
                        "type": "string"
                    },
                    "recording": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputRecording:getStreamLiveInputRecording",
                        "description": "Records the input to a Cloudflare Stream video. Behavior depends on the mode. In most cases, the video will initially be viewable as a live video and transition to on-demand after a condition is satisfied.\n"
                    },
                    "rtmps": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputRtmps:getStreamLiveInputRtmps",
                        "description": "Details for streaming to an live input using RTMPS.\n"
                    },
                    "rtmpsPlayback": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputRtmpsPlayback:getStreamLiveInputRtmpsPlayback",
                        "description": "Details for playback from an live input using RTMPS.\n"
                    },
                    "srt": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputSrt:getStreamLiveInputSrt",
                        "description": "Details for streaming to a live input using SRT.\n"
                    },
                    "srtPlayback": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputSrtPlayback:getStreamLiveInputSrtPlayback",
                        "description": "Details for playback from an live input using SRT.\n"
                    },
                    "status": {
                        "description": "The connection status of a live input.\nAvailable values: \"connected\", \"reconnected\", \"reconnecting\", \"client*disconnect\", \"ttl*exceeded\", \"failed*to*connect\", \"failed*to*reconnect\", \"new*configuration*accepted\".\n",
                        "type": "string"
                    },
                    "uid": {
                        "description": "A unique identifier for a live input.\n",
                        "type": "string"
                    },
                    "webRtc": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputWebRtc:getStreamLiveInputWebRtc",
                        "description": "Details for streaming to a live input using WebRTC.\n"
                    },
                    "webRtcPlayback": {
                        "$ref": "#/types/cloudflare:index/getStreamLiveInputWebRtcPlayback:getStreamLiveInputWebRtcPlayback",
                        "description": "Details for playback from a live input using WebRTC.\n"
                    }
                },
                "required": [
                    "created",
                    "deleteRecordingAfterDays",
                    "enabled",
                    "liveInputIdentifier",
                    "meta",
                    "modified",
                    "recording",
                    "rtmps",
                    "rtmpsPlayback",
                    "srt",
                    "srtPlayback",
                    "status",
                    "uid",
                    "webRtc",
                    "webRtcPlayback",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamWatermark:getStreamWatermark": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamWatermark = cloudflare.getStreamWatermark({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"ea95132c15732412d22c1476fa83f27a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_watermark = cloudflare.get_stream_watermark(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"ea95132c15732412d22c1476fa83f27a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamWatermark = Cloudflare.Index.GetStreamWatermark.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"ea95132c15732412d22c1476fa83f27a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamWatermark(ctx, \u0026cloudflare.LookupStreamWatermarkArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: \"ea95132c15732412d22c1476fa83f27a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamWatermarkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamWatermark = CloudflareFunctions.getStreamWatermark(GetStreamWatermarkArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"ea95132c15732412d22c1476fa83f27a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamWatermark:\n    fn::invoke:\n      function: cloudflare:getStreamWatermark\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        identifier: ea95132c15732412d22c1476fa83f27a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamWatermark.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "The unique identifier for a watermark profile.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getStreamWatermark.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "created": {
                        "description": "The date and a time a watermark profile was created.\n",
                        "type": "string"
                    },
                    "downloadedFrom": {
                        "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.\n",
                        "type": "string"
                    },
                    "height": {
                        "description": "The height of the image in pixels.\n",
                        "type": "integer"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "The unique identifier for a watermark profile.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A short description of the watermark profile.\n",
                        "type": "string"
                    },
                    "opacity": {
                        "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.\n",
                        "type": "number"
                    },
                    "padding": {
                        "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.\n",
                        "type": "number"
                    },
                    "position": {
                        "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e. Note that \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e ignores the \u003cspan pulumi-lang-nodejs=\"`padding`\" pulumi-lang-dotnet=\"`Padding`\" pulumi-lang-go=\"`padding`\" pulumi-lang-python=\"`padding`\" pulumi-lang-yaml=\"`padding`\" pulumi-lang-java=\"`padding`\"\u003e`padding`\u003c/span\u003e parameter.\n",
                        "type": "string"
                    },
                    "scale": {
                        "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0`fills the entire video.\n",
                        "type": "number"
                    },
                    "size": {
                        "description": "The size of the image in bytes.\n",
                        "type": "number"
                    },
                    "uid": {
                        "description": "The unique identifier for a watermark profile.\n",
                        "type": "string"
                    },
                    "width": {
                        "description": "The width of the image in pixels.\n",
                        "type": "integer"
                    }
                },
                "required": [
                    "created",
                    "downloadedFrom",
                    "height",
                    "identifier",
                    "name",
                    "opacity",
                    "padding",
                    "position",
                    "scale",
                    "size",
                    "uid",
                    "width",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamWatermarks:getStreamWatermarks": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamWatermarks = cloudflare.getStreamWatermarks({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_watermarks = cloudflare.get_stream_watermarks(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamWatermarks = Cloudflare.Index.GetStreamWatermarks.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamWatermarks(ctx, \u0026cloudflare.LookupStreamWatermarksArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamWatermarksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamWatermarks = CloudflareFunctions.getStreamWatermarks(GetStreamWatermarksArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamWatermarks:\n    fn::invoke:\n      function: cloudflare:getStreamWatermarks\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamWatermarks.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getStreamWatermarks.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getStreamWatermarksResult:getStreamWatermarksResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreamWebhook:getStreamWebhook": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreamWebhook = cloudflare.getStreamWebhook({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_stream_webhook = cloudflare.get_stream_webhook(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreamWebhook = Cloudflare.Index.GetStreamWebhook.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreamWebhook(ctx, \u0026cloudflare.LookupStreamWebhookArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamWebhookArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreamWebhook = CloudflareFunctions.getStreamWebhook(GetStreamWebhookArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreamWebhook:\n    fn::invoke:\n      function: cloudflare:getStreamWebhook\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreamWebhook.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getStreamWebhook.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "modified": {
                        "description": "The date and time the webhook was last modified.\n",
                        "type": "string"
                    },
                    "notificationUrl": {
                        "description": "The URL where webhooks will be sent.\n",
                        "type": "string"
                    },
                    "secret": {
                        "description": "The secret used to verify webhook signatures.\n",
                        "secret": true,
                        "type": "string"
                    }
                },
                "required": [
                    "modified",
                    "notificationUrl",
                    "secret",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getStreams:getStreams": {
            "description": "Accepted Permissions\n\n- `Stream Read`\n- `Stream Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleStreams = cloudflare.getStreams({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"ea95132c15732412d22c1476fa83f27a\",\n    after: \"2019-12-27T18:11:19.117Z\",\n    before: \"2019-12-27T18:11:19.117Z\",\n    creator: \"creator-id_abcde12345\",\n    end: \"2014-01-02T02:20:00Z\",\n    limit: 1,\n    liveInputId: \"live_input_id\",\n    name: \"name\",\n    search: \"puppy.mp4\",\n    start: \"2014-01-02T02:20:00Z\",\n    status: \"inprogress\",\n    type: \"live\",\n    videoName: \"puppy.mp4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_streams = cloudflare.get_streams(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"ea95132c15732412d22c1476fa83f27a\",\n    after=\"2019-12-27T18:11:19.117Z\",\n    before=\"2019-12-27T18:11:19.117Z\",\n    creator=\"creator-id_abcde12345\",\n    end=\"2014-01-02T02:20:00Z\",\n    limit=1,\n    live_input_id=\"live_input_id\",\n    name=\"name\",\n    search=\"puppy.mp4\",\n    start=\"2014-01-02T02:20:00Z\",\n    status=\"inprogress\",\n    type=\"live\",\n    video_name=\"puppy.mp4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleStreams = Cloudflare.Index.GetStreams.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"ea95132c15732412d22c1476fa83f27a\",\n        After = \"2019-12-27T18:11:19.117Z\",\n        Before = \"2019-12-27T18:11:19.117Z\",\n        Creator = \"creator-id_abcde12345\",\n        End = \"2014-01-02T02:20:00Z\",\n        Limit = 1,\n        LiveInputId = \"live_input_id\",\n        Name = \"name\",\n        Search = \"puppy.mp4\",\n        Start = \"2014-01-02T02:20:00Z\",\n        Status = \"inprogress\",\n        Type = \"live\",\n        VideoName = \"puppy.mp4\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetStreams(ctx, \u0026cloudflare.LookupStreamsArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:          pulumi.StringRef(\"ea95132c15732412d22c1476fa83f27a\"),\n\t\t\tAfter:       pulumi.StringRef(\"2019-12-27T18:11:19.117Z\"),\n\t\t\tBefore:      pulumi.StringRef(\"2019-12-27T18:11:19.117Z\"),\n\t\t\tCreator:     pulumi.StringRef(\"creator-id_abcde12345\"),\n\t\t\tEnd:         pulumi.StringRef(\"2014-01-02T02:20:00Z\"),\n\t\t\tLimit:       pulumi.IntRef(1),\n\t\t\tLiveInputId: pulumi.StringRef(\"live_input_id\"),\n\t\t\tName:        pulumi.StringRef(\"name\"),\n\t\t\tSearch:      pulumi.StringRef(\"puppy.mp4\"),\n\t\t\tStart:       pulumi.StringRef(\"2014-01-02T02:20:00Z\"),\n\t\t\tStatus:      pulumi.StringRef(\"inprogress\"),\n\t\t\tType:        pulumi.StringRef(\"live\"),\n\t\t\tVideoName:   pulumi.StringRef(\"puppy.mp4\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetStreamsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleStreams = CloudflareFunctions.getStreams(GetStreamsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"ea95132c15732412d22c1476fa83f27a\")\n            .after(\"2019-12-27T18:11:19.117Z\")\n            .before(\"2019-12-27T18:11:19.117Z\")\n            .creator(\"creator-id_abcde12345\")\n            .end(\"2014-01-02T02:20:00Z\")\n            .limit(1)\n            .liveInputId(\"live_input_id\")\n            .name(\"name\")\n            .search(\"puppy.mp4\")\n            .start(\"2014-01-02T02:20:00Z\")\n            .status(\"inprogress\")\n            .type(\"live\")\n            .videoName(\"puppy.mp4\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleStreams:\n    fn::invoke:\n      function: cloudflare:getStreams\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: ea95132c15732412d22c1476fa83f27a\n        after: 2019-12-27T18:11:19.117Z\n        before: 2019-12-27T18:11:19.117Z\n        creator: creator-id_abcde12345\n        end: 2014-01-02T02:20:00Z\n        limit: 1\n        liveInputId: live_input_id\n        name: name\n        search: puppy.mp4\n        start: 2014-01-02T02:20:00Z\n        status: inprogress\n        type: live\n        videoName: puppy.mp4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getStreams.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The account identifier tag.\n"
                    },
                    "after": {
                        "type": "string",
                        "description": "Alias for 'start'. Returns videos created after this date/time (RFC 3339 format).\n"
                    },
                    "asc": {
                        "type": "boolean",
                        "description": "Lists videos in ascending order of creation.\n"
                    },
                    "before": {
                        "type": "string",
                        "description": "Alias for 'end'. Returns videos created before this date/time (RFC 3339 format).\n"
                    },
                    "creator": {
                        "type": "string",
                        "description": "A user-defined identifier for the media creator.\n"
                    },
                    "end": {
                        "type": "string",
                        "description": "Lists videos created before the specified date.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "Filter by video ID(s). Can be a single ID or a comma-separated list of IDs.\n"
                    },
                    "includeCounts": {
                        "type": "boolean",
                        "description": "Includes the total number of videos associated with the submitted query parameters.\n"
                    },
                    "limit": {
                        "type": "integer",
                        "description": "Maximum number of videos to return (default 1000, max 1000).\n"
                    },
                    "liveInputId": {
                        "type": "string",
                        "description": "Filter by live input ID to find videos associated with a specific live stream.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Filter by video name/UID(s). Can be a single name or a comma-separated list.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Provides a partial word match of the \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e key in the \u003cspan pulumi-lang-nodejs=\"`meta`\" pulumi-lang-dotnet=\"`Meta`\" pulumi-lang-go=\"`meta`\" pulumi-lang-python=\"`meta`\" pulumi-lang-yaml=\"`meta`\" pulumi-lang-java=\"`meta`\"\u003e`meta`\u003c/span\u003e field. Slow for medium to large video libraries. May be unavailable for very large libraries.\n"
                    },
                    "start": {
                        "type": "string",
                        "description": "Lists videos created after the specified date.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Specifies the processing status for all quality levels for a video.\nAvailable values: \"pendingupload\", \"downloading\", \"queued\", \"inprogress\", \"ready\", \"error\", \"live-inprogress\".\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Specifies whether the video is \u003cspan pulumi-lang-nodejs=\"`vod`\" pulumi-lang-dotnet=\"`Vod`\" pulumi-lang-go=\"`vod`\" pulumi-lang-python=\"`vod`\" pulumi-lang-yaml=\"`vod`\" pulumi-lang-java=\"`vod`\"\u003e`vod`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`live`\" pulumi-lang-dotnet=\"`Live`\" pulumi-lang-go=\"`live`\" pulumi-lang-python=\"`live`\" pulumi-lang-yaml=\"`live`\" pulumi-lang-java=\"`live`\"\u003e`live`\u003c/span\u003e.\n"
                    },
                    "videoName": {
                        "type": "string",
                        "description": "Provides a fast, exact string match on the \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e key in the \u003cspan pulumi-lang-nodejs=\"`meta`\" pulumi-lang-dotnet=\"`Meta`\" pulumi-lang-go=\"`meta`\" pulumi-lang-python=\"`meta`\" pulumi-lang-yaml=\"`meta`\" pulumi-lang-java=\"`meta`\"\u003e`meta`\u003c/span\u003e field.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getStreams.\n",
                "properties": {
                    "accountId": {
                        "description": "The account identifier tag.\n",
                        "type": "string"
                    },
                    "after": {
                        "description": "Alias for 'start'. Returns videos created after this date/time (RFC 3339 format).\n",
                        "type": "string"
                    },
                    "asc": {
                        "description": "Lists videos in ascending order of creation.\n",
                        "type": "boolean"
                    },
                    "before": {
                        "description": "Alias for 'end'. Returns videos created before this date/time (RFC 3339 format).\n",
                        "type": "string"
                    },
                    "creator": {
                        "description": "A user-defined identifier for the media creator.\n",
                        "type": "string"
                    },
                    "end": {
                        "description": "Lists videos created before the specified date.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Filter by video ID(s). Can be a single ID or a comma-separated list of IDs.\n",
                        "type": "string"
                    },
                    "includeCounts": {
                        "description": "Includes the total number of videos associated with the submitted query parameters.\n",
                        "type": "boolean"
                    },
                    "limit": {
                        "description": "Maximum number of videos to return (default 1000, max 1000).\n",
                        "type": "integer"
                    },
                    "liveInputId": {
                        "description": "Filter by live input ID to find videos associated with a specific live stream.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Filter by video name/UID(s). Can be a single name or a comma-separated list.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getStreamsResult:getStreamsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Provides a partial word match of the \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e key in the \u003cspan pulumi-lang-nodejs=\"`meta`\" pulumi-lang-dotnet=\"`Meta`\" pulumi-lang-go=\"`meta`\" pulumi-lang-python=\"`meta`\" pulumi-lang-yaml=\"`meta`\" pulumi-lang-java=\"`meta`\"\u003e`meta`\u003c/span\u003e field. Slow for medium to large video libraries. May be unavailable for very large libraries.\n",
                        "type": "string"
                    },
                    "start": {
                        "description": "Lists videos created after the specified date.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Specifies the processing status for all quality levels for a video.\nAvailable values: \"pendingupload\", \"downloading\", \"queued\", \"inprogress\", \"ready\", \"error\", \"live-inprogress\".\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Specifies whether the video is \u003cspan pulumi-lang-nodejs=\"`vod`\" pulumi-lang-dotnet=\"`Vod`\" pulumi-lang-go=\"`vod`\" pulumi-lang-python=\"`vod`\" pulumi-lang-yaml=\"`vod`\" pulumi-lang-java=\"`vod`\"\u003e`vod`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`live`\" pulumi-lang-dotnet=\"`Live`\" pulumi-lang-go=\"`live`\" pulumi-lang-python=\"`live`\" pulumi-lang-yaml=\"`live`\" pulumi-lang-java=\"`live`\"\u003e`live`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "videoName": {
                        "description": "Provides a fast, exact string match on the \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e key in the \u003cspan pulumi-lang-nodejs=\"`meta`\" pulumi-lang-dotnet=\"`Meta`\" pulumi-lang-go=\"`meta`\" pulumi-lang-python=\"`meta`\" pulumi-lang-yaml=\"`meta`\" pulumi-lang-java=\"`meta`\"\u003e`meta`\u003c/span\u003e field.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "asc",
                    "includeCounts",
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTieredCache:getTieredCache": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTieredCache = cloudflare.getTieredCache({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_tiered_cache = cloudflare.get_tiered_cache(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTieredCache = Cloudflare.Index.GetTieredCache.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTieredCache(ctx, \u0026cloudflare.LookupTieredCacheArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTieredCacheArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTieredCache = CloudflareFunctions.getTieredCache(GetTieredCacheArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTieredCache:\n    fn::invoke:\n      function: cloudflare:getTieredCache\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTieredCache.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTieredCache.\n",
                "properties": {
                    "editable": {
                        "description": "Whether the setting is editable.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time this setting was modified.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "Value of the Smart Tiered Cache zone setting.\nAvailable values: \"on\", \"off\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "id",
                    "modifiedOn",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTokenValidationConfig:getTokenValidationConfig": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTokenValidationConfig = cloudflare.getTokenValidationConfig({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    configId: \"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_token_validation_config = cloudflare.get_token_validation_config(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    config_id=\"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTokenValidationConfig = Cloudflare.Index.GetTokenValidationConfig.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ConfigId = \"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTokenValidationConfig(ctx, \u0026cloudflare.LookupTokenValidationConfigArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tConfigId: \"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTokenValidationConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTokenValidationConfig = CloudflareFunctions.getTokenValidationConfig(GetTokenValidationConfigArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .configId(\"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTokenValidationConfig:\n    fn::invoke:\n      function: cloudflare:getTokenValidationConfig\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        configId: 4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTokenValidationConfig.\n",
                "properties": {
                    "configId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "configId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getTokenValidationConfig.\n",
                "properties": {
                    "configId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "credentials": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationConfigCredentials:getTokenValidationConfigCredentials"
                    },
                    "description": {
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "tokenSources": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "tokenType": {
                        "description": "Available values: \"JWT\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "configId",
                    "createdAt",
                    "credentials",
                    "description",
                    "id",
                    "lastUpdated",
                    "title",
                    "tokenSources",
                    "tokenType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTokenValidationConfigs:getTokenValidationConfigs": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTokenValidationConfigs = cloudflare.getTokenValidationConfigs({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_token_validation_configs = cloudflare.get_token_validation_configs(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTokenValidationConfigs = Cloudflare.Index.GetTokenValidationConfigs.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTokenValidationConfigs(ctx, \u0026cloudflare.LookupTokenValidationConfigsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTokenValidationConfigsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTokenValidationConfigs = CloudflareFunctions.getTokenValidationConfigs(GetTokenValidationConfigsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTokenValidationConfigs:\n    fn::invoke:\n      function: cloudflare:getTokenValidationConfigs\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTokenValidationConfigs.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTokenValidationConfigs.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getTokenValidationConfigsResult:getTokenValidationConfigsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTokenValidationRules:getTokenValidationRules": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTokenValidationRules = cloudflare.getTokenValidationRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    ruleId: \"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_token_validation_rules = cloudflare.get_token_validation_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    rule_id=\"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTokenValidationRules = Cloudflare.Index.GetTokenValidationRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RuleId = \"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTokenValidationRules(ctx, \u0026cloudflare.LookupTokenValidationRulesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRuleId: pulumi.StringRef(\"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTokenValidationRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTokenValidationRules = CloudflareFunctions.getTokenValidationRules(GetTokenValidationRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .ruleId(\"4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTokenValidationRules:\n    fn::invoke:\n      function: cloudflare:getTokenValidationRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        ruleId: 4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTokenValidationRules.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesFilter:getTokenValidationRulesFilter"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTokenValidationRules.\n",
                "properties": {
                    "action": {
                        "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "description": "A human-readable description that gives more details than \u003cspan pulumi-lang-nodejs=\"`title`\" pulumi-lang-dotnet=\"`Title`\" pulumi-lang-go=\"`title`\" pulumi-lang-python=\"`title`\" pulumi-lang-yaml=\"`title`\" pulumi-lang-java=\"`title`\"\u003e`title`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Toggle rule on or off.\n",
                        "type": "boolean"
                    },
                    "expression": {
                        "description": "Rule expression. Requests that fail to match this expression will be subject to \u003cspan pulumi-lang-nodejs=\"`action`\" pulumi-lang-dotnet=\"`Action`\" pulumi-lang-go=\"`action`\" pulumi-lang-python=\"`action`\" pulumi-lang-yaml=\"`action`\" pulumi-lang-java=\"`action`\"\u003e`action`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesFilter:getTokenValidationRulesFilter"
                    },
                    "id": {
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "ruleId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "selector": {
                        "$ref": "#/types/cloudflare:index/getTokenValidationRulesSelector:getTokenValidationRulesSelector"
                    },
                    "title": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "action",
                    "createdAt",
                    "description",
                    "enabled",
                    "expression",
                    "id",
                    "lastUpdated",
                    "selector",
                    "title"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTokenValidationRulesList:getTokenValidationRulesList": {
            "description": "Accepted Permissions\n\n- `Account API Gateway`\n- `Account API Gateway Read`\n- `Domain API Gateway`\n- `Domain API Gateway Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTokenValidationRulesList = cloudflare.getTokenValidationRulesList({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    action: \"log\",\n    enabled: true,\n    host: \"www.example.com\",\n    hostname: \"www.example.com\",\n    ruleId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    tokenConfigurations: [\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_token_validation_rules_list = cloudflare.get_token_validation_rules_list(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    action=\"log\",\n    enabled=True,\n    host=\"www.example.com\",\n    hostname=\"www.example.com\",\n    rule_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    token_configurations=[\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTokenValidationRulesList = Cloudflare.Index.GetTokenValidationRulesList.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        Action = \"log\",\n        Enabled = true,\n        Host = \"www.example.com\",\n        Hostname = \"www.example.com\",\n        RuleId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        TokenConfigurations = new[]\n        {\n            \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTokenValidationRulesList(ctx, \u0026cloudflare.LookupTokenValidationRulesListArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tId:       pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tAction:   pulumi.StringRef(\"log\"),\n\t\t\tEnabled:  pulumi.BoolRef(true),\n\t\t\tHost:     pulumi.StringRef(\"www.example.com\"),\n\t\t\tHostname: pulumi.StringRef(\"www.example.com\"),\n\t\t\tRuleId:   pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tTokenConfigurations: []string{\n\t\t\t\t\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTokenValidationRulesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTokenValidationRulesList = CloudflareFunctions.getTokenValidationRulesList(GetTokenValidationRulesListArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .action(\"log\")\n            .enabled(true)\n            .host(\"www.example.com\")\n            .hostname(\"www.example.com\")\n            .ruleId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .tokenConfigurations(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTokenValidationRulesList:\n    fn::invoke:\n      function: cloudflare:getTokenValidationRulesList\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        action: log\n        enabled: true\n        host: www.example.com\n        hostname: www.example.com\n        ruleId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        tokenConfigurations:\n          - f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTokenValidationRulesList.\n",
                "properties": {
                    "action": {
                        "type": "string",
                        "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Toggle rule on or off.\n"
                    },
                    "host": {
                        "type": "string",
                        "description": "Select rules with this host in \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "Select rules with this host in \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "Select rules with these IDs.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "Select rules with these IDs.\n"
                    },
                    "tokenConfigurations": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Select rules using any of these token configurations.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTokenValidationRulesList.\n",
                "properties": {
                    "action": {
                        "description": "Action to take on requests that match operations included in \u003cspan pulumi-lang-nodejs=\"`selector`\" pulumi-lang-dotnet=\"`Selector`\" pulumi-lang-go=\"`selector`\" pulumi-lang-python=\"`selector`\" pulumi-lang-yaml=\"`selector`\" pulumi-lang-java=\"`selector`\"\u003e`selector`\u003c/span\u003e and fail \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e.\nAvailable values: \"log\", \"block\".\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Toggle rule on or off.\n",
                        "type": "boolean"
                    },
                    "host": {
                        "description": "Select rules with this host in \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "Select rules with this host in \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Select rules with these IDs.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getTokenValidationRulesListResult:getTokenValidationRulesListResult"
                        },
                        "type": "array"
                    },
                    "ruleId": {
                        "description": "Select rules with these IDs.\n",
                        "type": "string"
                    },
                    "tokenConfigurations": {
                        "description": "Select rules using any of these token configurations.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTotalTls:getTotalTls": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTotalTls = cloudflare.getTotalTls({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_total_tls = cloudflare.get_total_tls(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTotalTls = Cloudflare.Index.GetTotalTls.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTotalTls(ctx, \u0026cloudflare.LookupTotalTlsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTotalTlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTotalTls = CloudflareFunctions.getTotalTls(GetTotalTlsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTotalTls:\n    fn::invoke:\n      function: cloudflare:getTotalTls\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTotalTls.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTotalTls.\n",
                "properties": {
                    "certificateAuthority": {
                        "description": "The Certificate Authority that Total TLS certificates will be issued through.\nAvailable values: \"google\", \"lets*encrypt\", \"ssl*com\".\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "If enabled, Total TLS will order a hostname specific TLS certificate for any proxied A, AAAA, or CNAME record in your zone.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "validityPeriod": {
                        "description": "The validity period in days for the certificates ordered via Total TLS.\nAvailable values: 90.\n",
                        "type": "integer"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certificateAuthority",
                    "enabled",
                    "id",
                    "validityPeriod"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTurnstileWidget:getTurnstileWidget": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Turnstile Sites Read`\n- `Turnstile Sites Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTurnstileWidget = cloudflare.getTurnstileWidget({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    sitekey: \"0x4AAF00AAAABn0R22HWm-YUc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_turnstile_widget = cloudflare.get_turnstile_widget(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    sitekey=\"0x4AAF00AAAABn0R22HWm-YUc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTurnstileWidget = Cloudflare.Index.GetTurnstileWidget.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Sitekey = \"0x4AAF00AAAABn0R22HWm-YUc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTurnstileWidget(ctx, \u0026cloudflare.LookupTurnstileWidgetArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSitekey:   pulumi.StringRef(\"0x4AAF00AAAABn0R22HWm-YUc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTurnstileWidgetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTurnstileWidget = CloudflareFunctions.getTurnstileWidget(GetTurnstileWidgetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .sitekey(\"0x4AAF00AAAABn0R22HWm-YUc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTurnstileWidget:\n    fn::invoke:\n      function: cloudflare:getTurnstileWidget\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        sitekey: 0x4AAF00AAAABn0R22HWm-YUc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTurnstileWidget.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getTurnstileWidgetFilter:getTurnstileWidgetFilter"
                    },
                    "sitekey": {
                        "type": "string",
                        "description": "Widget item identifier tag.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTurnstileWidget.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "botFightMode": {
                        "description": "If bot*fight*mode is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, Cloudflare issues computationally\nexpensive challenges in response to malicious bots (ENT only).\n",
                        "type": "boolean"
                    },
                    "clearanceLevel": {
                        "description": "If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance,\nthis setting can determine the clearance level to be set\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"noClearance\"\" pulumi-lang-dotnet=\"\"NoClearance\"\" pulumi-lang-go=\"\"noClearance\"\" pulumi-lang-python=\"\"no_clearance\"\" pulumi-lang-yaml=\"\"noClearance\"\" pulumi-lang-java=\"\"noClearance\"\"\u003e\"noClearance\"\u003c/span\u003e, \"jschallenge\", \"managed\", \"interactive\".\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "When the widget was created.\n",
                        "type": "string"
                    },
                    "domains": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "ephemeralId": {
                        "description": "Return the Ephemeral ID in /siteverify (ENT only).\n",
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getTurnstileWidgetFilter:getTurnstileWidgetFilter"
                    },
                    "id": {
                        "description": "Widget item identifier tag.\n",
                        "type": "string"
                    },
                    "mode": {
                        "description": "Widget Mode\nAvailable values: \"non-interactive\", \"invisible\", \"managed\".\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "When the widget was modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Human readable widget name. Not unique. Cloudflare suggests that you\nset this to a meaningful string to make it easier to identify your\nwidget, and where it is used.\n",
                        "type": "string"
                    },
                    "offlabel": {
                        "description": "Do not show any Cloudflare branding on the widget (ENT only).\n",
                        "type": "boolean"
                    },
                    "region": {
                        "description": "Region where this widget can be used. This cannot be changed after creation.\nAvailable values: \"world\", \"china\".\n",
                        "type": "string"
                    },
                    "secret": {
                        "description": "Secret key for this widget.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "sitekey": {
                        "description": "Widget item identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "botFightMode",
                    "clearanceLevel",
                    "createdOn",
                    "domains",
                    "ephemeralId",
                    "id",
                    "mode",
                    "modifiedOn",
                    "name",
                    "offlabel",
                    "region",
                    "secret",
                    "sitekey"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getTurnstileWidgets:getTurnstileWidgets": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `Turnstile Sites Read`\n- `Turnstile Sites Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleTurnstileWidgets = cloudflare.getTurnstileWidgets({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    filter: \"name:my-widget\",\n    order: \"id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_turnstile_widgets = cloudflare.get_turnstile_widgets(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    filter=\"name:my-widget\",\n    order=\"id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleTurnstileWidgets = Cloudflare.Index.GetTurnstileWidgets.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        Filter = \"name:my-widget\",\n        Order = \"id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetTurnstileWidgets(ctx, \u0026cloudflare.LookupTurnstileWidgetsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection: pulumi.StringRef(\"asc\"),\n\t\t\tFilter:    pulumi.StringRef(\"name:my-widget\"),\n\t\t\tOrder:     pulumi.StringRef(\"id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetTurnstileWidgetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleTurnstileWidgets = CloudflareFunctions.getTurnstileWidgets(GetTurnstileWidgetsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .filter(\"name:my-widget\")\n            .order(\"id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleTurnstileWidgets:\n    fn::invoke:\n      function: cloudflare:getTurnstileWidgets\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        filter: name:my-widget\n        order: id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getTurnstileWidgets.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order widgets.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "filter": {
                        "type": "string",
                        "description": "Filter widgets by field using case-insensitive substring matching.\nFormat: `field:value`\n"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "order": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getTurnstileWidgets.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Direction to order widgets.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "filter": {
                        "description": "Filter widgets by field using case-insensitive substring matching.\nFormat: `field:value`\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "order": {
                        "type": "string"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getTurnstileWidgetsResult:getTurnstileWidgetsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUniversalSslSetting:getUniversalSslSetting": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUniversalSslSetting = cloudflare.getUniversalSslSetting({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_universal_ssl_setting = cloudflare.get_universal_ssl_setting(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUniversalSslSetting = Cloudflare.Index.GetUniversalSslSetting.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUniversalSslSetting(ctx, \u0026cloudflare.LookupUniversalSslSettingArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUniversalSslSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUniversalSslSetting = CloudflareFunctions.getUniversalSslSetting(GetUniversalSslSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUniversalSslSetting:\n    fn::invoke:\n      function: cloudflare:getUniversalSslSetting\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUniversalSslSetting.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getUniversalSslSetting.\n",
                "properties": {
                    "enabled": {
                        "description": "Disabling Universal SSL removes any currently active Universal SSL certificates for your zone from the edge and prevents any future Universal SSL certificates from being ordered. If there are no advanced certificates or custom certificates uploaded for the domain, visitors will be unable to access the domain over HTTPS.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "enabled",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUrlNormalizationSettings:getUrlNormalizationSettings": {
            "description": "Accepted Permissions\n\n- `Account Rulesets Read`\n- `Account Rulesets Write`\n- `Account WAF Read`\n- `Account WAF Write`\n- `Bot Management Read`\n- `Bot Management Write`\n- `Cache Settings Read`\n- `Cache Settings Write`\n- `Config Settings Read`\n- `Config Settings Write`\n- `Custom Errors Read`\n- `Custom Errors Write`\n- `Dynamic URL Redirects Read`\n- `Dynamic URL Redirects Write`\n- `HTTP DDoS Managed Ruleset Read`\n- `HTTP DDoS Managed Ruleset Write`\n- `L4 DDoS Managed Ruleset Read`\n- `L4 DDoS Managed Ruleset Write`\n- `Logs Read`\n- `Logs Write`\n- `Magic Firewall Read`\n- `Magic Firewall Write`\n- `Managed headers Read`\n- `Managed headers Write`\n- `Mass URL Redirects Read`\n- `Mass URL Redirects Write`\n- `Origin Read`\n- `Origin Write`\n- `Response Compression Read`\n- `Response Compression Write`\n- `Sanitize Read`\n- `Sanitize Write`\n- `Select Configuration Read`\n- `Select Configuration Write`\n- `Transform Rules Read`\n- `Transform Rules Write`\n- `Zone Transform Rules Read`\n- `Zone Transform Rules Write`\n- `Zone WAF Read`\n- `Zone WAF Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUrlNormalizationSettings = cloudflare.getUrlNormalizationSettings({\n    zoneId: \"9f1839b6152d298aca64c4e906b6d074\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_url_normalization_settings = cloudflare.get_url_normalization_settings(zone_id=\"9f1839b6152d298aca64c4e906b6d074\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUrlNormalizationSettings = Cloudflare.Index.GetUrlNormalizationSettings.Invoke(new()\n    {\n        ZoneId = \"9f1839b6152d298aca64c4e906b6d074\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUrlNormalizationSettings(ctx, \u0026cloudflare.LookupUrlNormalizationSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"9f1839b6152d298aca64c4e906b6d074\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUrlNormalizationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUrlNormalizationSettings = CloudflareFunctions.getUrlNormalizationSettings(GetUrlNormalizationSettingsArgs.builder()\n            .zoneId(\"9f1839b6152d298aca64c4e906b6d074\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUrlNormalizationSettings:\n    fn::invoke:\n      function: cloudflare:getUrlNormalizationSettings\n      arguments:\n        zoneId: 9f1839b6152d298aca64c4e906b6d074\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUrlNormalizationSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "The unique ID of the zone.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getUrlNormalizationSettings.\n",
                "properties": {
                    "id": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    },
                    "scope": {
                        "description": "The scope of the URL normalization.\nAvailable values: \"incoming\", \"both\", \"none\".\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "The type of URL normalization performed by Cloudflare.\nAvailable values: \"cloudflare\", \"rfc3986\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The unique ID of the zone.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "scope",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUser:getUser": {
            "description": "Accepted Permissions\n\n- `User Details Read`\n- `User Details Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUser = cloudflare.getUser({});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user = cloudflare.get_user()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUser = Cloudflare.Index.GetUser.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUser(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUser = CloudflareFunctions.getUser(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUser:\n    fn::invoke:\n      function: cloudflare:getUser\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "outputs": {
                "description": "A collection of values returned by getUser.\n",
                "properties": {
                    "betas": {
                        "description": "Lists the betas that the user is participating in.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "country": {
                        "description": "The country in which the user lives.\n",
                        "type": "string"
                    },
                    "firstName": {
                        "description": "User's first name\n",
                        "type": "string"
                    },
                    "hasBusinessZones": {
                        "description": "Indicates whether user has any business zones\n",
                        "type": "boolean"
                    },
                    "hasEnterpriseZones": {
                        "description": "Indicates whether user has any enterprise zones\n",
                        "type": "boolean"
                    },
                    "hasProZones": {
                        "description": "Indicates whether user has any pro zones\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier of the user.\n",
                        "type": "string"
                    },
                    "lastName": {
                        "description": "User's last name\n",
                        "type": "string"
                    },
                    "organizations": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getUserOrganization:getUserOrganization"
                        },
                        "type": "array"
                    },
                    "suspended": {
                        "description": "Indicates whether user has been suspended\n",
                        "type": "boolean"
                    },
                    "telephone": {
                        "description": "User's telephone number\n",
                        "type": "string"
                    },
                    "twoFactorAuthenticationEnabled": {
                        "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication.\n",
                        "type": "boolean"
                    },
                    "twoFactorAuthenticationLocked": {
                        "description": "Indicates whether two-factor authentication is required by one of the accounts that the user is a member of.\n",
                        "type": "boolean"
                    },
                    "zipcode": {
                        "description": "The zipcode or postal code where the user lives.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "betas",
                    "country",
                    "firstName",
                    "hasBusinessZones",
                    "hasEnterpriseZones",
                    "hasProZones",
                    "id",
                    "lastName",
                    "organizations",
                    "suspended",
                    "telephone",
                    "twoFactorAuthenticationEnabled",
                    "twoFactorAuthenticationLocked",
                    "zipcode"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUserAgentBlockingRule:getUserAgentBlockingRule": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserAgentBlockingRule = cloudflare.getUserAgentBlockingRule({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    uaRuleId: \"372e67954025e0ba6aaa6d586b9e0b59\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_agent_blocking_rule = cloudflare.get_user_agent_blocking_rule(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    ua_rule_id=\"372e67954025e0ba6aaa6d586b9e0b59\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserAgentBlockingRule = Cloudflare.Index.GetUserAgentBlockingRule.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        UaRuleId = \"372e67954025e0ba6aaa6d586b9e0b59\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUserAgentBlockingRule(ctx, \u0026cloudflare.LookupUserAgentBlockingRuleArgs{\n\t\t\tZoneId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tUaRuleId: pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b59\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUserAgentBlockingRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUserAgentBlockingRule = CloudflareFunctions.getUserAgentBlockingRule(GetUserAgentBlockingRuleArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .uaRuleId(\"372e67954025e0ba6aaa6d586b9e0b59\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUserAgentBlockingRule:\n    fn::invoke:\n      function: cloudflare:getUserAgentBlockingRule\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        uaRuleId: 372e67954025e0ba6aaa6d586b9e0b59\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUserAgentBlockingRule.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getUserAgentBlockingRuleFilter:getUserAgentBlockingRuleFilter"
                    },
                    "uaRuleId": {
                        "type": "string",
                        "description": "The unique identifier of the User Agent Blocking rule.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getUserAgentBlockingRule.\n",
                "properties": {
                    "configuration": {
                        "$ref": "#/types/cloudflare:index/getUserAgentBlockingRuleConfiguration:getUserAgentBlockingRuleConfiguration",
                        "description": "The configuration object for the current rule.\n"
                    },
                    "description": {
                        "description": "An informative summary of the rule.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getUserAgentBlockingRuleFilter:getUserAgentBlockingRuleFilter"
                    },
                    "id": {
                        "description": "The unique identifier of the User Agent Blocking rule.\n",
                        "type": "string"
                    },
                    "mode": {
                        "description": "The action to apply to a matched request.\nAvailable values: \"block\", \"challenge\", \"js*challenge\", \"managed*challenge\".\n",
                        "type": "string"
                    },
                    "paused": {
                        "description": "When true, indicates that the rule is currently paused.\n",
                        "type": "boolean"
                    },
                    "uaRuleId": {
                        "description": "The unique identifier of the User Agent Blocking rule.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "configuration",
                    "description",
                    "id",
                    "mode",
                    "paused"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUserAgentBlockingRules:getUserAgentBlockingRules": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserAgentBlockingRules = cloudflare.getUserAgentBlockingRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    description: \"abusive\",\n    paused: false,\n    userAgent: \"Safari\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_agent_blocking_rules = cloudflare.get_user_agent_blocking_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    description=\"abusive\",\n    paused=False,\n    user_agent=\"Safari\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserAgentBlockingRules = Cloudflare.Index.GetUserAgentBlockingRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Description = \"abusive\",\n        Paused = false,\n        UserAgent = \"Safari\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUserAgentBlockingRules(ctx, \u0026cloudflare.LookupUserAgentBlockingRulesArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDescription: pulumi.StringRef(\"abusive\"),\n\t\t\tPaused:      pulumi.BoolRef(false),\n\t\t\tUserAgent:   pulumi.StringRef(\"Safari\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUserAgentBlockingRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUserAgentBlockingRules = CloudflareFunctions.getUserAgentBlockingRules(GetUserAgentBlockingRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .description(\"abusive\")\n            .paused(false)\n            .userAgent(\"Safari\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUserAgentBlockingRules:\n    fn::invoke:\n      function: cloudflare:getUserAgentBlockingRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        description: abusive\n        paused: false\n        userAgent: Safari\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUserAgentBlockingRules.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "A string to search for in the description of existing rules.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "paused": {
                        "type": "boolean",
                        "description": "When true, indicates that the rule is currently paused.\n"
                    },
                    "userAgent": {
                        "type": "string",
                        "description": "A string to search for in the user agent values of existing rules.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getUserAgentBlockingRules.\n",
                "properties": {
                    "description": {
                        "description": "A string to search for in the description of existing rules.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "paused": {
                        "description": "When true, indicates that the rule is currently paused.\n",
                        "type": "boolean"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getUserAgentBlockingRulesResult:getUserAgentBlockingRulesResult"
                        },
                        "type": "array"
                    },
                    "userAgent": {
                        "description": "A string to search for in the user agent values of existing rules.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUserGroup:getUserGroup": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserGroup = cloudflare.getUserGroup({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    userGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_group = cloudflare.get_user_group(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    user_group_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserGroup = Cloudflare.Index.GetUserGroup.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        UserGroupId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUserGroup(ctx, \u0026cloudflare.LookupUserGroupArgs{\n\t\t\tAccountId:   \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tUserGroupId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUserGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUserGroup = CloudflareFunctions.getUserGroup(GetUserGroupArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .userGroupId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUserGroup:\n    fn::invoke:\n      function: cloudflare:getUserGroup\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        userGroupId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUserGroup.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getUserGroupFilter:getUserGroupFilter"
                    },
                    "userGroupId": {
                        "type": "string",
                        "description": "User Group identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "accountId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getUserGroup.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "Timestamp for the creation of the user group\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getUserGroupFilter:getUserGroupFilter"
                    },
                    "id": {
                        "description": "User Group identifier tag.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time the user group was modified.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Name of the user group.\n",
                        "type": "string"
                    },
                    "policies": {
                        "description": "Policies attached to the User group\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getUserGroupPolicy:getUserGroupPolicy"
                        },
                        "type": "array"
                    },
                    "userGroupId": {
                        "description": "User Group identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "accountId",
                    "createdOn",
                    "id",
                    "modifiedOn",
                    "name",
                    "policies"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUserGroupMembers:getUserGroupMembers": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserGroupMembers = cloudflare.getUserGroupMembers({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    userGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    fuzzyEmail: \"user@\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_group_members = cloudflare.get_user_group_members(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    user_group_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    fuzzy_email=\"user@\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserGroupMembers = Cloudflare.Index.GetUserGroupMembers.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        UserGroupId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        FuzzyEmail = \"user@\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUserGroupMembers(ctx, \u0026cloudflare.LookupUserGroupMembersArgs{\n\t\t\tAccountId:   \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tUserGroupId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tDirection:   pulumi.StringRef(\"asc\"),\n\t\t\tFuzzyEmail:  pulumi.StringRef(\"user@\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUserGroupMembersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUserGroupMembers = CloudflareFunctions.getUserGroupMembers(GetUserGroupMembersArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .userGroupId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .fuzzyEmail(\"user@\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUserGroupMembers:\n    fn::invoke:\n      function: cloudflare:getUserGroupMembers\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        userGroupId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        fuzzyEmail: user@\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUserGroupMembers.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "The sort order of returned user group members by email.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "fuzzyEmail": {
                        "type": "string",
                        "description": "A string used for filtering members by partial email match.\n"
                    },
                    "userGroupId": {
                        "type": "string",
                        "description": "User Group identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "accountId",
                    "userGroupId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getUserGroupMembers.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "The sort order of returned user group members by email.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "fuzzyEmail": {
                        "description": "A string used for filtering members by partial email match.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "User Group identifier tag.\n",
                        "type": "string"
                    },
                    "members": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getUserGroupMembersMember:getUserGroupMembersMember"
                        },
                        "type": "array"
                    },
                    "userGroupId": {
                        "description": "User Group identifier tag.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "accountId",
                    "direction",
                    "id",
                    "members",
                    "userGroupId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getUserGroups:getUserGroups": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n- `Account Settings Write`\n- `SCIM Provisioning`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleUserGroups = cloudflare.getUserGroups({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    id: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    fuzzyName: \"Foo\",\n    name: \"NameOfTheUserGroup\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_user_groups = cloudflare.get_user_groups(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    fuzzy_name=\"Foo\",\n    name=\"NameOfTheUserGroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleUserGroups = Cloudflare.Index.GetUserGroups.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Id = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        FuzzyName = \"Foo\",\n        Name = \"NameOfTheUserGroup\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetUserGroups(ctx, \u0026cloudflare.LookupUserGroupsArgs{\n\t\t\tAccountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t\tId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tFuzzyName: pulumi.StringRef(\"Foo\"),\n\t\t\tName:      pulumi.StringRef(\"NameOfTheUserGroup\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetUserGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleUserGroups = CloudflareFunctions.getUserGroups(GetUserGroupsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .id(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .fuzzyName(\"Foo\")\n            .name(\"NameOfTheUserGroup\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleUserGroups:\n    fn::invoke:\n      function: cloudflare:getUserGroups\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        id: 023e105f4ecef8ad9ca31a8372d0c353\n        fuzzyName: Foo\n        name: NameOfTheUserGroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getUserGroups.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier tag.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "The sort order of returned user groups by name (ascending or descending).\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "fuzzyName": {
                        "type": "string",
                        "description": "A string used for searching for user groups containing that substring.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "ID of the user group to be fetched.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the user group to be fetched.\n"
                    }
                },
                "type": "object",
                "required": [
                    "accountId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getUserGroups.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier tag.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "The sort order of returned user groups by name (ascending or descending).\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "fuzzyName": {
                        "description": "A string used for searching for user groups containing that substring.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "ID of the user group to be fetched.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Name of the user group to be fetched.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getUserGroupsResult:getUserGroupsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "accountId",
                    "direction",
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getVulnerabilityScannerCredential:getVulnerabilityScannerCredential": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerCredential = cloudflare.getVulnerabilityScannerCredential({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    credentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    credentialId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_credential = cloudflare.get_vulnerability_scanner_credential(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    credential_set_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    credential_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerCredential = Cloudflare.Index.GetVulnerabilityScannerCredential.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CredentialSetId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n        CredentialId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetVulnerabilityScannerCredential(ctx, \u0026cloudflare.LookupVulnerabilityScannerCredentialArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCredentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t\tCredentialId:    \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetVulnerabilityScannerCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleVulnerabilityScannerCredential = CloudflareFunctions.getVulnerabilityScannerCredential(GetVulnerabilityScannerCredentialArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .credentialSetId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .credentialId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleVulnerabilityScannerCredential:\n    fn::invoke:\n      function: cloudflare:getVulnerabilityScannerCredential\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        credentialSetId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n        credentialId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getVulnerabilityScannerCredential.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "credentialId": {
                        "type": "string"
                    },
                    "credentialSetId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "credentialId",
                    "credentialSetId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getVulnerabilityScannerCredential.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "credentialId": {
                        "type": "string"
                    },
                    "credentialSetId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "location": {
                        "description": "Where the credential is attached in outgoing requests.\nAvailable values: \"header\", \"cookie\".\n",
                        "type": "string"
                    },
                    "locationName": {
                        "description": "Name of the header or cookie where the credential is attached.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Human-readable name.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "credentialId",
                    "credentialSetId",
                    "id",
                    "location",
                    "locationName",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getVulnerabilityScannerCredentialSet:getVulnerabilityScannerCredentialSet": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerCredentialSet = cloudflare.getVulnerabilityScannerCredentialSet({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    credentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_credential_set = cloudflare.get_vulnerability_scanner_credential_set(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    credential_set_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerCredentialSet = Cloudflare.Index.GetVulnerabilityScannerCredentialSet.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CredentialSetId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetVulnerabilityScannerCredentialSet(ctx, \u0026cloudflare.LookupVulnerabilityScannerCredentialSetArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCredentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetVulnerabilityScannerCredentialSetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleVulnerabilityScannerCredentialSet = CloudflareFunctions.getVulnerabilityScannerCredentialSet(GetVulnerabilityScannerCredentialSetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .credentialSetId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleVulnerabilityScannerCredentialSet:\n    fn::invoke:\n      function: cloudflare:getVulnerabilityScannerCredentialSet\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        credentialSetId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getVulnerabilityScannerCredentialSet.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "credentialSetId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "credentialSetId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getVulnerabilityScannerCredentialSet.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "credentialSetId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Human-readable name.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "credentialSetId",
                    "id",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getVulnerabilityScannerCredentialSets:getVulnerabilityScannerCredentialSets": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerCredentialSets = cloudflare.getVulnerabilityScannerCredentialSets({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_credential_sets = cloudflare.get_vulnerability_scanner_credential_sets(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerCredentialSets = Cloudflare.Index.GetVulnerabilityScannerCredentialSets.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetVulnerabilityScannerCredentialSets(ctx, \u0026cloudflare.LookupVulnerabilityScannerCredentialSetsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetVulnerabilityScannerCredentialSetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleVulnerabilityScannerCredentialSets = CloudflareFunctions.getVulnerabilityScannerCredentialSets(GetVulnerabilityScannerCredentialSetsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleVulnerabilityScannerCredentialSets:\n    fn::invoke:\n      function: cloudflare:getVulnerabilityScannerCredentialSets\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getVulnerabilityScannerCredentialSets.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getVulnerabilityScannerCredentialSets.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getVulnerabilityScannerCredentialSetsResult:getVulnerabilityScannerCredentialSetsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getVulnerabilityScannerCredentials:getVulnerabilityScannerCredentials": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerCredentials = cloudflare.getVulnerabilityScannerCredentials({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    credentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_credentials = cloudflare.get_vulnerability_scanner_credentials(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    credential_set_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerCredentials = Cloudflare.Index.GetVulnerabilityScannerCredentials.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CredentialSetId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetVulnerabilityScannerCredentials(ctx, \u0026cloudflare.LookupVulnerabilityScannerCredentialsArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCredentialSetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetVulnerabilityScannerCredentialsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleVulnerabilityScannerCredentials = CloudflareFunctions.getVulnerabilityScannerCredentials(GetVulnerabilityScannerCredentialsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .credentialSetId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleVulnerabilityScannerCredentials:\n    fn::invoke:\n      function: cloudflare:getVulnerabilityScannerCredentials\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        credentialSetId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getVulnerabilityScannerCredentials.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "credentialSetId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object",
                "required": [
                    "credentialSetId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getVulnerabilityScannerCredentials.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "credentialSetId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getVulnerabilityScannerCredentialsResult:getVulnerabilityScannerCredentialsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "credentialSetId",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getVulnerabilityScannerTargetEnvironment:getVulnerabilityScannerTargetEnvironment": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerTargetEnvironment = cloudflare.getVulnerabilityScannerTargetEnvironment({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    targetEnvironmentId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_target_environment = cloudflare.get_vulnerability_scanner_target_environment(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    target_environment_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerTargetEnvironment = Cloudflare.Index.GetVulnerabilityScannerTargetEnvironment.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TargetEnvironmentId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetVulnerabilityScannerTargetEnvironment(ctx, \u0026cloudflare.LookupVulnerabilityScannerTargetEnvironmentArgs{\n\t\t\tAccountId:           pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTargetEnvironmentId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetVulnerabilityScannerTargetEnvironmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleVulnerabilityScannerTargetEnvironment = CloudflareFunctions.getVulnerabilityScannerTargetEnvironment(GetVulnerabilityScannerTargetEnvironmentArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .targetEnvironmentId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleVulnerabilityScannerTargetEnvironment:\n    fn::invoke:\n      function: cloudflare:getVulnerabilityScannerTargetEnvironment\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        targetEnvironmentId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getVulnerabilityScannerTargetEnvironment.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "targetEnvironmentId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "targetEnvironmentId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getVulnerabilityScannerTargetEnvironment.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "Optional description providing additional context.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Human-readable name.\n",
                        "type": "string"
                    },
                    "target": {
                        "$ref": "#/types/cloudflare:index/getVulnerabilityScannerTargetEnvironmentTarget:getVulnerabilityScannerTargetEnvironmentTarget",
                        "description": "Identifies the Cloudflare asset to scan. Uses a \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e discriminator.\nCurrently the service supports only \u003cspan pulumi-lang-nodejs=\"`zone`\" pulumi-lang-dotnet=\"`Zone`\" pulumi-lang-go=\"`zone`\" pulumi-lang-python=\"`zone`\" pulumi-lang-yaml=\"`zone`\" pulumi-lang-java=\"`zone`\"\u003e`zone`\u003c/span\u003e targets.\n"
                    },
                    "targetEnvironmentId": {
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "id",
                    "name",
                    "target",
                    "targetEnvironmentId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getVulnerabilityScannerTargetEnvironments:getVulnerabilityScannerTargetEnvironments": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleVulnerabilityScannerTargetEnvironments = cloudflare.getVulnerabilityScannerTargetEnvironments({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_vulnerability_scanner_target_environments = cloudflare.get_vulnerability_scanner_target_environments(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleVulnerabilityScannerTargetEnvironments = Cloudflare.Index.GetVulnerabilityScannerTargetEnvironments.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetVulnerabilityScannerTargetEnvironments(ctx, \u0026cloudflare.LookupVulnerabilityScannerTargetEnvironmentsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetVulnerabilityScannerTargetEnvironmentsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleVulnerabilityScannerTargetEnvironments = CloudflareFunctions.getVulnerabilityScannerTargetEnvironments(GetVulnerabilityScannerTargetEnvironmentsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleVulnerabilityScannerTargetEnvironments:\n    fn::invoke:\n      function: cloudflare:getVulnerabilityScannerTargetEnvironments\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getVulnerabilityScannerTargetEnvironments.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getVulnerabilityScannerTargetEnvironments.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getVulnerabilityScannerTargetEnvironmentsResult:getVulnerabilityScannerTargetEnvironmentsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWaitingRoom:getWaitingRoom": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoom = cloudflare.getWaitingRoom({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    waitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room = cloudflare.get_waiting_room(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    waiting_room_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoom = Cloudflare.Index.GetWaitingRoom.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WaitingRoomId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWaitingRoom(ctx, \u0026cloudflare.LookupWaitingRoomArgs{\n\t\t\tZoneId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWaitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWaitingRoomArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWaitingRoom = CloudflareFunctions.getWaitingRoom(GetWaitingRoomArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .waitingRoomId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWaitingRoom:\n    fn::invoke:\n      function: cloudflare:getWaitingRoom\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        waitingRoomId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWaitingRoom.\n",
                "properties": {
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "waitingRoomId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWaitingRoom.\n",
                "properties": {
                    "additionalRoutes": {
                        "description": "Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWaitingRoomAdditionalRoute:getWaitingRoomAdditionalRoute"
                        },
                        "type": "array"
                    },
                    "cookieAttributes": {
                        "$ref": "#/types/cloudflare:index/getWaitingRoomCookieAttributes:getWaitingRoomCookieAttributes",
                        "description": "Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position.\n"
                    },
                    "cookieSuffix": {
                        "description": "Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(_*cf*waitingroom). If \u003cspan pulumi-lang-nodejs=\"`cookieSuffix`\" pulumi-lang-dotnet=\"`CookieSuffix`\" pulumi-lang-go=\"`cookieSuffix`\" pulumi-lang-python=\"`cookie_suffix`\" pulumi-lang-yaml=\"`cookieSuffix`\" pulumi-lang-java=\"`cookieSuffix`\"\u003e`cookieSuffix`\u003c/span\u003e is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using \u003cspan pulumi-lang-nodejs=\"`additionalRoutes`\" pulumi-lang-dotnet=\"`AdditionalRoutes`\" pulumi-lang-go=\"`additionalRoutes`\" pulumi-lang-python=\"`additional_routes`\" pulumi-lang-yaml=\"`additionalRoutes`\" pulumi-lang-java=\"`additionalRoutes`\"\u003e`additionalRoutes`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "customPageHtml": {
                        "description": "Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom*page*html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge:\n",
                        "type": "string"
                    },
                    "defaultTemplateLanguage": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "disableSessionRenewal": {
                        "type": "boolean"
                    },
                    "enabledOriginCommands": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "host": {
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    },
                    "jsonResponseEnabled": {
                        "type": "boolean"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "newUsersPerMinute": {
                        "type": "integer"
                    },
                    "nextEventPrequeueStartTime": {
                        "type": "string"
                    },
                    "nextEventStartTime": {
                        "type": "string"
                    },
                    "path": {
                        "type": "string"
                    },
                    "queueAll": {
                        "type": "boolean"
                    },
                    "queueingMethod": {
                        "type": "string"
                    },
                    "queueingStatusCode": {
                        "type": "integer"
                    },
                    "sessionDuration": {
                        "type": "integer"
                    },
                    "suspended": {
                        "type": "boolean"
                    },
                    "totalActiveUsers": {
                        "type": "integer"
                    },
                    "turnstileAction": {
                        "type": "string"
                    },
                    "turnstileMode": {
                        "type": "string"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "additionalRoutes",
                    "cookieAttributes",
                    "cookieSuffix",
                    "createdOn",
                    "customPageHtml",
                    "defaultTemplateLanguage",
                    "description",
                    "disableSessionRenewal",
                    "enabledOriginCommands",
                    "host",
                    "id",
                    "jsonResponseEnabled",
                    "modifiedOn",
                    "name",
                    "newUsersPerMinute",
                    "nextEventPrequeueStartTime",
                    "nextEventStartTime",
                    "path",
                    "queueAll",
                    "queueingMethod",
                    "queueingStatusCode",
                    "sessionDuration",
                    "suspended",
                    "totalActiveUsers",
                    "turnstileAction",
                    "turnstileMode",
                    "waitingRoomId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWaitingRoomEvent:getWaitingRoomEvent": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomEvent = cloudflare.getWaitingRoomEvent({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    waitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n    eventId: \"25756b2dfe6e378a06b033b670413757\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_event = cloudflare.get_waiting_room_event(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    waiting_room_id=\"699d98642c564d2e855e9661899b7252\",\n    event_id=\"25756b2dfe6e378a06b033b670413757\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomEvent = Cloudflare.Index.GetWaitingRoomEvent.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WaitingRoomId = \"699d98642c564d2e855e9661899b7252\",\n        EventId = \"25756b2dfe6e378a06b033b670413757\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWaitingRoomEvent(ctx, \u0026cloudflare.LookupWaitingRoomEventArgs{\n\t\t\tZoneId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWaitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n\t\t\tEventId:       \"25756b2dfe6e378a06b033b670413757\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWaitingRoomEventArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWaitingRoomEvent = CloudflareFunctions.getWaitingRoomEvent(GetWaitingRoomEventArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .waitingRoomId(\"699d98642c564d2e855e9661899b7252\")\n            .eventId(\"25756b2dfe6e378a06b033b670413757\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWaitingRoomEvent:\n    fn::invoke:\n      function: cloudflare:getWaitingRoomEvent\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        waitingRoomId: 699d98642c564d2e855e9661899b7252\n        eventId: 25756b2dfe6e378a06b033b670413757\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWaitingRoomEvent.\n",
                "properties": {
                    "eventId": {
                        "type": "string"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "eventId",
                    "waitingRoomId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWaitingRoomEvent.\n",
                "properties": {
                    "createdOn": {
                        "type": "string"
                    },
                    "customPageHtml": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`customPageHtml`\" pulumi-lang-dotnet=\"`CustomPageHtml`\" pulumi-lang-go=\"`customPageHtml`\" pulumi-lang-python=\"`custom_page_html`\" pulumi-lang-yaml=\"`customPageHtml`\" pulumi-lang-java=\"`customPageHtml`\"\u003e`customPageHtml`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "A note that you can use to add more details about the event.\n",
                        "type": "string"
                    },
                    "disableSessionRenewal": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`disableSessionRenewal`\" pulumi-lang-dotnet=\"`DisableSessionRenewal`\" pulumi-lang-go=\"`disableSessionRenewal`\" pulumi-lang-python=\"`disable_session_renewal`\" pulumi-lang-yaml=\"`disableSessionRenewal`\" pulumi-lang-java=\"`disableSessionRenewal`\"\u003e`disableSessionRenewal`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n",
                        "type": "boolean"
                    },
                    "eventEndTime": {
                        "description": "An ISO 8601 timestamp that marks the end of the event.\n",
                        "type": "string"
                    },
                    "eventId": {
                        "type": "string"
                    },
                    "eventStartTime": {
                        "description": "An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before \u003cspan pulumi-lang-nodejs=\"`eventEndTime`\" pulumi-lang-dotnet=\"`EventEndTime`\" pulumi-lang-go=\"`eventEndTime`\" pulumi-lang-python=\"`event_end_time`\" pulumi-lang-yaml=\"`eventEndTime`\" pulumi-lang-java=\"`eventEndTime`\"\u003e`eventEndTime`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "description": "A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.\n",
                        "type": "string"
                    },
                    "newUsersPerMinute": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property is also set.\n",
                        "type": "integer"
                    },
                    "prequeueStartTime": {
                        "description": "An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "queueingMethod": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n",
                        "type": "string"
                    },
                    "sessionDuration": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`sessionDuration`\" pulumi-lang-dotnet=\"`SessionDuration`\" pulumi-lang-go=\"`sessionDuration`\" pulumi-lang-python=\"`session_duration`\" pulumi-lang-yaml=\"`sessionDuration`\" pulumi-lang-java=\"`sessionDuration`\"\u003e`sessionDuration`\u003c/span\u003e property while it is active. If null, the event will inherit it.\n",
                        "type": "integer"
                    },
                    "shuffleAtEventStart": {
                        "description": "If enabled, users in the prequeue will be shuffled randomly at the \u003cspan pulumi-lang-nodejs=\"`eventStartTime`\" pulumi-lang-dotnet=\"`EventStartTime`\" pulumi-lang-go=\"`eventStartTime`\" pulumi-lang-python=\"`event_start_time`\" pulumi-lang-yaml=\"`eventStartTime`\" pulumi-lang-java=\"`eventStartTime`\"\u003e`eventStartTime`\u003c/span\u003e. Requires that \u003cspan pulumi-lang-nodejs=\"`prequeueStartTime`\" pulumi-lang-dotnet=\"`PrequeueStartTime`\" pulumi-lang-go=\"`prequeueStartTime`\" pulumi-lang-python=\"`prequeue_start_time`\" pulumi-lang-yaml=\"`prequeueStartTime`\" pulumi-lang-java=\"`prequeueStartTime`\"\u003e`prequeueStartTime`\u003c/span\u003e is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the \u003cspan pulumi-lang-nodejs=\"`queueingMethod`\" pulumi-lang-dotnet=\"`QueueingMethod`\" pulumi-lang-go=\"`queueingMethod`\" pulumi-lang-python=\"`queueing_method`\" pulumi-lang-yaml=\"`queueingMethod`\" pulumi-lang-java=\"`queueingMethod`\"\u003e`queueingMethod`\u003c/span\u003e during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.\n",
                        "type": "boolean"
                    },
                    "suspended": {
                        "description": "Suspends or allows an event. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the event is ignored and traffic will be handled based on the waiting room configuration.\n",
                        "type": "boolean"
                    },
                    "totalActiveUsers": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`totalActiveUsers`\" pulumi-lang-dotnet=\"`TotalActiveUsers`\" pulumi-lang-go=\"`totalActiveUsers`\" pulumi-lang-python=\"`total_active_users`\" pulumi-lang-yaml=\"`totalActiveUsers`\" pulumi-lang-java=\"`totalActiveUsers`\"\u003e`totalActiveUsers`\u003c/span\u003e property while it is active. If null, the event will inherit it. This can only be set if the event's \u003cspan pulumi-lang-nodejs=\"`newUsersPerMinute`\" pulumi-lang-dotnet=\"`NewUsersPerMinute`\" pulumi-lang-go=\"`newUsersPerMinute`\" pulumi-lang-python=\"`new_users_per_minute`\" pulumi-lang-yaml=\"`newUsersPerMinute`\" pulumi-lang-java=\"`newUsersPerMinute`\"\u003e`newUsersPerMinute`\u003c/span\u003e property is also set.\n",
                        "type": "integer"
                    },
                    "turnstileAction": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileAction`\" pulumi-lang-dotnet=\"`TurnstileAction`\" pulumi-lang-go=\"`turnstileAction`\" pulumi-lang-python=\"`turnstile_action`\" pulumi-lang-yaml=\"`turnstileAction`\" pulumi-lang-java=\"`turnstileAction`\"\u003e`turnstileAction`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"log\", \u003cspan pulumi-lang-nodejs=\"\"infiniteQueue\"\" pulumi-lang-dotnet=\"\"InfiniteQueue\"\" pulumi-lang-go=\"\"infiniteQueue\"\" pulumi-lang-python=\"\"infinite_queue\"\" pulumi-lang-yaml=\"\"infiniteQueue\"\" pulumi-lang-java=\"\"infiniteQueue\"\"\u003e\"infiniteQueue\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "turnstileMode": {
                        "description": "If set, the event will override the waiting room's \u003cspan pulumi-lang-nodejs=\"`turnstileMode`\" pulumi-lang-dotnet=\"`TurnstileMode`\" pulumi-lang-go=\"`turnstileMode`\" pulumi-lang-python=\"`turnstile_mode`\" pulumi-lang-yaml=\"`turnstileMode`\" pulumi-lang-java=\"`turnstileMode`\"\u003e`turnstileMode`\u003c/span\u003e property while it is active. If null, the event will inherit it.\nAvailable values: \"off\", \"invisible\", \"visible*non*interactive\", \u003cspan pulumi-lang-nodejs=\"\"visibleManaged\"\" pulumi-lang-dotnet=\"\"VisibleManaged\"\" pulumi-lang-go=\"\"visibleManaged\"\" pulumi-lang-python=\"\"visible_managed\"\" pulumi-lang-yaml=\"\"visibleManaged\"\" pulumi-lang-java=\"\"visibleManaged\"\"\u003e\"visibleManaged\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "customPageHtml",
                    "description",
                    "disableSessionRenewal",
                    "eventEndTime",
                    "eventId",
                    "eventStartTime",
                    "id",
                    "modifiedOn",
                    "name",
                    "newUsersPerMinute",
                    "prequeueStartTime",
                    "queueingMethod",
                    "sessionDuration",
                    "shuffleAtEventStart",
                    "suspended",
                    "totalActiveUsers",
                    "turnstileAction",
                    "turnstileMode",
                    "waitingRoomId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWaitingRoomEvents:getWaitingRoomEvents": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomEvents = cloudflare.getWaitingRoomEvents({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    waitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_events = cloudflare.get_waiting_room_events(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    waiting_room_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomEvents = Cloudflare.Index.GetWaitingRoomEvents.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WaitingRoomId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWaitingRoomEvents(ctx, \u0026cloudflare.LookupWaitingRoomEventsArgs{\n\t\t\tZoneId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWaitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWaitingRoomEventsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWaitingRoomEvents = CloudflareFunctions.getWaitingRoomEvents(GetWaitingRoomEventsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .waitingRoomId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWaitingRoomEvents:\n    fn::invoke:\n      function: cloudflare:getWaitingRoomEvents\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        waitingRoomId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWaitingRoomEvents.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "waitingRoomId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWaitingRoomEvents.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWaitingRoomEventsResult:getWaitingRoomEventsResult"
                        },
                        "type": "array"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "waitingRoomId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWaitingRoomRules:getWaitingRoomRules": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomRules = cloudflare.getWaitingRoomRules({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    waitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_rules = cloudflare.get_waiting_room_rules(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    waiting_room_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomRules = Cloudflare.Index.GetWaitingRoomRules.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WaitingRoomId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWaitingRoomRules(ctx, \u0026cloudflare.LookupWaitingRoomRulesArgs{\n\t\t\tZoneId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWaitingRoomId: \"699d98642c564d2e855e9661899b7252\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWaitingRoomRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWaitingRoomRules = CloudflareFunctions.getWaitingRoomRules(GetWaitingRoomRulesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .waitingRoomId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWaitingRoomRules:\n    fn::invoke:\n      function: cloudflare:getWaitingRoomRules\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        waitingRoomId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWaitingRoomRules.\n",
                "properties": {
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "waitingRoomId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWaitingRoomRules.\n",
                "properties": {
                    "action": {
                        "description": "The action to take when the expression matches.\nAvailable values: \"bypass*waiting*room\".\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "The description of the rule.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "When set to true, the rule is enabled.\n",
                        "type": "boolean"
                    },
                    "expression": {
                        "description": "Criteria defining when there is a match for the current rule.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "lastUpdated": {
                        "type": "string"
                    },
                    "version": {
                        "description": "The version of the rule.\n",
                        "type": "string"
                    },
                    "waitingRoomId": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "action",
                    "description",
                    "enabled",
                    "expression",
                    "id",
                    "lastUpdated",
                    "version",
                    "waitingRoomId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWaitingRoomSettings:getWaitingRoomSettings": {
            "description": "Accepted Permissions\n\n- `Waiting Rooms Read`\n- `Waiting Rooms Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRoomSettings = cloudflare.getWaitingRoomSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_room_settings = cloudflare.get_waiting_room_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRoomSettings = Cloudflare.Index.GetWaitingRoomSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWaitingRoomSettings(ctx, \u0026cloudflare.LookupWaitingRoomSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWaitingRoomSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWaitingRoomSettings = CloudflareFunctions.getWaitingRoomSettings(GetWaitingRoomSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWaitingRoomSettings:\n    fn::invoke:\n      function: cloudflare:getWaitingRoomSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWaitingRoomSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWaitingRoomSettings.\n",
                "properties": {
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "searchEngineCrawlerBypass": {
                        "description": "Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone.\nVerified search engine crawlers will not be tracked or counted by the waiting room system,\nand will not appear in waiting room analytics.\n",
                        "type": "boolean"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "searchEngineCrawlerBypass"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWaitingRooms:getWaitingRooms": {
            "description": "Accepted Permissions\n\n- `Account Waiting Rooms Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWaitingRooms = cloudflare.getWaitingRooms({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_waiting_rooms = cloudflare.get_waiting_rooms(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWaitingRooms = Cloudflare.Index.GetWaitingRooms.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWaitingRooms(ctx, \u0026cloudflare.LookupWaitingRoomsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWaitingRoomsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWaitingRooms = CloudflareFunctions.getWaitingRooms(GetWaitingRoomsArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWaitingRooms:\n    fn::invoke:\n      function: cloudflare:getWaitingRooms\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWaitingRooms.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWaitingRooms.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWaitingRoomsResult:getWaitingRoomsResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWeb3Hostname:getWeb3Hostname": {
            "description": "Accepted Permissions\n\n- `Web3 Hostnames Read`\n- `Web3 Hostnames Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWeb3Hostname = cloudflare.getWeb3Hostname({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web3_hostname = cloudflare.get_web3_hostname(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    identifier=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWeb3Hostname = Cloudflare.Index.GetWeb3Hostname.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Identifier = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWeb3Hostname(ctx, \u0026cloudflare.LookupWeb3HostnameArgs{\n\t\t\tZoneId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tIdentifier: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWeb3HostnameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWeb3Hostname = CloudflareFunctions.getWeb3Hostname(GetWeb3HostnameArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .identifier(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWeb3Hostname:\n    fn::invoke:\n      function: cloudflare:getWeb3Hostname\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        identifier: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWeb3Hostname.\n",
                "properties": {
                    "identifier": {
                        "type": "string",
                        "description": "Specify the identifier of the hostname.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Specify the identifier of the hostname.\n"
                    }
                },
                "type": "object",
                "required": [
                    "identifier"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWeb3Hostname.\n",
                "properties": {
                    "createdOn": {
                        "type": "string"
                    },
                    "description": {
                        "description": "Specify an optional description of the hostname.\n",
                        "type": "string"
                    },
                    "dnslink": {
                        "description": "Specify the DNSLink value used if the target is ipfs.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Specify the identifier of the hostname.\n",
                        "type": "string"
                    },
                    "identifier": {
                        "description": "Specify the identifier of the hostname.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "description": "Specify the hostname that points to the target gateway via CNAME.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "Specifies the status of the hostname's activation.\nAvailable values: \"active\", \"pending\", \"deleting\", \"error\".\n",
                        "type": "string"
                    },
                    "target": {
                        "description": "Specify the target gateway of the hostname.\nAvailable values: \"ethereum\", \"ipfs\", \"ipfs*universal*path\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Specify the identifier of the hostname.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "description",
                    "dnslink",
                    "id",
                    "identifier",
                    "modifiedOn",
                    "name",
                    "status",
                    "target"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWeb3Hostnames:getWeb3Hostnames": {
            "description": "Accepted Permissions\n\n- `Web3 Hostnames Read`\n- `Web3 Hostnames Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWeb3Hostnames = cloudflare.getWeb3Hostnames({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web3_hostnames = cloudflare.get_web3_hostnames(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWeb3Hostnames = Cloudflare.Index.GetWeb3Hostnames.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWeb3Hostnames(ctx, \u0026cloudflare.LookupWeb3HostnamesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWeb3HostnamesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWeb3Hostnames = CloudflareFunctions.getWeb3Hostnames(GetWeb3HostnamesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWeb3Hostnames:\n    fn::invoke:\n      function: cloudflare:getWeb3Hostnames\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWeb3Hostnames.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Specify the identifier of the hostname.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWeb3Hostnames.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWeb3HostnamesResult:getWeb3HostnamesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Specify the identifier of the hostname.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWebAnalyticsSite:getWebAnalyticsSite": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWebAnalyticsSite = cloudflare.getWebAnalyticsSite({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    siteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web_analytics_site = cloudflare.get_web_analytics_site(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    site_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWebAnalyticsSite = Cloudflare.Index.GetWebAnalyticsSite.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SiteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWebAnalyticsSite(ctx, \u0026cloudflare.LookupWebAnalyticsSiteArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSiteId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWebAnalyticsSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWebAnalyticsSite = CloudflareFunctions.getWebAnalyticsSite(GetWebAnalyticsSiteArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .siteId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWebAnalyticsSite:\n    fn::invoke:\n      function: cloudflare:getWebAnalyticsSite\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        siteId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWebAnalyticsSite.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWebAnalyticsSiteFilter:getWebAnalyticsSiteFilter"
                    },
                    "siteId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWebAnalyticsSite.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "autoInstall": {
                        "description": "If enabled, the JavaScript snippet is automatically injected for orange-clouded sites.\n",
                        "type": "boolean"
                    },
                    "created": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWebAnalyticsSiteFilter:getWebAnalyticsSiteFilter"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "rules": {
                        "description": "A list of rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWebAnalyticsSiteRule:getWebAnalyticsSiteRule"
                        },
                        "type": "array"
                    },
                    "ruleset": {
                        "$ref": "#/types/cloudflare:index/getWebAnalyticsSiteRuleset:getWebAnalyticsSiteRuleset"
                    },
                    "siteId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "siteTag": {
                        "description": "The Web Analytics site identifier.\n",
                        "type": "string"
                    },
                    "siteToken": {
                        "description": "The Web Analytics site token.\n",
                        "type": "string"
                    },
                    "snippet": {
                        "description": "Encoded JavaScript snippet.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "autoInstall",
                    "created",
                    "id",
                    "rules",
                    "ruleset",
                    "siteTag",
                    "siteToken",
                    "snippet"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWebAnalyticsSites:getWebAnalyticsSites": {
            "description": "Accepted Permissions\n\n- `Account Settings Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWebAnalyticsSites = cloudflare.getWebAnalyticsSites({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    orderBy: \"host\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_web_analytics_sites = cloudflare.get_web_analytics_sites(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    order_by=\"host\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWebAnalyticsSites = Cloudflare.Index.GetWebAnalyticsSites.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        OrderBy = \"host\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWebAnalyticsSites(ctx, \u0026cloudflare.LookupWebAnalyticsSitesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tOrderBy:   pulumi.StringRef(\"host\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWebAnalyticsSitesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWebAnalyticsSites = CloudflareFunctions.getWebAnalyticsSites(GetWebAnalyticsSitesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .orderBy(\"host\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWebAnalyticsSites:\n    fn::invoke:\n      function: cloudflare:getWebAnalyticsSites\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        orderBy: host\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWebAnalyticsSites.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "orderBy": {
                        "type": "string",
                        "description": "The property used to sort the list of results.\nAvailable values: \"host\", \"created\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWebAnalyticsSites.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "orderBy": {
                        "description": "The property used to sort the list of results.\nAvailable values: \"host\", \"created\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWebAnalyticsSitesResult:getWebAnalyticsSitesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorker:getWorker": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorker = cloudflare.getWorker({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    workerId: \"worker_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_worker = cloudflare.get_worker(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    worker_id=\"worker_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorker = Cloudflare.Index.GetWorker.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WorkerId = \"worker_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorker(ctx, \u0026cloudflare.LookupWorkerArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWorkerId:  pulumi.StringRef(\"worker_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorker = CloudflareFunctions.getWorker(GetWorkerArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .workerId(\"worker_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorker:\n    fn::invoke:\n      function: cloudflare:getWorker\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        workerId: worker_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorker.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkerFilter:getWorkerFilter"
                    },
                    "workerId": {
                        "type": "string",
                        "description": "Identifier for the Worker, which can be ID or name.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorker.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "When the Worker was created.\n",
                        "type": "string"
                    },
                    "deployedOn": {
                        "description": "When the Worker's most recent deployment was created. \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e if the Worker has never been deployed.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkerFilter:getWorkerFilter"
                    },
                    "id": {
                        "description": "Identifier for the Worker, which can be ID or name.\n",
                        "type": "string"
                    },
                    "logpush": {
                        "description": "Whether logpush is enabled for the Worker.\n",
                        "type": "boolean"
                    },
                    "name": {
                        "description": "Name of the Worker.\n",
                        "type": "string"
                    },
                    "observability": {
                        "$ref": "#/types/cloudflare:index/getWorkerObservability:getWorkerObservability",
                        "description": "Observability settings for the Worker.\n"
                    },
                    "references": {
                        "$ref": "#/types/cloudflare:index/getWorkerReferences:getWorkerReferences",
                        "description": "Other resources that reference the Worker and depend on it existing.\n"
                    },
                    "subdomain": {
                        "$ref": "#/types/cloudflare:index/getWorkerSubdomain:getWorkerSubdomain",
                        "description": "Subdomain settings for the Worker.\n"
                    },
                    "tags": {
                        "description": "Tags associated with the Worker.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "tailConsumers": {
                        "description": "Other Workers that should consume logs from the Worker.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkerTailConsumer:getWorkerTailConsumer"
                        },
                        "type": "array"
                    },
                    "updatedOn": {
                        "description": "When the Worker was most recently updated.\n",
                        "type": "string"
                    },
                    "workerId": {
                        "description": "Identifier for the Worker, which can be ID or name.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdOn",
                    "deployedOn",
                    "id",
                    "logpush",
                    "name",
                    "observability",
                    "references",
                    "subdomain",
                    "tags",
                    "tailConsumers",
                    "updatedOn"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkerVersion:getWorkerVersion": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkerVersion = cloudflare.getWorkerVersion({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    workerId: \"worker_id\",\n    versionId: \"version_id\",\n    include: \"modules\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_worker_version = cloudflare.get_worker_version(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    worker_id=\"worker_id\",\n    version_id=\"version_id\",\n    include=\"modules\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkerVersion = Cloudflare.Index.GetWorkerVersion.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WorkerId = \"worker_id\",\n        VersionId = \"version_id\",\n        Include = \"modules\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkerVersion(ctx, \u0026cloudflare.LookupWorkerVersionArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWorkerId:  \"worker_id\",\n\t\t\tVersionId: \"version_id\",\n\t\t\tInclude:   pulumi.StringRef(\"modules\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkerVersionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkerVersion = CloudflareFunctions.getWorkerVersion(GetWorkerVersionArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .workerId(\"worker_id\")\n            .versionId(\"version_id\")\n            .include(\"modules\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkerVersion:\n    fn::invoke:\n      function: cloudflare:getWorkerVersion\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        workerId: worker_id\n        versionId: version_id\n        include: modules\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkerVersion.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "include": {
                        "type": "string",
                        "description": "Whether to include the \u003cspan pulumi-lang-nodejs=\"`modules`\" pulumi-lang-dotnet=\"`Modules`\" pulumi-lang-go=\"`modules`\" pulumi-lang-python=\"`modules`\" pulumi-lang-yaml=\"`modules`\" pulumi-lang-java=\"`modules`\"\u003e`modules`\u003c/span\u003e property of the version in the response, which contains code and sourcemap content and may add several megabytes to the response size.\nAvailable values: \"modules\".\n"
                    },
                    "versionId": {
                        "type": "string",
                        "description": "Identifier for the version, which can be a UUID, a UUID prefix (minimum length 8), or the literal \"latest\" to operate on the most recently created version.\n"
                    },
                    "workerId": {
                        "type": "string",
                        "description": "Identifier for the Worker, which can be ID or name.\n"
                    }
                },
                "type": "object",
                "required": [
                    "versionId",
                    "workerId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkerVersion.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "annotations": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionAnnotations:getWorkerVersionAnnotations",
                        "description": "Metadata about the version.\n"
                    },
                    "assets": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionAssets:getWorkerVersionAssets",
                        "description": "Configuration for assets within a Worker.\n"
                    },
                    "bindings": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkerVersionBinding:getWorkerVersionBinding"
                        },
                        "type": "array"
                    },
                    "compatibilityDate": {
                        "type": "string"
                    },
                    "compatibilityFlags": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "containers": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkerVersionContainer:getWorkerVersionContainer"
                        },
                        "type": "array"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    },
                    "include": {
                        "description": "Whether to include the \u003cspan pulumi-lang-nodejs=\"`modules`\" pulumi-lang-dotnet=\"`Modules`\" pulumi-lang-go=\"`modules`\" pulumi-lang-python=\"`modules`\" pulumi-lang-yaml=\"`modules`\" pulumi-lang-java=\"`modules`\"\u003e`modules`\u003c/span\u003e property of the version in the response, which contains code and sourcemap content and may add several megabytes to the response size.\nAvailable values: \"modules\".\n",
                        "type": "string"
                    },
                    "limits": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionLimits:getWorkerVersionLimits"
                    },
                    "mainModule": {
                        "type": "string"
                    },
                    "mainScriptBase64": {
                        "type": "string"
                    },
                    "migrationTag": {
                        "type": "string"
                    },
                    "migrations": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionMigrations:getWorkerVersionMigrations"
                    },
                    "modules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkerVersionModule:getWorkerVersionModule"
                        },
                        "type": "array"
                    },
                    "number": {
                        "type": "integer"
                    },
                    "placement": {
                        "$ref": "#/types/cloudflare:index/getWorkerVersionPlacement:getWorkerVersionPlacement"
                    },
                    "source": {
                        "type": "string"
                    },
                    "startupTimeMs": {
                        "type": "integer"
                    },
                    "urls": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "usageModel": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "type": "string"
                    },
                    "versionId": {
                        "description": "Identifier for the version, which can be a UUID, a UUID prefix (minimum length 8), or the literal \"latest\" to operate on the most recently created version.\n",
                        "type": "string"
                    },
                    "workerId": {
                        "description": "Identifier for the Worker, which can be ID or name.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "annotations",
                    "assets",
                    "bindings",
                    "compatibilityDate",
                    "compatibilityFlags",
                    "containers",
                    "createdOn",
                    "id",
                    "limits",
                    "mainModule",
                    "mainScriptBase64",
                    "migrationTag",
                    "migrations",
                    "modules",
                    "number",
                    "placement",
                    "source",
                    "startupTimeMs",
                    "urls",
                    "usageModel",
                    "versionId",
                    "workerId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkerVersions:getWorkerVersions": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkerVersions = cloudflare.getWorkerVersions({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    workerId: \"worker_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_worker_versions = cloudflare.get_worker_versions(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    worker_id=\"worker_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkerVersions = Cloudflare.Index.GetWorkerVersions.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        WorkerId = \"worker_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkerVersions(ctx, \u0026cloudflare.LookupWorkerVersionsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tWorkerId:  \"worker_id\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkerVersionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkerVersions = CloudflareFunctions.getWorkerVersions(GetWorkerVersionsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .workerId(\"worker_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkerVersions:\n    fn::invoke:\n      function: cloudflare:getWorkerVersions\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        workerId: worker_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkerVersions.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "workerId": {
                        "type": "string",
                        "description": "Identifier for the Worker, which can be ID or name.\n"
                    }
                },
                "type": "object",
                "required": [
                    "workerId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkerVersions.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkerVersionsResult:getWorkerVersionsResult"
                        },
                        "type": "array"
                    },
                    "workerId": {
                        "description": "Identifier for the Worker, which can be ID or name.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "workerId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkers:getWorkers": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkers = cloudflare.getWorkers({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers = cloudflare.get_workers(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkers = Cloudflare.Index.GetWorkers.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkers(ctx, \u0026cloudflare.LookupWorkersArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkers = CloudflareFunctions.getWorkers(GetWorkersArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkers:\n    fn::invoke:\n      function: cloudflare:getWorkers\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkers.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Sort direction.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "orderBy": {
                        "type": "string",
                        "description": "Property to sort results by.\nAvailable values: \"deployed*on\", \"updated*on\", \u003cspan pulumi-lang-nodejs=\"\"createdOn\"\" pulumi-lang-dotnet=\"\"CreatedOn\"\" pulumi-lang-go=\"\"createdOn\"\" pulumi-lang-python=\"\"created_on\"\" pulumi-lang-yaml=\"\"createdOn\"\" pulumi-lang-java=\"\"createdOn\"\"\u003e\"createdOn\"\u003c/span\u003e, \"name\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkers.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "Sort direction.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "orderBy": {
                        "description": "Property to sort results by.\nAvailable values: \"deployed*on\", \"updated*on\", \u003cspan pulumi-lang-nodejs=\"\"createdOn\"\" pulumi-lang-dotnet=\"\"CreatedOn\"\" pulumi-lang-go=\"\"createdOn\"\" pulumi-lang-python=\"\"created_on\"\" pulumi-lang-yaml=\"\"createdOn\"\" pulumi-lang-java=\"\"createdOn\"\"\u003e\"createdOn\"\u003c/span\u003e, \"name\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersResult:getWorkersResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "order",
                    "orderBy",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersCronTrigger:getWorkersCronTrigger": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCronTrigger = cloudflare.getWorkersCronTrigger({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_cron_trigger = cloudflare.get_workers_cron_trigger(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCronTrigger = Cloudflare.Index.GetWorkersCronTrigger.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersCronTrigger(ctx, \u0026cloudflare.LookupWorkersCronTriggerArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName: \"this-is_my_script-01\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersCronTriggerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersCronTrigger = CloudflareFunctions.getWorkersCronTrigger(GetWorkersCronTriggerArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersCronTrigger:\n    fn::invoke:\n      function: cloudflare:getWorkersCronTrigger\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        scriptName: this-is_my_script-01\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersCronTrigger.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object",
                "required": [
                    "scriptName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersCronTrigger.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Name of the script, used in URLs and route configuration.\n",
                        "type": "string"
                    },
                    "schedules": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersCronTriggerSchedule:getWorkersCronTriggerSchedule"
                        },
                        "type": "array"
                    },
                    "scriptName": {
                        "description": "Name of the script, used in URLs and route configuration.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "schedules",
                    "scriptName"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersCustomDomain:getWorkersCustomDomain": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCustomDomain = cloudflare.getWorkersCustomDomain({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    domainId: \"dbe10b4bc17c295377eabd600e1787fd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_custom_domain = cloudflare.get_workers_custom_domain(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    domain_id=\"dbe10b4bc17c295377eabd600e1787fd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCustomDomain = Cloudflare.Index.GetWorkersCustomDomain.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DomainId = \"dbe10b4bc17c295377eabd600e1787fd\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersCustomDomain(ctx, \u0026cloudflare.LookupWorkersCustomDomainArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDomainId:  pulumi.StringRef(\"dbe10b4bc17c295377eabd600e1787fd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersCustomDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersCustomDomain = CloudflareFunctions.getWorkersCustomDomain(GetWorkersCustomDomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .domainId(\"dbe10b4bc17c295377eabd600e1787fd\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersCustomDomain:\n    fn::invoke:\n      function: cloudflare:getWorkersCustomDomain\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        domainId: dbe10b4bc17c295377eabd600e1787fd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersCustomDomain.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "domainId": {
                        "type": "string",
                        "description": "ID of the domain.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkersCustomDomainFilter:getWorkersCustomDomainFilter"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersCustomDomain.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "certId": {
                        "description": "ID of the TLS certificate issued for the domain.\n",
                        "type": "string"
                    },
                    "domainId": {
                        "description": "ID of the domain.\n",
                        "type": "string"
                    },
                    "environment": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Worker environment associated with the domain.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkersCustomDomainFilter:getWorkersCustomDomainFilter"
                    },
                    "hostname": {
                        "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "ID of the domain.\n",
                        "type": "string"
                    },
                    "service": {
                        "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "ID of the zone containing the domain hostname.\n",
                        "type": "string"
                    },
                    "zoneName": {
                        "description": "Name of the zone containing the domain hostname.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "certId",
                    "environment",
                    "hostname",
                    "id",
                    "service",
                    "zoneId",
                    "zoneName"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersCustomDomains:getWorkersCustomDomains": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersCustomDomains = cloudflare.getWorkersCustomDomains({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    environment: \"production\",\n    hostname: \"app.example.com\",\n    service: \"my-worker\",\n    zoneId: \"593c9c94de529bbbfaac7c53ced0447d\",\n    zoneName: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_custom_domains = cloudflare.get_workers_custom_domains(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    environment=\"production\",\n    hostname=\"app.example.com\",\n    service=\"my-worker\",\n    zone_id=\"593c9c94de529bbbfaac7c53ced0447d\",\n    zone_name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersCustomDomains = Cloudflare.Index.GetWorkersCustomDomains.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Environment = \"production\",\n        Hostname = \"app.example.com\",\n        Service = \"my-worker\",\n        ZoneId = \"593c9c94de529bbbfaac7c53ced0447d\",\n        ZoneName = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersCustomDomains(ctx, \u0026cloudflare.LookupWorkersCustomDomainsArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tEnvironment: pulumi.StringRef(\"production\"),\n\t\t\tHostname:    pulumi.StringRef(\"app.example.com\"),\n\t\t\tService:     pulumi.StringRef(\"my-worker\"),\n\t\t\tZoneId:      pulumi.StringRef(\"593c9c94de529bbbfaac7c53ced0447d\"),\n\t\t\tZoneName:    pulumi.StringRef(\"example.com\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersCustomDomainsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersCustomDomains = CloudflareFunctions.getWorkersCustomDomains(GetWorkersCustomDomainsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .environment(\"production\")\n            .hostname(\"app.example.com\")\n            .service(\"my-worker\")\n            .zoneId(\"593c9c94de529bbbfaac7c53ced0447d\")\n            .zoneName(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersCustomDomains:\n    fn::invoke:\n      function: cloudflare:getWorkersCustomDomains\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        environment: production\n        hostname: app.example.com\n        service: my-worker\n        zoneId: 593c9c94de529bbbfaac7c53ced0447d\n        zoneName: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersCustomDomains.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "environment": {
                        "type": "string",
                        "description": "Worker environment associated with the domain.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "Hostname of the domain.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "service": {
                        "type": "string",
                        "description": "Name of the Worker associated with the domain.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "ID of the zone containing the domain hostname.\n"
                    },
                    "zoneName": {
                        "type": "string",
                        "description": "Name of the zone containing the domain hostname.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersCustomDomains.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "environment": {
                        "description": "Worker environment associated with the domain.\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "Hostname of the domain.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersCustomDomainsResult:getWorkersCustomDomainsResult"
                        },
                        "type": "array"
                    },
                    "service": {
                        "description": "Name of the Worker associated with the domain.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "ID of the zone containing the domain hostname.\n",
                        "type": "string"
                    },
                    "zoneName": {
                        "description": "Name of the zone containing the domain hostname.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersDeployment:getWorkersDeployment": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersDeployment = cloudflare.getWorkersDeployment({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n    deploymentId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_deployment = cloudflare.get_workers_deployment(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\",\n    deployment_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersDeployment = Cloudflare.Index.GetWorkersDeployment.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n        DeploymentId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersDeployment(ctx, \u0026cloudflare.LookupWorkersDeploymentArgs{\n\t\t\tAccountId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName:   \"this-is_my_script-01\",\n\t\t\tDeploymentId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersDeployment = CloudflareFunctions.getWorkersDeployment(GetWorkersDeploymentArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .deploymentId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersDeployment:\n    fn::invoke:\n      function: cloudflare:getWorkersDeployment\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        scriptName: this-is_my_script-01\n        deploymentId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersDeployment.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "deploymentId": {
                        "type": "string"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object",
                "required": [
                    "deploymentId",
                    "scriptName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersDeployment.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "annotations": {
                        "$ref": "#/types/cloudflare:index/getWorkersDeploymentAnnotations:getWorkersDeploymentAnnotations"
                    },
                    "authorEmail": {
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "deploymentId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "scriptName": {
                        "description": "Name of the script, used in URLs and route configuration.\n",
                        "type": "string"
                    },
                    "source": {
                        "type": "string"
                    },
                    "strategy": {
                        "description": "Available values: \"percentage\".\n",
                        "type": "string"
                    },
                    "versions": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersDeploymentVersion:getWorkersDeploymentVersion"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "annotations",
                    "authorEmail",
                    "createdOn",
                    "deploymentId",
                    "id",
                    "scriptName",
                    "source",
                    "strategy",
                    "versions"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersForPlatformsDispatchNamespace:getWorkersForPlatformsDispatchNamespace": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersForPlatformsDispatchNamespace = cloudflare.getWorkersForPlatformsDispatchNamespace({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    dispatchNamespace: \"my-dispatch-namespace\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_for_platforms_dispatch_namespace = cloudflare.get_workers_for_platforms_dispatch_namespace(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    dispatch_namespace=\"my-dispatch-namespace\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersForPlatformsDispatchNamespace = Cloudflare.Index.GetWorkersForPlatformsDispatchNamespace.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        DispatchNamespace = \"my-dispatch-namespace\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersForPlatformsDispatchNamespace(ctx, \u0026cloudflare.LookupWorkersForPlatformsDispatchNamespaceArgs{\n\t\t\tAccountId:         pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDispatchNamespace: \"my-dispatch-namespace\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersForPlatformsDispatchNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersForPlatformsDispatchNamespace = CloudflareFunctions.getWorkersForPlatformsDispatchNamespace(GetWorkersForPlatformsDispatchNamespaceArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .dispatchNamespace(\"my-dispatch-namespace\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersForPlatformsDispatchNamespace:\n    fn::invoke:\n      function: cloudflare:getWorkersForPlatformsDispatchNamespace\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        dispatchNamespace: my-dispatch-namespace\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersForPlatformsDispatchNamespace.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "dispatchNamespace": {
                        "type": "string",
                        "description": "Name of the Workers for Platforms dispatch namespace.\n"
                    }
                },
                "type": "object",
                "required": [
                    "dispatchNamespace"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersForPlatformsDispatchNamespace.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "createdBy": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "createdOn": {
                        "description": "When the script was created.\n",
                        "type": "string"
                    },
                    "dispatchNamespace": {
                        "description": "Name of the Workers for Platforms dispatch namespace.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Name of the Workers for Platforms dispatch namespace.\n",
                        "type": "string"
                    },
                    "modifiedBy": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "When the script was last modified.\n",
                        "type": "string"
                    },
                    "namespaceId": {
                        "description": "API Resource UUID tag.\n",
                        "type": "string"
                    },
                    "namespaceName": {
                        "description": "Name of the Workers for Platforms dispatch namespace.\n",
                        "type": "string"
                    },
                    "scriptCount": {
                        "description": "The current number of scripts in this Dispatch Namespace.\n",
                        "type": "integer"
                    },
                    "trustedWorkers": {
                        "description": "Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".\n",
                        "type": "boolean"
                    }
                },
                "required": [
                    "createdBy",
                    "createdOn",
                    "dispatchNamespace",
                    "id",
                    "modifiedBy",
                    "modifiedOn",
                    "namespaceId",
                    "namespaceName",
                    "scriptCount",
                    "trustedWorkers"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersForPlatformsDispatchNamespaces:getWorkersForPlatformsDispatchNamespaces": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersForPlatformsDispatchNamespaces = cloudflare.getWorkersForPlatformsDispatchNamespaces({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_for_platforms_dispatch_namespaces = cloudflare.get_workers_for_platforms_dispatch_namespaces(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersForPlatformsDispatchNamespaces = Cloudflare.Index.GetWorkersForPlatformsDispatchNamespaces.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersForPlatformsDispatchNamespaces(ctx, \u0026cloudflare.LookupWorkersForPlatformsDispatchNamespacesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersForPlatformsDispatchNamespacesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersForPlatformsDispatchNamespaces = CloudflareFunctions.getWorkersForPlatformsDispatchNamespaces(GetWorkersForPlatformsDispatchNamespacesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersForPlatformsDispatchNamespaces:\n    fn::invoke:\n      function: cloudflare:getWorkersForPlatformsDispatchNamespaces\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersForPlatformsDispatchNamespaces.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersForPlatformsDispatchNamespaces.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersForPlatformsDispatchNamespacesResult:getWorkersForPlatformsDispatchNamespacesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersKv:getWorkersKv": {
            "description": "Accepted Permissions\n\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersKv = cloudflare.getWorkersKv({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    namespaceId: \"0f2ac74b498b48028cb68387c421e279\",\n    keyName: \"My-Key\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_kv = cloudflare.get_workers_kv(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    namespace_id=\"0f2ac74b498b48028cb68387c421e279\",\n    key_name=\"My-Key\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersKv = Cloudflare.Index.GetWorkersKv.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        NamespaceId = \"0f2ac74b498b48028cb68387c421e279\",\n        KeyName = \"My-Key\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersKv(ctx, \u0026cloudflare.LookupWorkersKvArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNamespaceId: \"0f2ac74b498b48028cb68387c421e279\",\n\t\t\tKeyName:     \"My-Key\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersKvArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersKv = CloudflareFunctions.getWorkersKv(GetWorkersKvArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .namespaceId(\"0f2ac74b498b48028cb68387c421e279\")\n            .keyName(\"My-Key\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersKv:\n    fn::invoke:\n      function: cloudflare:getWorkersKv\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        namespaceId: 0f2ac74b498b48028cb68387c421e279\n        keyName: My-Key\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersKv.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "keyName": {
                        "type": "string",
                        "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL.\n"
                    },
                    "namespaceId": {
                        "type": "string",
                        "description": "Namespace identifier tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "keyName",
                    "namespaceId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersKv.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL.\n",
                        "type": "string"
                    },
                    "keyName": {
                        "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL.\n",
                        "type": "string"
                    },
                    "namespaceId": {
                        "description": "Namespace identifier tag.\n",
                        "type": "string"
                    },
                    "value": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "keyName",
                    "namespaceId",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersKvNamespace:getWorkersKvNamespace": {
            "description": "Accepted Permissions\n\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersKvNamespace = cloudflare.getWorkersKvNamespace({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    namespaceId: \"0f2ac74b498b48028cb68387c421e279\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_kv_namespace = cloudflare.get_workers_kv_namespace(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    namespace_id=\"0f2ac74b498b48028cb68387c421e279\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersKvNamespace = Cloudflare.Index.GetWorkersKvNamespace.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        NamespaceId = \"0f2ac74b498b48028cb68387c421e279\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersKvNamespace(ctx, \u0026cloudflare.LookupWorkersKvNamespaceArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tNamespaceId: pulumi.StringRef(\"0f2ac74b498b48028cb68387c421e279\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersKvNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersKvNamespace = CloudflareFunctions.getWorkersKvNamespace(GetWorkersKvNamespaceArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .namespaceId(\"0f2ac74b498b48028cb68387c421e279\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersKvNamespace:\n    fn::invoke:\n      function: cloudflare:getWorkersKvNamespace\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        namespaceId: 0f2ac74b498b48028cb68387c421e279\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersKvNamespace.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkersKvNamespaceFilter:getWorkersKvNamespaceFilter"
                    },
                    "namespaceId": {
                        "type": "string",
                        "description": "Namespace identifier tag.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersKvNamespace.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkersKvNamespaceFilter:getWorkersKvNamespaceFilter"
                    },
                    "id": {
                        "description": "Namespace identifier tag.\n",
                        "type": "string"
                    },
                    "namespaceId": {
                        "description": "Namespace identifier tag.\n",
                        "type": "string"
                    },
                    "supportsUrlEncoding": {
                        "description": "True if keys written on the URL will be URL-decoded before storing. For example, if set to \"true\", a key written on the URL as \"%3F\" will be stored as \"?\".\n",
                        "type": "boolean"
                    },
                    "title": {
                        "description": "A human-readable string name for a Namespace.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "supportsUrlEncoding",
                    "title"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersKvNamespaces:getWorkersKvNamespaces": {
            "description": "Accepted Permissions\n\n- `Workers KV Storage Read`\n- `Workers KV Storage Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersKvNamespaces = cloudflare.getWorkersKvNamespaces({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction: \"asc\",\n    order: \"id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_kv_namespaces = cloudflare.get_workers_kv_namespaces(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    direction=\"asc\",\n    order=\"id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersKvNamespaces = Cloudflare.Index.GetWorkersKvNamespaces.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Direction = \"asc\",\n        Order = \"id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersKvNamespaces(ctx, \u0026cloudflare.LookupWorkersKvNamespacesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tDirection: pulumi.StringRef(\"asc\"),\n\t\t\tOrder:     pulumi.StringRef(\"id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersKvNamespacesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersKvNamespaces = CloudflareFunctions.getWorkersKvNamespaces(GetWorkersKvNamespacesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .direction(\"asc\")\n            .order(\"id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersKvNamespaces:\n    fn::invoke:\n      function: cloudflare:getWorkersKvNamespaces\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        direction: asc\n        order: id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersKvNamespaces.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "Direction to order namespaces.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "Field to order results by.\nAvailable values: \"id\", \"title\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersKvNamespaces.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "Direction to order namespaces.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "order": {
                        "description": "Field to order results by.\nAvailable values: \"id\", \"title\".\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersKvNamespacesResult:getWorkersKvNamespacesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersRoute:getWorkersRoute": {
            "description": "Accepted Permissions\n\n- `Workers Routes Read`\n- `Workers Routes Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersRoute = cloudflare.getWorkersRoute({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    routeId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_route = cloudflare.get_workers_route(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    route_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersRoute = Cloudflare.Index.GetWorkersRoute.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        RouteId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersRoute(ctx, \u0026cloudflare.LookupWorkersRouteArgs{\n\t\t\tZoneId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tRouteId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersRoute = CloudflareFunctions.getWorkersRoute(GetWorkersRouteArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .routeId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersRoute:\n    fn::invoke:\n      function: cloudflare:getWorkersRoute\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        routeId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersRoute.\n",
                "properties": {
                    "routeId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object",
                "required": [
                    "routeId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersRoute.\n",
                "properties": {
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "pattern": {
                        "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).\n",
                        "type": "string"
                    },
                    "routeId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "script": {
                        "description": "Name of the script to run if the route matches.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "pattern",
                    "routeId",
                    "script"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersRoutes:getWorkersRoutes": {
            "description": "Accepted Permissions\n\n- `Workers Routes Read`\n- `Workers Routes Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersRoutes = cloudflare.getWorkersRoutes({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_routes = cloudflare.get_workers_routes(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersRoutes = Cloudflare.Index.GetWorkersRoutes.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersRoutes(ctx, \u0026cloudflare.LookupWorkersRoutesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersRoutesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersRoutes = CloudflareFunctions.getWorkersRoutes(GetWorkersRoutesArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersRoutes:\n    fn::invoke:\n      function: cloudflare:getWorkersRoutes\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersRoutes.\n",
                "properties": {
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersRoutes.\n",
                "properties": {
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersRoutesResult:getWorkersRoutesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersScript:getWorkersScript": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersScript = cloudflare.getWorkersScript({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_script = cloudflare.get_workers_script(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersScript = Cloudflare.Index.GetWorkersScript.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersScript(ctx, \u0026cloudflare.LookupWorkersScriptArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName: pulumi.StringRef(\"this-is_my_script-01\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersScriptArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersScript = CloudflareFunctions.getWorkersScript(GetWorkersScriptArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersScript:\n    fn::invoke:\n      function: cloudflare:getWorkersScript\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        scriptName: this-is_my_script-01\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersScript.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkersScriptFilter:getWorkersScriptFilter"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersScript.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkersScriptFilter:getWorkersScriptFilter"
                    },
                    "id": {
                        "description": "Name of the script, used in URLs and route configuration.\n",
                        "type": "string"
                    },
                    "script": {
                        "type": "string"
                    },
                    "scriptName": {
                        "description": "Name of the script, used in URLs and route configuration.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "script"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersScriptSubdomain:getWorkersScriptSubdomain": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersScriptSubdomain = cloudflare.getWorkersScriptSubdomain({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    scriptName: \"this-is_my_script-01\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_script_subdomain = cloudflare.get_workers_script_subdomain(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    script_name=\"this-is_my_script-01\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersScriptSubdomain = Cloudflare.Index.GetWorkersScriptSubdomain.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        ScriptName = \"this-is_my_script-01\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersScriptSubdomain(ctx, \u0026cloudflare.LookupWorkersScriptSubdomainArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tScriptName: \"this-is_my_script-01\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersScriptSubdomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersScriptSubdomain = CloudflareFunctions.getWorkersScriptSubdomain(GetWorkersScriptSubdomainArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .scriptName(\"this-is_my_script-01\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersScriptSubdomain:\n    fn::invoke:\n      function: cloudflare:getWorkersScriptSubdomain\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        scriptName: this-is_my_script-01\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersScriptSubdomain.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "scriptName": {
                        "type": "string",
                        "description": "Name of the script, used in URLs and route configuration.\n"
                    }
                },
                "type": "object",
                "required": [
                    "scriptName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersScriptSubdomain.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether the Worker is available on the workers.dev subdomain.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "previewsEnabled": {
                        "description": "Whether the Worker's Preview URLs are available on the workers.dev subdomain.\n",
                        "type": "boolean"
                    },
                    "scriptName": {
                        "description": "Name of the script, used in URLs and route configuration.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "enabled",
                    "previewsEnabled",
                    "scriptName",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkersScripts:getWorkersScripts": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkersScripts = cloudflare.getWorkersScripts({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    tags: \"production:yes,staging:no\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workers_scripts = cloudflare.get_workers_scripts(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    tags=\"production:yes,staging:no\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkersScripts = Cloudflare.Index.GetWorkersScripts.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        Tags = \"production:yes,staging:no\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkersScripts(ctx, \u0026cloudflare.LookupWorkersScriptsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTags:      pulumi.StringRef(\"production:yes,staging:no\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkersScriptsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkersScripts = CloudflareFunctions.getWorkersScripts(GetWorkersScriptsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .tags(\"production:yes,staging:no\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkersScripts:\n    fn::invoke:\n      function: cloudflare:getWorkersScripts\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        tags: production:yes,staging:no\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkersScripts.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "tags": {
                        "type": "string",
                        "description": "Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkersScripts.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkersScriptsResult:getWorkersScriptsResult"
                        },
                        "type": "array"
                    },
                    "tags": {
                        "description": "Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkflow:getWorkflow": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkflow = cloudflare.getWorkflow({\n    accountId: \"account_id\",\n    workflowName: \"x\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workflow = cloudflare.get_workflow(account_id=\"account_id\",\n    workflow_name=\"x\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkflow = Cloudflare.Index.GetWorkflow.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        WorkflowName = \"x\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkflow(ctx, \u0026cloudflare.LookupWorkflowArgs{\n\t\t\tAccountId:    pulumi.StringRef(\"account_id\"),\n\t\t\tWorkflowName: pulumi.StringRef(\"x\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkflowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkflow = CloudflareFunctions.getWorkflow(GetWorkflowArgs.builder()\n            .accountId(\"account_id\")\n            .workflowName(\"x\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkflow:\n    fn::invoke:\n      function: cloudflare:getWorkflow\n      arguments:\n        accountId: account_id\n        workflowName: x\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkflow.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkflowFilter:getWorkflowFilter"
                    },
                    "workflowName": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkflow.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "className": {
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getWorkflowFilter:getWorkflowFilter"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "instances": {
                        "$ref": "#/types/cloudflare:index/getWorkflowInstances:getWorkflowInstances"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "scriptName": {
                        "type": "string"
                    },
                    "triggeredOn": {
                        "type": "string"
                    },
                    "workflowName": {
                        "type": "string"
                    }
                },
                "required": [
                    "className",
                    "createdOn",
                    "id",
                    "instances",
                    "modifiedOn",
                    "name",
                    "scriptName",
                    "triggeredOn"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getWorkflows:getWorkflows": {
            "description": "Accepted Permissions\n\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Workers Tail Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleWorkflows = cloudflare.getWorkflows({\n    accountId: \"account_id\",\n    search: \"x\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_workflows = cloudflare.get_workflows(account_id=\"account_id\",\n    search=\"x\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleWorkflows = Cloudflare.Index.GetWorkflows.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        Search = \"x\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetWorkflows(ctx, \u0026cloudflare.LookupWorkflowsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tSearch:    pulumi.StringRef(\"x\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetWorkflowsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleWorkflows = CloudflareFunctions.getWorkflows(GetWorkflowsArgs.builder()\n            .accountId(\"account_id\")\n            .search(\"x\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleWorkflows:\n    fn::invoke:\n      function: cloudflare:getWorkflows\n      arguments:\n        accountId: account_id\n        search: x\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getWorkflows.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Allows filtering workflows` name.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getWorkflows.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getWorkflowsResult:getWorkflowsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Allows filtering workflows` name.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortal:getZeroTrustAccessAiControlsMcpPortal": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessAiControlsMcpPortal = cloudflare.getZeroTrustAccessAiControlsMcpPortal({\n    accountId: \"a86a8f5c339544d7bdc89926de14fb8c\",\n    id: \"my-mcp-portal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_ai_controls_mcp_portal = cloudflare.get_zero_trust_access_ai_controls_mcp_portal(account_id=\"a86a8f5c339544d7bdc89926de14fb8c\",\n    id=\"my-mcp-portal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessAiControlsMcpPortal = Cloudflare.Index.GetZeroTrustAccessAiControlsMcpPortal.Invoke(new()\n    {\n        AccountId = \"a86a8f5c339544d7bdc89926de14fb8c\",\n        Id = \"my-mcp-portal\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessAiControlsMcpPortal(ctx, \u0026cloudflare.LookupZeroTrustAccessAiControlsMcpPortalArgs{\n\t\t\tAccountId: pulumi.StringRef(\"a86a8f5c339544d7bdc89926de14fb8c\"),\n\t\t\tId:        pulumi.StringRef(\"my-mcp-portal\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessAiControlsMcpPortalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessAiControlsMcpPortal = CloudflareFunctions.getZeroTrustAccessAiControlsMcpPortal(GetZeroTrustAccessAiControlsMcpPortalArgs.builder()\n            .accountId(\"a86a8f5c339544d7bdc89926de14fb8c\")\n            .id(\"my-mcp-portal\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessAiControlsMcpPortal:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessAiControlsMcpPortal\n      arguments:\n        accountId: a86a8f5c339544d7bdc89926de14fb8c\n        id: my-mcp-portal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessAiControlsMcpPortal.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalFilter:getZeroTrustAccessAiControlsMcpPortalFilter"
                    },
                    "id": {
                        "type": "string",
                        "description": "portal id\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessAiControlsMcpPortal.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "allowCodeMode": {
                        "description": "Allow remote code execution in Dynamic Workers (beta)\n",
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalFilter:getZeroTrustAccessAiControlsMcpPortalFilter"
                    },
                    "hostname": {
                        "type": "string"
                    },
                    "id": {
                        "description": "portal id\n",
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "secureWebGateway": {
                        "description": "Route outbound MCP traffic through Zero Trust Secure Web Gateway\n",
                        "type": "boolean"
                    },
                    "servers": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalServer:getZeroTrustAccessAiControlsMcpPortalServer"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "allowCodeMode",
                    "createdAt",
                    "createdBy",
                    "description",
                    "hostname",
                    "id",
                    "modifiedAt",
                    "modifiedBy",
                    "name",
                    "secureWebGateway",
                    "servers"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpPortals:getZeroTrustAccessAiControlsMcpPortals": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessAiControlsMcpPortals = cloudflare.getZeroTrustAccessAiControlsMcpPortals({\n    accountId: \"a86a8f5c339544d7bdc89926de14fb8c\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_ai_controls_mcp_portals = cloudflare.get_zero_trust_access_ai_controls_mcp_portals(account_id=\"a86a8f5c339544d7bdc89926de14fb8c\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessAiControlsMcpPortals = Cloudflare.Index.GetZeroTrustAccessAiControlsMcpPortals.Invoke(new()\n    {\n        AccountId = \"a86a8f5c339544d7bdc89926de14fb8c\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessAiControlsMcpPortals(ctx, \u0026cloudflare.LookupZeroTrustAccessAiControlsMcpPortalsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"a86a8f5c339544d7bdc89926de14fb8c\"),\n\t\t\tSearch:    pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessAiControlsMcpPortalsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessAiControlsMcpPortals = CloudflareFunctions.getZeroTrustAccessAiControlsMcpPortals(GetZeroTrustAccessAiControlsMcpPortalsArgs.builder()\n            .accountId(\"a86a8f5c339544d7bdc89926de14fb8c\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessAiControlsMcpPortals:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessAiControlsMcpPortals\n      arguments:\n        accountId: a86a8f5c339544d7bdc89926de14fb8c\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessAiControlsMcpPortals.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search by id, name, hostname\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessAiControlsMcpPortals.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpPortalsResult:getZeroTrustAccessAiControlsMcpPortalsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search by id, name, hostname\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServer:getZeroTrustAccessAiControlsMcpServer": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessAiControlsMcpServer = cloudflare.getZeroTrustAccessAiControlsMcpServer({\n    accountId: \"a86a8f5c339544d7bdc89926de14fb8c\",\n    id: \"my-mcp-server\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_ai_controls_mcp_server = cloudflare.get_zero_trust_access_ai_controls_mcp_server(account_id=\"a86a8f5c339544d7bdc89926de14fb8c\",\n    id=\"my-mcp-server\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessAiControlsMcpServer = Cloudflare.Index.GetZeroTrustAccessAiControlsMcpServer.Invoke(new()\n    {\n        AccountId = \"a86a8f5c339544d7bdc89926de14fb8c\",\n        Id = \"my-mcp-server\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessAiControlsMcpServer(ctx, \u0026cloudflare.LookupZeroTrustAccessAiControlsMcpServerArgs{\n\t\t\tAccountId: pulumi.StringRef(\"a86a8f5c339544d7bdc89926de14fb8c\"),\n\t\t\tId:        pulumi.StringRef(\"my-mcp-server\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessAiControlsMcpServerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessAiControlsMcpServer = CloudflareFunctions.getZeroTrustAccessAiControlsMcpServer(GetZeroTrustAccessAiControlsMcpServerArgs.builder()\n            .accountId(\"a86a8f5c339544d7bdc89926de14fb8c\")\n            .id(\"my-mcp-server\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessAiControlsMcpServer:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessAiControlsMcpServer\n      arguments:\n        accountId: a86a8f5c339544d7bdc89926de14fb8c\n        id: my-mcp-server\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessAiControlsMcpServer.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServerFilter:getZeroTrustAccessAiControlsMcpServerFilter"
                    },
                    "id": {
                        "type": "string",
                        "description": "server id\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessAiControlsMcpServer.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "authType": {
                        "description": "Available values: \"oauth\", \"bearer\", \"unauthenticated\".\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "createdBy": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "error": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServerFilter:getZeroTrustAccessAiControlsMcpServerFilter"
                    },
                    "hostname": {
                        "type": "string"
                    },
                    "id": {
                        "description": "server id\n",
                        "type": "string"
                    },
                    "lastSuccessfulSync": {
                        "type": "string"
                    },
                    "lastSynced": {
                        "type": "string"
                    },
                    "modifiedAt": {
                        "type": "string"
                    },
                    "modifiedBy": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "prompts": {
                        "items": {
                            "additionalProperties": {
                                "type": "string"
                            },
                            "type": "object"
                        },
                        "type": "array"
                    },
                    "status": {
                        "type": "string"
                    },
                    "tools": {
                        "items": {
                            "additionalProperties": {
                                "type": "string"
                            },
                            "type": "object"
                        },
                        "type": "array"
                    },
                    "updatedPrompts": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServerUpdatedPrompt:getZeroTrustAccessAiControlsMcpServerUpdatedPrompt"
                        },
                        "type": "array"
                    },
                    "updatedTools": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServerUpdatedTool:getZeroTrustAccessAiControlsMcpServerUpdatedTool"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "authType",
                    "createdAt",
                    "createdBy",
                    "description",
                    "error",
                    "hostname",
                    "id",
                    "lastSuccessfulSync",
                    "lastSynced",
                    "modifiedAt",
                    "modifiedBy",
                    "name",
                    "prompts",
                    "status",
                    "tools",
                    "updatedPrompts",
                    "updatedTools"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessAiControlsMcpServers:getZeroTrustAccessAiControlsMcpServers": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessAiControlsMcpServers = cloudflare.getZeroTrustAccessAiControlsMcpServers({\n    accountId: \"a86a8f5c339544d7bdc89926de14fb8c\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_ai_controls_mcp_servers = cloudflare.get_zero_trust_access_ai_controls_mcp_servers(account_id=\"a86a8f5c339544d7bdc89926de14fb8c\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessAiControlsMcpServers = Cloudflare.Index.GetZeroTrustAccessAiControlsMcpServers.Invoke(new()\n    {\n        AccountId = \"a86a8f5c339544d7bdc89926de14fb8c\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessAiControlsMcpServers(ctx, \u0026cloudflare.LookupZeroTrustAccessAiControlsMcpServersArgs{\n\t\t\tAccountId: pulumi.StringRef(\"a86a8f5c339544d7bdc89926de14fb8c\"),\n\t\t\tSearch:    pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessAiControlsMcpServersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessAiControlsMcpServers = CloudflareFunctions.getZeroTrustAccessAiControlsMcpServers(GetZeroTrustAccessAiControlsMcpServersArgs.builder()\n            .accountId(\"a86a8f5c339544d7bdc89926de14fb8c\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessAiControlsMcpServers:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessAiControlsMcpServers\n      arguments:\n        accountId: a86a8f5c339544d7bdc89926de14fb8c\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessAiControlsMcpServers.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search by id, name\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessAiControlsMcpServers.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessAiControlsMcpServersResult:getZeroTrustAccessAiControlsMcpServersResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search by id, name\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessApplication:getZeroTrustAccessApplication": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessApplication = cloudflare.getZeroTrustAccessApplication({\n    appId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_application = cloudflare.get_zero_trust_access_application(app_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessApplication = Cloudflare.Index.GetZeroTrustAccessApplication.Invoke(new()\n    {\n        AppId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessApplication(ctx, \u0026cloudflare.LookupZeroTrustAccessApplicationArgs{\n\t\t\tAppId:     pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessApplication = CloudflareFunctions.getZeroTrustAccessApplication(GetZeroTrustAccessApplicationArgs.builder()\n            .appId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessApplication:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessApplication\n      arguments:\n        appId: 023e105f4ecef8ad9ca31a8372d0c353\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessApplication.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "appId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationFilter:getZeroTrustAccessApplicationFilter"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessApplication.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "allowAuthenticateViaWarp": {
                        "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication.\n",
                        "type": "boolean"
                    },
                    "allowIframe": {
                        "description": "Enables loading application content in an iFrame.\n",
                        "type": "boolean"
                    },
                    "allowedIdps": {
                        "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "appId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "appLauncherLogoUrl": {
                        "description": "The image URL of the logo shown in the App Launcher header.\n",
                        "type": "string"
                    },
                    "appLauncherVisible": {
                        "description": "Displays the application in the App Launcher.\n",
                        "type": "boolean"
                    },
                    "aud": {
                        "description": "Audience tag.\n",
                        "type": "string"
                    },
                    "autoRedirectToIdentity": {
                        "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps.\n",
                        "type": "boolean"
                    },
                    "bgColor": {
                        "description": "The background color of the App Launcher page.\n",
                        "type": "string"
                    },
                    "corsHeaders": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationCorsHeaders:getZeroTrustAccessApplicationCorsHeaders"
                    },
                    "customDenyMessage": {
                        "description": "The custom error message shown to a user when they are denied access to the application.\n",
                        "type": "string"
                    },
                    "customDenyUrl": {
                        "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules.\n",
                        "type": "string"
                    },
                    "customNonIdentityDenyUrl": {
                        "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules.\n",
                        "type": "string"
                    },
                    "customPages": {
                        "description": "The custom pages that will be displayed when applicable for this application\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "destinations": {
                        "description": "List of destinations secured by Access. This supersedes \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e to allow for more flexibility in defining different types of domains. If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationDestination:getZeroTrustAccessApplicationDestination"
                        },
                        "type": "array"
                    },
                    "domain": {
                        "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher.\n",
                        "type": "string"
                    },
                    "enableBindingCookie": {
                        "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks.\n",
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationFilter:getZeroTrustAccessApplicationFilter"
                    },
                    "footerLinks": {
                        "description": "The links in the App Launcher footer.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationFooterLink:getZeroTrustAccessApplicationFooterLink"
                        },
                        "type": "array"
                    },
                    "headerBgColor": {
                        "description": "The background color of the App Launcher header.\n",
                        "type": "string"
                    },
                    "httpOnlyCookieAttribute": {
                        "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "landingPageDesign": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationLandingPageDesign:getZeroTrustAccessApplicationLandingPageDesign",
                        "description": "The design of the App Launcher landing page shown to users when they log in.\n"
                    },
                    "logoUrl": {
                        "description": "The image URL for the logo shown in the App Launcher dashboard.\n",
                        "type": "string"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationMfaConfig:getZeroTrustAccessApplicationMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings for the application. Only valid for self*hosted, ssh, vnc, and rdp application types.\n"
                    },
                    "name": {
                        "description": "The name of the application.\n",
                        "type": "string"
                    },
                    "optionsPreflightBypass": {
                        "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if\u003cspan pulumi-lang-nodejs=\" corsHeaders \" pulumi-lang-dotnet=\" CorsHeaders \" pulumi-lang-go=\" corsHeaders \" pulumi-lang-python=\" cors_headers \" pulumi-lang-yaml=\" corsHeaders \" pulumi-lang-java=\" corsHeaders \"\u003e corsHeaders \u003c/span\u003eis set.\n",
                        "type": "boolean"
                    },
                    "pathCookieAttribute": {
                        "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default\n",
                        "type": "boolean"
                    },
                    "policies": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationPolicy:getZeroTrustAccessApplicationPolicy"
                        },
                        "type": "array"
                    },
                    "readServiceTokensFromHeader": {
                        "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n{\n\"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n\"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n}\n",
                        "type": "string"
                    },
                    "saasApp": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationSaasApp:getZeroTrustAccessApplicationSaasApp"
                    },
                    "sameSiteCookieAttribute": {
                        "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks.\n",
                        "type": "string"
                    },
                    "scimConfig": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationScimConfig:getZeroTrustAccessApplicationScimConfig",
                        "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta.\n"
                    },
                    "selfHostedDomains": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "List of public domains that Access will secure. This field is deprecated in favor of \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e and will be supported until **November 21, 2025.** If \u003cspan pulumi-lang-nodejs=\"`destinations`\" pulumi-lang-dotnet=\"`Destinations`\" pulumi-lang-go=\"`destinations`\" pulumi-lang-python=\"`destinations`\" pulumi-lang-yaml=\"`destinations`\" pulumi-lang-java=\"`destinations`\"\u003e`destinations`\u003c/span\u003e are provided, then \u003cspan pulumi-lang-nodejs=\"`selfHostedDomains`\" pulumi-lang-dotnet=\"`SelfHostedDomains`\" pulumi-lang-go=\"`selfHostedDomains`\" pulumi-lang-python=\"`self_hosted_domains`\" pulumi-lang-yaml=\"`selfHostedDomains`\" pulumi-lang-java=\"`selfHostedDomains`\"\u003e`selfHostedDomains`\u003c/span\u003e will be ignored.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "serviceAuth401Redirect": {
                        "description": "Returns a 401 status code when the request is blocked by a Service Auth policy.\n",
                        "type": "boolean"
                    },
                    "sessionDuration": {
                        "description": "The amount of time that tokens issued for this application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications.\n",
                        "type": "string"
                    },
                    "skipAppLauncherLoginPage": {
                        "description": "Determines when to skip the App Launcher landing page.\n",
                        "type": "boolean"
                    },
                    "skipInterstitial": {
                        "description": "Enables automatic authentication through cloudflared.\n",
                        "type": "boolean"
                    },
                    "tags": {
                        "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "targetCriterias": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationTargetCriteria:getZeroTrustAccessApplicationTargetCriteria"
                        },
                        "type": "array"
                    },
                    "type": {
                        "description": "The application type.\nAvailable values: \"self*hosted\", \"saas\", \"ssh\", \"vnc\", \"app*launcher\", \"warp\", \"biso\", \"bookmark\", \"dash*sso\", \"infrastructure\", \"rdp\", \"mcp\", \"mcp*portal\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "allowAuthenticateViaWarp",
                    "allowIframe",
                    "allowedIdps",
                    "appLauncherLogoUrl",
                    "appLauncherVisible",
                    "aud",
                    "autoRedirectToIdentity",
                    "bgColor",
                    "corsHeaders",
                    "customDenyMessage",
                    "customDenyUrl",
                    "customNonIdentityDenyUrl",
                    "customPages",
                    "destinations",
                    "domain",
                    "enableBindingCookie",
                    "footerLinks",
                    "headerBgColor",
                    "httpOnlyCookieAttribute",
                    "id",
                    "landingPageDesign",
                    "logoUrl",
                    "mfaConfig",
                    "name",
                    "optionsPreflightBypass",
                    "pathCookieAttribute",
                    "policies",
                    "readServiceTokensFromHeader",
                    "saasApp",
                    "sameSiteCookieAttribute",
                    "scimConfig",
                    "selfHostedDomains",
                    "serviceAuth401Redirect",
                    "sessionDuration",
                    "skipAppLauncherLoginPage",
                    "skipInterstitial",
                    "tags",
                    "targetCriterias",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessApplications:getZeroTrustAccessApplications": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessApplications = cloudflare.getZeroTrustAccessApplications({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n    aud: \"aud\",\n    domain: \"domain\",\n    exact: true,\n    name: \"name\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_applications = cloudflare.get_zero_trust_access_applications(account_id=\"account_id\",\n    zone_id=\"zone_id\",\n    aud=\"aud\",\n    domain=\"domain\",\n    exact=True,\n    name=\"name\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessApplications = Cloudflare.Index.GetZeroTrustAccessApplications.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n        Aud = \"aud\",\n        Domain = \"domain\",\n        Exact = true,\n        Name = \"name\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessApplications(ctx, \u0026cloudflare.LookupZeroTrustAccessApplicationsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t\tAud:       pulumi.StringRef(\"aud\"),\n\t\t\tDomain:    pulumi.StringRef(\"domain\"),\n\t\t\tExact:     pulumi.BoolRef(true),\n\t\t\tName:      pulumi.StringRef(\"name\"),\n\t\t\tSearch:    pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessApplicationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessApplications = CloudflareFunctions.getZeroTrustAccessApplications(GetZeroTrustAccessApplicationsArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .aud(\"aud\")\n            .domain(\"domain\")\n            .exact(true)\n            .name(\"name\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessApplications:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessApplications\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n        aud: aud\n        domain: domain\n        exact: true\n        name: name\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessApplications.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "aud": {
                        "type": "string",
                        "description": "The aud of the app.\n"
                    },
                    "domain": {
                        "type": "string",
                        "description": "The domain of the app.\n"
                    },
                    "exact": {
                        "type": "boolean",
                        "description": "True for only exact string matches against passed name/domain query parameters.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the app.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search for apps by other listed query parameters.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessApplications.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "aud": {
                        "description": "The aud of the app.\n",
                        "type": "string"
                    },
                    "domain": {
                        "description": "The domain of the app.\n",
                        "type": "string"
                    },
                    "exact": {
                        "description": "True for only exact string matches against passed name/domain query parameters.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "The name of the app.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessApplicationsResult:getZeroTrustAccessApplicationsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search for apps by other listed query parameters.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessCustomPage:getZeroTrustAccessCustomPage": {
            "description": "Accepted Permissions\n\n- `Access: Custom Pages Read`\n- `Access: Custom Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessCustomPage = cloudflare.getZeroTrustAccessCustomPage({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    customPageId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_custom_page = cloudflare.get_zero_trust_access_custom_page(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    custom_page_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessCustomPage = Cloudflare.Index.GetZeroTrustAccessCustomPage.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CustomPageId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessCustomPage(ctx, \u0026cloudflare.LookupZeroTrustAccessCustomPageArgs{\n\t\t\tAccountId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCustomPageId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessCustomPageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessCustomPage = CloudflareFunctions.getZeroTrustAccessCustomPage(GetZeroTrustAccessCustomPageArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .customPageId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessCustomPage:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessCustomPage\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        customPageId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessCustomPage.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "customPageId": {
                        "type": "string",
                        "description": "UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "customPageId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessCustomPage.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "customHtml": {
                        "description": "Custom page HTML.\n",
                        "type": "string"
                    },
                    "customPageId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Custom page name.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Custom page type.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"identityDenied\"\" pulumi-lang-dotnet=\"\"IdentityDenied\"\" pulumi-lang-go=\"\"identityDenied\"\" pulumi-lang-python=\"\"identity_denied\"\" pulumi-lang-yaml=\"\"identityDenied\"\" pulumi-lang-java=\"\"identityDenied\"\"\u003e\"identityDenied\"\u003c/span\u003e, \"forbidden\".\n",
                        "type": "string"
                    },
                    "uid": {
                        "description": "UUID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "customHtml",
                    "customPageId",
                    "id",
                    "name",
                    "type",
                    "uid"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessCustomPages:getZeroTrustAccessCustomPages": {
            "description": "Accepted Permissions\n\n- `Access: Custom Pages Read`\n- `Access: Custom Pages Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessCustomPages = cloudflare.getZeroTrustAccessCustomPages({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_custom_pages = cloudflare.get_zero_trust_access_custom_pages(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessCustomPages = Cloudflare.Index.GetZeroTrustAccessCustomPages.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessCustomPages(ctx, \u0026cloudflare.LookupZeroTrustAccessCustomPagesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessCustomPagesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessCustomPages = CloudflareFunctions.getZeroTrustAccessCustomPages(GetZeroTrustAccessCustomPagesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessCustomPages:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessCustomPages\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessCustomPages.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessCustomPages.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessCustomPagesResult:getZeroTrustAccessCustomPagesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessGroup:getZeroTrustAccessGroup": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessGroup = cloudflare.getZeroTrustAccessGroup({\n    groupId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_group = cloudflare.get_zero_trust_access_group(group_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessGroup = Cloudflare.Index.GetZeroTrustAccessGroup.Invoke(new()\n    {\n        GroupId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessGroup(ctx, \u0026cloudflare.LookupZeroTrustAccessGroupArgs{\n\t\t\tGroupId:   pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessGroup = CloudflareFunctions.getZeroTrustAccessGroup(GetZeroTrustAccessGroupArgs.builder()\n            .groupId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessGroup:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessGroup\n      arguments:\n        groupId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessGroup.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupFilter:getZeroTrustAccessGroupFilter"
                    },
                    "groupId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessGroup.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "excludes": {
                        "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupExclude:getZeroTrustAccessGroupExclude"
                        },
                        "type": "array"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupFilter:getZeroTrustAccessGroupFilter"
                    },
                    "groupId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "includes": {
                        "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupInclude:getZeroTrustAccessGroupInclude"
                        },
                        "type": "array"
                    },
                    "isDefaults": {
                        "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupIsDefault:getZeroTrustAccessGroupIsDefault"
                        },
                        "type": "array"
                    },
                    "name": {
                        "description": "The name of the Access group.\n",
                        "type": "string"
                    },
                    "requires": {
                        "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupRequire:getZeroTrustAccessGroupRequire"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "excludes",
                    "id",
                    "includes",
                    "isDefaults",
                    "name",
                    "requires"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessGroups:getZeroTrustAccessGroups": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessGroups = cloudflare.getZeroTrustAccessGroups({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n    name: \"name\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_groups = cloudflare.get_zero_trust_access_groups(account_id=\"account_id\",\n    zone_id=\"zone_id\",\n    name=\"name\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessGroups = Cloudflare.Index.GetZeroTrustAccessGroups.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n        Name = \"name\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessGroups(ctx, \u0026cloudflare.LookupZeroTrustAccessGroupsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t\tName:      pulumi.StringRef(\"name\"),\n\t\t\tSearch:    pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessGroups = CloudflareFunctions.getZeroTrustAccessGroups(GetZeroTrustAccessGroupsArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .name(\"name\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessGroups:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessGroups\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n        name: name\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessGroups.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the group.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search for groups by other listed query parameters.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessGroups.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "The name of the group.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessGroupsResult:getZeroTrustAccessGroupsResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search for groups by other listed query parameters.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProvider:getZeroTrustAccessIdentityProvider": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessIdentityProvider = cloudflare.getZeroTrustAccessIdentityProvider({\n    identityProviderId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_identity_provider = cloudflare.get_zero_trust_access_identity_provider(identity_provider_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessIdentityProvider = Cloudflare.Index.GetZeroTrustAccessIdentityProvider.Invoke(new()\n    {\n        IdentityProviderId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessIdentityProvider(ctx, \u0026cloudflare.LookupZeroTrustAccessIdentityProviderArgs{\n\t\t\tIdentityProviderId: pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tAccountId:          pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:             pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessIdentityProviderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessIdentityProvider = CloudflareFunctions.getZeroTrustAccessIdentityProvider(GetZeroTrustAccessIdentityProviderArgs.builder()\n            .identityProviderId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessIdentityProvider:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessIdentityProvider\n      arguments:\n        identityProviderId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessIdentityProvider.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProviderFilter:getZeroTrustAccessIdentityProviderFilter"
                    },
                    "identityProviderId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessIdentityProvider.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProviderConfig:getZeroTrustAccessIdentityProviderConfig",
                        "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProviderFilter:getZeroTrustAccessIdentityProviderFilter"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "identityProviderId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the identity provider, shown to users on the login page.\n",
                        "type": "string"
                    },
                    "scimConfig": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProviderScimConfig:getZeroTrustAccessIdentityProviderScimConfig",
                        "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider.\n"
                    },
                    "type": {
                        "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/).\nAvailable values: \"onetimepin\", \"azureAD\", \"saml\", \"centrify\", \"facebook\", \"github\", \"google-apps\", \"google\", \"linkedin\", \"oidc\", \"okta\", \"onelogin\", \"pingone\", \"yandex\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "config",
                    "id",
                    "name",
                    "scimConfig",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessIdentityProviders:getZeroTrustAccessIdentityProviders": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessIdentityProviders = cloudflare.getZeroTrustAccessIdentityProviders({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n    scimEnabled: \"scim_enabled\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_identity_providers = cloudflare.get_zero_trust_access_identity_providers(account_id=\"account_id\",\n    zone_id=\"zone_id\",\n    scim_enabled=\"scim_enabled\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessIdentityProviders = Cloudflare.Index.GetZeroTrustAccessIdentityProviders.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n        ScimEnabled = \"scim_enabled\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessIdentityProviders(ctx, \u0026cloudflare.LookupZeroTrustAccessIdentityProvidersArgs{\n\t\t\tAccountId:   pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:      pulumi.StringRef(\"zone_id\"),\n\t\t\tScimEnabled: pulumi.StringRef(\"scim_enabled\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessIdentityProvidersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessIdentityProviders = CloudflareFunctions.getZeroTrustAccessIdentityProviders(GetZeroTrustAccessIdentityProvidersArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .scimEnabled(\"scim_enabled\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessIdentityProviders:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessIdentityProviders\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n        scimEnabled: scim_enabled\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessIdentityProviders.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "scimEnabled": {
                        "type": "string",
                        "description": "Indicates to Access to only retrieve identity providers that have the System for Cross-Domain Identity Management (SCIM) enabled.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessIdentityProviders.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessIdentityProvidersResult:getZeroTrustAccessIdentityProvidersResult"
                        },
                        "type": "array"
                    },
                    "scimEnabled": {
                        "description": "Indicates to Access to only retrieve identity providers that have the System for Cross-Domain Identity Management (SCIM) enabled.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTarget:getZeroTrustAccessInfrastructureTarget": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessInfrastructureTarget = cloudflare.getZeroTrustAccessInfrastructureTarget({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    targetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_infrastructure_target = cloudflare.get_zero_trust_access_infrastructure_target(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    target_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessInfrastructureTarget = Cloudflare.Index.GetZeroTrustAccessInfrastructureTarget.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TargetId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessInfrastructureTarget(ctx, \u0026cloudflare.LookupZeroTrustAccessInfrastructureTargetArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTargetId:  pulumi.StringRef(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessInfrastructureTargetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessInfrastructureTarget = CloudflareFunctions.getZeroTrustAccessInfrastructureTarget(GetZeroTrustAccessInfrastructureTargetArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .targetId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessInfrastructureTarget:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessInfrastructureTarget\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        targetId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessInfrastructureTarget.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetFilter:getZeroTrustAccessInfrastructureTargetFilter"
                    },
                    "targetId": {
                        "type": "string",
                        "description": "Target identifier\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessInfrastructureTarget.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Date and time at which the target was created\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetFilter:getZeroTrustAccessInfrastructureTargetFilter"
                    },
                    "hostname": {
                        "description": "A non-unique field that refers to a target\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Target identifier\n",
                        "type": "string"
                    },
                    "ip": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetIp:getZeroTrustAccessInfrastructureTargetIp",
                        "description": "The IPv4/IPv6 address that identifies where to reach a target\n"
                    },
                    "modifiedAt": {
                        "description": "Date and time at which the target was modified\n",
                        "type": "string"
                    },
                    "targetId": {
                        "description": "Target identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "hostname",
                    "id",
                    "ip",
                    "modifiedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessInfrastructureTargets:getZeroTrustAccessInfrastructureTargets": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessInfrastructureTargets = cloudflare.getZeroTrustAccessInfrastructureTargets({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    createdAfter: \"2019-12-27T18:11:19.117Z\",\n    createdBefore: \"2019-12-27T18:11:19.117Z\",\n    direction: \"asc\",\n    hostname: \"hostname\",\n    hostnameContains: \"hostname_contains\",\n    ipLike: \"ip_like\",\n    ipV4: \"ip_v4\",\n    ipV6: \"ip_v6\",\n    ips: [\"string\"],\n    ipv4End: \"ipv4_end\",\n    ipv4Start: \"ipv4_start\",\n    ipv6End: \"ipv6_end\",\n    ipv6Start: \"ipv6_start\",\n    modifiedAfter: \"2019-12-27T18:11:19.117Z\",\n    modifiedBefore: \"2019-12-27T18:11:19.117Z\",\n    order: \"hostname\",\n    targetIds: [\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"],\n    virtualNetworkId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_infrastructure_targets = cloudflare.get_zero_trust_access_infrastructure_targets(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    created_after=\"2019-12-27T18:11:19.117Z\",\n    created_before=\"2019-12-27T18:11:19.117Z\",\n    direction=\"asc\",\n    hostname=\"hostname\",\n    hostname_contains=\"hostname_contains\",\n    ip_like=\"ip_like\",\n    ip_v4=\"ip_v4\",\n    ip_v6=\"ip_v6\",\n    ips=[\"string\"],\n    ipv4_end=\"ipv4_end\",\n    ipv4_start=\"ipv4_start\",\n    ipv6_end=\"ipv6_end\",\n    ipv6_start=\"ipv6_start\",\n    modified_after=\"2019-12-27T18:11:19.117Z\",\n    modified_before=\"2019-12-27T18:11:19.117Z\",\n    order=\"hostname\",\n    target_ids=[\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"],\n    virtual_network_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessInfrastructureTargets = Cloudflare.Index.GetZeroTrustAccessInfrastructureTargets.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CreatedAfter = \"2019-12-27T18:11:19.117Z\",\n        CreatedBefore = \"2019-12-27T18:11:19.117Z\",\n        Direction = \"asc\",\n        Hostname = \"hostname\",\n        HostnameContains = \"hostname_contains\",\n        IpLike = \"ip_like\",\n        IpV4 = \"ip_v4\",\n        IpV6 = \"ip_v6\",\n        Ips = new[]\n        {\n            \"string\",\n        },\n        Ipv4End = \"ipv4_end\",\n        Ipv4Start = \"ipv4_start\",\n        Ipv6End = \"ipv6_end\",\n        Ipv6Start = \"ipv6_start\",\n        ModifiedAfter = \"2019-12-27T18:11:19.117Z\",\n        ModifiedBefore = \"2019-12-27T18:11:19.117Z\",\n        Order = \"hostname\",\n        TargetIds = new[]\n        {\n            \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n        },\n        VirtualNetworkId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessInfrastructureTargets(ctx, \u0026cloudflare.LookupZeroTrustAccessInfrastructureTargetsArgs{\n\t\t\tAccountId:        pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCreatedAfter:     pulumi.StringRef(\"2019-12-27T18:11:19.117Z\"),\n\t\t\tCreatedBefore:    pulumi.StringRef(\"2019-12-27T18:11:19.117Z\"),\n\t\t\tDirection:        pulumi.StringRef(\"asc\"),\n\t\t\tHostname:         pulumi.StringRef(\"hostname\"),\n\t\t\tHostnameContains: pulumi.StringRef(\"hostname_contains\"),\n\t\t\tIpLike:           pulumi.StringRef(\"ip_like\"),\n\t\t\tIpV4:             pulumi.StringRef(\"ip_v4\"),\n\t\t\tIpV6:             pulumi.StringRef(\"ip_v6\"),\n\t\t\tIps: []string{\n\t\t\t\t\"string\",\n\t\t\t},\n\t\t\tIpv4End:        pulumi.StringRef(\"ipv4_end\"),\n\t\t\tIpv4Start:      pulumi.StringRef(\"ipv4_start\"),\n\t\t\tIpv6End:        pulumi.StringRef(\"ipv6_end\"),\n\t\t\tIpv6Start:      pulumi.StringRef(\"ipv6_start\"),\n\t\t\tModifiedAfter:  pulumi.StringRef(\"2019-12-27T18:11:19.117Z\"),\n\t\t\tModifiedBefore: pulumi.StringRef(\"2019-12-27T18:11:19.117Z\"),\n\t\t\tOrder:          pulumi.StringRef(\"hostname\"),\n\t\t\tTargetIds: []string{\n\t\t\t\t\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t\t},\n\t\t\tVirtualNetworkId: pulumi.StringRef(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessInfrastructureTargetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessInfrastructureTargets = CloudflareFunctions.getZeroTrustAccessInfrastructureTargets(GetZeroTrustAccessInfrastructureTargetsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .createdAfter(\"2019-12-27T18:11:19.117Z\")\n            .createdBefore(\"2019-12-27T18:11:19.117Z\")\n            .direction(\"asc\")\n            .hostname(\"hostname\")\n            .hostnameContains(\"hostname_contains\")\n            .ipLike(\"ip_like\")\n            .ipV4(\"ip_v4\")\n            .ipV6(\"ip_v6\")\n            .ips(\"string\")\n            .ipv4End(\"ipv4_end\")\n            .ipv4Start(\"ipv4_start\")\n            .ipv6End(\"ipv6_end\")\n            .ipv6Start(\"ipv6_start\")\n            .modifiedAfter(\"2019-12-27T18:11:19.117Z\")\n            .modifiedBefore(\"2019-12-27T18:11:19.117Z\")\n            .order(\"hostname\")\n            .targetIds(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .virtualNetworkId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessInfrastructureTargets:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessInfrastructureTargets\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        createdAfter: 2019-12-27T18:11:19.117Z\n        createdBefore: 2019-12-27T18:11:19.117Z\n        direction: asc\n        hostname: hostname\n        hostnameContains: hostname_contains\n        ipLike: ip_like\n        ipV4: ip_v4\n        ipV6: ip_v6\n        ips:\n          - string\n        ipv4End: ipv4_end\n        ipv4Start: ipv4_start\n        ipv6End: ipv6_end\n        ipv6Start: ipv6_start\n        modifiedAfter: 2019-12-27T18:11:19.117Z\n        modifiedBefore: 2019-12-27T18:11:19.117Z\n        order: hostname\n        targetIds:\n          - 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n        virtualNetworkId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessInfrastructureTargets.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Account identifier\n"
                    },
                    "createdAfter": {
                        "type": "string",
                        "description": "Date and time at which the target was created after (inclusive)\n"
                    },
                    "createdBefore": {
                        "type": "string",
                        "description": "Date and time at which the target was created before (inclusive)\n"
                    },
                    "direction": {
                        "type": "string",
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "Hostname of a target\n"
                    },
                    "hostnameContains": {
                        "type": "string",
                        "description": "Partial match to the hostname of a target\n"
                    },
                    "ipLike": {
                        "type": "string",
                        "description": "Filters for targets whose IP addresses look like the specified string.\nSupports `*` as a wildcard character\n"
                    },
                    "ipV4": {
                        "type": "string",
                        "description": "IPv4 address of the target\n"
                    },
                    "ipV6": {
                        "type": "string",
                        "description": "IPv6 address of the target\n"
                    },
                    "ips": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Filters for targets that have any of the following IP addresses. Specify\n\u003cspan pulumi-lang-nodejs=\"`ips`\" pulumi-lang-dotnet=\"`Ips`\" pulumi-lang-go=\"`ips`\" pulumi-lang-python=\"`ips`\" pulumi-lang-yaml=\"`ips`\" pulumi-lang-java=\"`ips`\"\u003e`ips`\u003c/span\u003e multiple times in query parameter to build list of candidates.\n"
                    },
                    "ipv4End": {
                        "type": "string",
                        "description": "Defines an IPv4 filter range's ending value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv4Start`\" pulumi-lang-dotnet=\"`Ipv4Start`\" pulumi-lang-go=\"`ipv4Start`\" pulumi-lang-python=\"`ipv4_start`\" pulumi-lang-yaml=\"`ipv4Start`\" pulumi-lang-java=\"`ipv4Start`\"\u003e`ipv4Start`\u003c/span\u003e to be specified as well.\n"
                    },
                    "ipv4Start": {
                        "type": "string",
                        "description": "Defines an IPv4 filter range's starting value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv4End`\" pulumi-lang-dotnet=\"`Ipv4End`\" pulumi-lang-go=\"`ipv4End`\" pulumi-lang-python=\"`ipv4_end`\" pulumi-lang-yaml=\"`ipv4End`\" pulumi-lang-java=\"`ipv4End`\"\u003e`ipv4End`\u003c/span\u003e to be specified as well.\n"
                    },
                    "ipv6End": {
                        "type": "string",
                        "description": "Defines an IPv6 filter range's ending value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv6Start`\" pulumi-lang-dotnet=\"`Ipv6Start`\" pulumi-lang-go=\"`ipv6Start`\" pulumi-lang-python=\"`ipv6_start`\" pulumi-lang-yaml=\"`ipv6Start`\" pulumi-lang-java=\"`ipv6Start`\"\u003e`ipv6Start`\u003c/span\u003e to be specified as well.\n"
                    },
                    "ipv6Start": {
                        "type": "string",
                        "description": "Defines an IPv6 filter range's starting value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv6End`\" pulumi-lang-dotnet=\"`Ipv6End`\" pulumi-lang-go=\"`ipv6End`\" pulumi-lang-python=\"`ipv6_end`\" pulumi-lang-yaml=\"`ipv6End`\" pulumi-lang-java=\"`ipv6End`\"\u003e`ipv6End`\u003c/span\u003e to be specified as well.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "modifiedAfter": {
                        "type": "string",
                        "description": "Date and time at which the target was modified after (inclusive)\n"
                    },
                    "modifiedBefore": {
                        "type": "string",
                        "description": "Date and time at which the target was modified before (inclusive)\n"
                    },
                    "order": {
                        "type": "string",
                        "description": "The field to sort by.\nAvailable values: \"hostname\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n"
                    },
                    "targetIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Filters for targets that have any of the following UUIDs. Specify\n\u003cspan pulumi-lang-nodejs=\"`targetIds`\" pulumi-lang-dotnet=\"`TargetIds`\" pulumi-lang-go=\"`targetIds`\" pulumi-lang-python=\"`target_ids`\" pulumi-lang-yaml=\"`targetIds`\" pulumi-lang-java=\"`targetIds`\"\u003e`targetIds`\u003c/span\u003e multiple times in query parameter to build list of\ncandidates.\n"
                    },
                    "virtualNetworkId": {
                        "type": "string",
                        "description": "Private virtual network identifier of the target\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessInfrastructureTargets.\n",
                "properties": {
                    "accountId": {
                        "description": "Account identifier\n",
                        "type": "string"
                    },
                    "createdAfter": {
                        "description": "Date and time at which the target was created after (inclusive)\n",
                        "type": "string"
                    },
                    "createdBefore": {
                        "description": "Date and time at which the target was created before (inclusive)\n",
                        "type": "string"
                    },
                    "direction": {
                        "description": "The sorting direction.\nAvailable values: \"asc\", \"desc\".\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "Hostname of a target\n",
                        "type": "string"
                    },
                    "hostnameContains": {
                        "description": "Partial match to the hostname of a target\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "ipLike": {
                        "description": "Filters for targets whose IP addresses look like the specified string.\nSupports `*` as a wildcard character\n",
                        "type": "string"
                    },
                    "ipV4": {
                        "description": "IPv4 address of the target\n",
                        "type": "string"
                    },
                    "ipV6": {
                        "description": "IPv6 address of the target\n",
                        "type": "string"
                    },
                    "ips": {
                        "description": "Filters for targets that have any of the following IP addresses. Specify\n\u003cspan pulumi-lang-nodejs=\"`ips`\" pulumi-lang-dotnet=\"`Ips`\" pulumi-lang-go=\"`ips`\" pulumi-lang-python=\"`ips`\" pulumi-lang-yaml=\"`ips`\" pulumi-lang-java=\"`ips`\"\u003e`ips`\u003c/span\u003e multiple times in query parameter to build list of candidates.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "ipv4End": {
                        "description": "Defines an IPv4 filter range's ending value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv4Start`\" pulumi-lang-dotnet=\"`Ipv4Start`\" pulumi-lang-go=\"`ipv4Start`\" pulumi-lang-python=\"`ipv4_start`\" pulumi-lang-yaml=\"`ipv4Start`\" pulumi-lang-java=\"`ipv4Start`\"\u003e`ipv4Start`\u003c/span\u003e to be specified as well.\n",
                        "type": "string"
                    },
                    "ipv4Start": {
                        "description": "Defines an IPv4 filter range's starting value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv4End`\" pulumi-lang-dotnet=\"`Ipv4End`\" pulumi-lang-go=\"`ipv4End`\" pulumi-lang-python=\"`ipv4_end`\" pulumi-lang-yaml=\"`ipv4End`\" pulumi-lang-java=\"`ipv4End`\"\u003e`ipv4End`\u003c/span\u003e to be specified as well.\n",
                        "type": "string"
                    },
                    "ipv6End": {
                        "description": "Defines an IPv6 filter range's ending value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv6Start`\" pulumi-lang-dotnet=\"`Ipv6Start`\" pulumi-lang-go=\"`ipv6Start`\" pulumi-lang-python=\"`ipv6_start`\" pulumi-lang-yaml=\"`ipv6Start`\" pulumi-lang-java=\"`ipv6Start`\"\u003e`ipv6Start`\u003c/span\u003e to be specified as well.\n",
                        "type": "string"
                    },
                    "ipv6Start": {
                        "description": "Defines an IPv6 filter range's starting value (inclusive). Requires\n\u003cspan pulumi-lang-nodejs=\"`ipv6End`\" pulumi-lang-dotnet=\"`Ipv6End`\" pulumi-lang-go=\"`ipv6End`\" pulumi-lang-python=\"`ipv6_end`\" pulumi-lang-yaml=\"`ipv6End`\" pulumi-lang-java=\"`ipv6End`\"\u003e`ipv6End`\u003c/span\u003e to be specified as well.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "modifiedAfter": {
                        "description": "Date and time at which the target was modified after (inclusive)\n",
                        "type": "string"
                    },
                    "modifiedBefore": {
                        "description": "Date and time at which the target was modified before (inclusive)\n",
                        "type": "string"
                    },
                    "order": {
                        "description": "The field to sort by.\nAvailable values: \"hostname\", \u003cspan pulumi-lang-nodejs=\"\"createdAt\"\" pulumi-lang-dotnet=\"\"CreatedAt\"\" pulumi-lang-go=\"\"createdAt\"\" pulumi-lang-python=\"\"created_at\"\" pulumi-lang-yaml=\"\"createdAt\"\" pulumi-lang-java=\"\"createdAt\"\"\u003e\"createdAt\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessInfrastructureTargetsResult:getZeroTrustAccessInfrastructureTargetsResult"
                        },
                        "type": "array"
                    },
                    "targetIds": {
                        "description": "Filters for targets that have any of the following UUIDs. Specify\n\u003cspan pulumi-lang-nodejs=\"`targetIds`\" pulumi-lang-dotnet=\"`TargetIds`\" pulumi-lang-go=\"`targetIds`\" pulumi-lang-python=\"`target_ids`\" pulumi-lang-yaml=\"`targetIds`\" pulumi-lang-java=\"`targetIds`\"\u003e`targetIds`\u003c/span\u003e multiple times in query parameter to build list of\ncandidates.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "virtualNetworkId": {
                        "description": "Private virtual network identifier of the target\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessKeyConfiguration:getZeroTrustAccessKeyConfiguration": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessKeyConfiguration = cloudflare.getZeroTrustAccessKeyConfiguration({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_key_configuration = cloudflare.get_zero_trust_access_key_configuration(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessKeyConfiguration = Cloudflare.Index.GetZeroTrustAccessKeyConfiguration.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessKeyConfiguration(ctx, \u0026cloudflare.LookupZeroTrustAccessKeyConfigurationArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessKeyConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessKeyConfiguration = CloudflareFunctions.getZeroTrustAccessKeyConfiguration(GetZeroTrustAccessKeyConfigurationArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessKeyConfiguration:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessKeyConfiguration\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessKeyConfiguration.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessKeyConfiguration.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "daysUntilNextRotation": {
                        "description": "The number of days until the next key rotation.\n",
                        "type": "number"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "keyRotationIntervalDays": {
                        "description": "The number of days between key rotations.\n",
                        "type": "number"
                    },
                    "lastKeyRotationAt": {
                        "description": "The timestamp of the previous key rotation.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "daysUntilNextRotation",
                    "id",
                    "keyRotationIntervalDays",
                    "lastKeyRotationAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessMtlsCertificate:getZeroTrustAccessMtlsCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsCertificate = cloudflare.getZeroTrustAccessMtlsCertificate({\n    certificateId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_certificate = cloudflare.get_zero_trust_access_mtls_certificate(certificate_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsCertificate = Cloudflare.Index.GetZeroTrustAccessMtlsCertificate.Invoke(new()\n    {\n        CertificateId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessMtlsCertificate(ctx, \u0026cloudflare.LookupZeroTrustAccessMtlsCertificateArgs{\n\t\t\tCertificateId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t\tAccountId:     pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:        pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessMtlsCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessMtlsCertificate = CloudflareFunctions.getZeroTrustAccessMtlsCertificate(GetZeroTrustAccessMtlsCertificateArgs.builder()\n            .certificateId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessMtlsCertificate:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessMtlsCertificate\n      arguments:\n        certificateId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessMtlsCertificate.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "certificateId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "certificateId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessMtlsCertificate.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "associatedHostnames": {
                        "description": "The hostnames of the applications that will use this certificate.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "certificateId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "expiresOn": {
                        "type": "string"
                    },
                    "fingerprint": {
                        "description": "The MD5 fingerprint of the certificate.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the certificate.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "associatedHostnames",
                    "certificateId",
                    "expiresOn",
                    "fingerprint",
                    "id",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessMtlsCertificates:getZeroTrustAccessMtlsCertificates": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsCertificates = cloudflare.getZeroTrustAccessMtlsCertificates({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_certificates = cloudflare.get_zero_trust_access_mtls_certificates(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsCertificates = Cloudflare.Index.GetZeroTrustAccessMtlsCertificates.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessMtlsCertificates(ctx, \u0026cloudflare.LookupZeroTrustAccessMtlsCertificatesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessMtlsCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessMtlsCertificates = CloudflareFunctions.getZeroTrustAccessMtlsCertificates(GetZeroTrustAccessMtlsCertificatesArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessMtlsCertificates:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessMtlsCertificates\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessMtlsCertificates.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessMtlsCertificates.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessMtlsCertificatesResult:getZeroTrustAccessMtlsCertificatesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessMtlsHostnameSettings:getZeroTrustAccessMtlsHostnameSettings": {
            "description": "Accepted Permissions\n\n- `Access: Mutual TLS Certificates Read`\n- `Access: Mutual TLS Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessMtlsHostnameSettings = cloudflare.getZeroTrustAccessMtlsHostnameSettings({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_mtls_hostname_settings = cloudflare.get_zero_trust_access_mtls_hostname_settings(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessMtlsHostnameSettings = Cloudflare.Index.GetZeroTrustAccessMtlsHostnameSettings.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessMtlsHostnameSettings(ctx, \u0026cloudflare.LookupZeroTrustAccessMtlsHostnameSettingsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessMtlsHostnameSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessMtlsHostnameSettings = CloudflareFunctions.getZeroTrustAccessMtlsHostnameSettings(GetZeroTrustAccessMtlsHostnameSettingsArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessMtlsHostnameSettings:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessMtlsHostnameSettings\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessMtlsHostnameSettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessMtlsHostnameSettings.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "chinaNetwork": {
                        "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.\n",
                        "type": "boolean"
                    },
                    "clientCertificateForwarding": {
                        "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.\n",
                        "type": "boolean"
                    },
                    "hostname": {
                        "description": "The hostname that these settings apply to.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "chinaNetwork",
                    "clientCertificateForwarding",
                    "hostname",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicies:getZeroTrustAccessPolicies": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessPolicies = cloudflare.getZeroTrustAccessPolicies({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_policies = cloudflare.get_zero_trust_access_policies(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessPolicies = Cloudflare.Index.GetZeroTrustAccessPolicies.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessPolicies(ctx, \u0026cloudflare.LookupZeroTrustAccessPoliciesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessPolicies = CloudflareFunctions.getZeroTrustAccessPolicies(GetZeroTrustAccessPoliciesArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessPolicies:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessPolicies\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessPolicies.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessPolicies.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessPoliciesResult:getZeroTrustAccessPoliciesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessPolicy:getZeroTrustAccessPolicy": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessPolicy = cloudflare.getZeroTrustAccessPolicy({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    policyId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_policy = cloudflare.get_zero_trust_access_policy(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    policy_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessPolicy = Cloudflare.Index.GetZeroTrustAccessPolicy.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        PolicyId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessPolicy(ctx, \u0026cloudflare.LookupZeroTrustAccessPolicyArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tPolicyId:  \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessPolicy = CloudflareFunctions.getZeroTrustAccessPolicy(GetZeroTrustAccessPolicyArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .policyId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessPolicy:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessPolicy\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        policyId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessPolicy.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "policyId": {
                        "type": "string",
                        "description": "The UUID of the policy\n"
                    }
                },
                "type": "object",
                "required": [
                    "policyId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessPolicy.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "appCount": {
                        "description": "Number of access applications currently using this policy.\n",
                        "type": "integer"
                    },
                    "approvalGroups": {
                        "description": "Administrators who can approve a temporary authentication request.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyApprovalGroup:getZeroTrustAccessPolicyApprovalGroup"
                        },
                        "type": "array"
                    },
                    "approvalRequired": {
                        "description": "Requires the user to request access from an administrator at the start of each session.\n",
                        "type": "boolean"
                    },
                    "connectionRules": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyConnectionRules:getZeroTrustAccessPolicyConnectionRules",
                        "description": "The rules that define how users may connect to targets secured by your application.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "decision": {
                        "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action.\nAvailable values: \"allow\", \"deny\", \u003cspan pulumi-lang-nodejs=\"\"nonIdentity\"\" pulumi-lang-dotnet=\"\"NonIdentity\"\" pulumi-lang-go=\"\"nonIdentity\"\" pulumi-lang-python=\"\"non_identity\"\" pulumi-lang-yaml=\"\"nonIdentity\"\" pulumi-lang-java=\"\"nonIdentity\"\"\u003e\"nonIdentity\"\u003c/span\u003e, \"bypass\".\n",
                        "type": "string"
                    },
                    "excludes": {
                        "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyExclude:getZeroTrustAccessPolicyExclude"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The UUID of the policy\n",
                        "type": "string"
                    },
                    "includes": {
                        "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyInclude:getZeroTrustAccessPolicyInclude"
                        },
                        "type": "array"
                    },
                    "isolationRequired": {
                        "description": "Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.\n",
                        "type": "boolean"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyMfaConfig:getZeroTrustAccessPolicyMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings.\n"
                    },
                    "name": {
                        "description": "The name of the Access policy.\n",
                        "type": "string"
                    },
                    "policyId": {
                        "description": "The UUID of the policy\n",
                        "type": "string"
                    },
                    "purposeJustificationPrompt": {
                        "description": "A custom message that will appear on the purpose justification screen.\n",
                        "type": "string"
                    },
                    "purposeJustificationRequired": {
                        "description": "Require users to enter a justification when they log in to the application.\n",
                        "type": "boolean"
                    },
                    "requires": {
                        "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessPolicyRequire:getZeroTrustAccessPolicyRequire"
                        },
                        "type": "array"
                    },
                    "reusable": {
                        "type": "boolean"
                    },
                    "sessionDuration": {
                        "description": "The amount of time that tokens issued for the application will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "appCount",
                    "approvalGroups",
                    "approvalRequired",
                    "connectionRules",
                    "createdAt",
                    "decision",
                    "excludes",
                    "id",
                    "includes",
                    "isolationRequired",
                    "mfaConfig",
                    "name",
                    "policyId",
                    "purposeJustificationPrompt",
                    "purposeJustificationRequired",
                    "requires",
                    "reusable",
                    "sessionDuration",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessServiceToken:getZeroTrustAccessServiceToken": {
            "description": "Accepted Permissions\n\n- `Access: Service Tokens Read`\n- `Access: Service Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessServiceToken = cloudflare.getZeroTrustAccessServiceToken({\n    serviceTokenId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_service_token = cloudflare.get_zero_trust_access_service_token(service_token_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessServiceToken = Cloudflare.Index.GetZeroTrustAccessServiceToken.Invoke(new()\n    {\n        ServiceTokenId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessServiceToken(ctx, \u0026cloudflare.LookupZeroTrustAccessServiceTokenArgs{\n\t\t\tServiceTokenId: pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tAccountId:      pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:         pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessServiceTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessServiceToken = CloudflareFunctions.getZeroTrustAccessServiceToken(GetZeroTrustAccessServiceTokenArgs.builder()\n            .serviceTokenId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessServiceToken:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessServiceToken\n      arguments:\n        serviceTokenId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessServiceToken.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessServiceTokenFilter:getZeroTrustAccessServiceTokenFilter"
                    },
                    "serviceTokenId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessServiceToken.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "clientId": {
                        "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header.\n",
                        "type": "string"
                    },
                    "duration": {
                        "description": "The duration for how long the service token will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h).\n",
                        "type": "string"
                    },
                    "expiresAt": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustAccessServiceTokenFilter:getZeroTrustAccessServiceTokenFilter"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the service token.\n",
                        "type": "string"
                    },
                    "serviceTokenId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "clientId",
                    "duration",
                    "expiresAt",
                    "id",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessServiceTokens:getZeroTrustAccessServiceTokens": {
            "description": "Accepted Permissions\n\n- `Access: Service Tokens Read`\n- `Access: Service Tokens Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessServiceTokens = cloudflare.getZeroTrustAccessServiceTokens({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n    name: \"name\",\n    search: \"search\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_service_tokens = cloudflare.get_zero_trust_access_service_tokens(account_id=\"account_id\",\n    zone_id=\"zone_id\",\n    name=\"name\",\n    search=\"search\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessServiceTokens = Cloudflare.Index.GetZeroTrustAccessServiceTokens.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n        Name = \"name\",\n        Search = \"search\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessServiceTokens(ctx, \u0026cloudflare.LookupZeroTrustAccessServiceTokensArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t\tName:      pulumi.StringRef(\"name\"),\n\t\t\tSearch:    pulumi.StringRef(\"search\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessServiceTokensArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessServiceTokens = CloudflareFunctions.getZeroTrustAccessServiceTokens(GetZeroTrustAccessServiceTokensArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .name(\"name\")\n            .search(\"search\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessServiceTokens:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessServiceTokens\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n        name: name\n        search: search\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessServiceTokens.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the service token.\n"
                    },
                    "search": {
                        "type": "string",
                        "description": "Search for service tokens by other listed query parameters.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessServiceTokens.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "The name of the service token.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessServiceTokensResult:getZeroTrustAccessServiceTokensResult"
                        },
                        "type": "array"
                    },
                    "search": {
                        "description": "Search for service tokens by other listed query parameters.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessShortLivedCertificate:getZeroTrustAccessShortLivedCertificate": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessShortLivedCertificate = cloudflare.getZeroTrustAccessShortLivedCertificate({\n    appId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_short_lived_certificate = cloudflare.get_zero_trust_access_short_lived_certificate(app_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessShortLivedCertificate = Cloudflare.Index.GetZeroTrustAccessShortLivedCertificate.Invoke(new()\n    {\n        AppId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessShortLivedCertificate(ctx, \u0026cloudflare.LookupZeroTrustAccessShortLivedCertificateArgs{\n\t\t\tAppId:     \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessShortLivedCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessShortLivedCertificate = CloudflareFunctions.getZeroTrustAccessShortLivedCertificate(GetZeroTrustAccessShortLivedCertificateArgs.builder()\n            .appId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessShortLivedCertificate:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessShortLivedCertificate\n      arguments:\n        appId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessShortLivedCertificate.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "appId": {
                        "type": "string",
                        "description": "UUID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "appId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessShortLivedCertificate.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "appId": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "aud": {
                        "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID.\n",
                        "type": "string"
                    },
                    "publicKey": {
                        "description": "The public key to add to your SSH server configuration.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "appId",
                    "aud",
                    "id",
                    "publicKey"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessShortLivedCertificates:getZeroTrustAccessShortLivedCertificates": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessShortLivedCertificates = cloudflare.getZeroTrustAccessShortLivedCertificates({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_short_lived_certificates = cloudflare.get_zero_trust_access_short_lived_certificates(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessShortLivedCertificates = Cloudflare.Index.GetZeroTrustAccessShortLivedCertificates.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessShortLivedCertificates(ctx, \u0026cloudflare.LookupZeroTrustAccessShortLivedCertificatesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessShortLivedCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessShortLivedCertificates = CloudflareFunctions.getZeroTrustAccessShortLivedCertificates(GetZeroTrustAccessShortLivedCertificatesArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessShortLivedCertificates:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessShortLivedCertificates\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessShortLivedCertificates.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessShortLivedCertificates.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessShortLivedCertificatesResult:getZeroTrustAccessShortLivedCertificatesResult"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessTag:getZeroTrustAccessTag": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessTag = cloudflare.getZeroTrustAccessTag({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    tagName: \"engineers\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_tag = cloudflare.get_zero_trust_access_tag(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    tag_name=\"engineers\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessTag = Cloudflare.Index.GetZeroTrustAccessTag.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TagName = \"engineers\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessTag(ctx, \u0026cloudflare.LookupZeroTrustAccessTagArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTagName:   \"engineers\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessTag = CloudflareFunctions.getZeroTrustAccessTag(GetZeroTrustAccessTagArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .tagName(\"engineers\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessTag:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessTag\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        tagName: engineers\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessTag.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "tagName": {
                        "type": "string",
                        "description": "The name of the tag\n"
                    }
                },
                "type": "object",
                "required": [
                    "tagName"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessTag.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The name of the tag\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the tag\n",
                        "type": "string"
                    },
                    "tagName": {
                        "description": "The name of the tag\n",
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "tagName"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustAccessTags:getZeroTrustAccessTags": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustAccessTags = cloudflare.getZeroTrustAccessTags({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_access_tags = cloudflare.get_zero_trust_access_tags(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustAccessTags = Cloudflare.Index.GetZeroTrustAccessTags.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustAccessTags(ctx, \u0026cloudflare.LookupZeroTrustAccessTagsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustAccessTagsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustAccessTags = CloudflareFunctions.getZeroTrustAccessTags(GetZeroTrustAccessTagsArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustAccessTags:\n    fn::invoke:\n      function: cloudflare:getZeroTrustAccessTags\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustAccessTags.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustAccessTags.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustAccessTagsResult:getZeroTrustAccessTagsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfile:getZeroTrustDeviceCustomProfile": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceCustomProfile = cloudflare.getZeroTrustDeviceCustomProfile({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    policyId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_custom_profile = cloudflare.get_zero_trust_device_custom_profile(account_id=\"699d98642c564d2e855e9661899b7252\",\n    policy_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceCustomProfile = Cloudflare.Index.GetZeroTrustDeviceCustomProfile.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        PolicyId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceCustomProfile(ctx, \u0026cloudflare.LookupZeroTrustDeviceCustomProfileArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tPolicyId:  \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceCustomProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceCustomProfile = CloudflareFunctions.getZeroTrustDeviceCustomProfile(GetZeroTrustDeviceCustomProfileArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .policyId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceCustomProfile:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceCustomProfile\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        policyId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceCustomProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "policyId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "policyId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceCustomProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "allowModeSwitch": {
                        "description": "Whether to allow the user to switch WARP between modes.\n",
                        "type": "boolean"
                    },
                    "allowUpdates": {
                        "description": "Whether to receive update notifications when a new version of the client is available.\n",
                        "type": "boolean"
                    },
                    "allowedToLeave": {
                        "description": "Whether to allow devices to leave the organization.\n",
                        "type": "boolean"
                    },
                    "autoConnect": {
                        "description": "The amount of time in seconds to reconnect after having been disabled.\n",
                        "type": "number"
                    },
                    "captivePortal": {
                        "description": "Turn on the captive portal after the specified amount of time.\n",
                        "type": "number"
                    },
                    "default": {
                        "description": "Whether the policy is the default policy for an account.\n",
                        "type": "boolean"
                    },
                    "description": {
                        "description": "A description of the policy.\n",
                        "type": "string"
                    },
                    "disableAutoFallback": {
                        "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n",
                        "type": "boolean"
                    },
                    "enabled": {
                        "description": "Whether the policy will be applied to matching devices.\n",
                        "type": "boolean"
                    },
                    "excludeOfficeIps": {
                        "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n",
                        "type": "boolean"
                    },
                    "excludes": {
                        "description": "List of routes excluded in the WARP client's tunnel.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfileExclude:getZeroTrustDeviceCustomProfileExclude"
                        },
                        "type": "array"
                    },
                    "fallbackDomains": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfileFallbackDomain:getZeroTrustDeviceCustomProfileFallbackDomain"
                        },
                        "type": "array"
                    },
                    "gatewayUniqueId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "includes": {
                        "description": "List of routes included in the WARP client's tunnel.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfileInclude:getZeroTrustDeviceCustomProfileInclude"
                        },
                        "type": "array"
                    },
                    "lanAllowMinutes": {
                        "description": "The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset.\n",
                        "type": "number"
                    },
                    "lanAllowSubnetSize": {
                        "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset.\n",
                        "type": "number"
                    },
                    "match": {
                        "description": "The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service*token*uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\".\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the device settings profile.\n",
                        "type": "string"
                    },
                    "policyId": {
                        "type": "string"
                    },
                    "precedence": {
                        "description": "The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field.\n",
                        "type": "number"
                    },
                    "registerInterfaceIpWithDns": {
                        "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n",
                        "type": "boolean"
                    },
                    "sccmVpnBoundarySupport": {
                        "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n",
                        "type": "boolean"
                    },
                    "serviceModeV2": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfileServiceModeV2:getZeroTrustDeviceCustomProfileServiceModeV2"
                    },
                    "supportUrl": {
                        "description": "The URL to launch when the Send Feedback button is clicked.\n",
                        "type": "string"
                    },
                    "switchLocked": {
                        "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n",
                        "type": "boolean"
                    },
                    "targetTests": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfileTargetTest:getZeroTrustDeviceCustomProfileTargetTest"
                        },
                        "type": "array"
                    },
                    "tunnelProtocol": {
                        "description": "Determines which tunnel protocol to use.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "allowModeSwitch",
                    "allowUpdates",
                    "allowedToLeave",
                    "autoConnect",
                    "captivePortal",
                    "default",
                    "description",
                    "disableAutoFallback",
                    "enabled",
                    "excludes",
                    "excludeOfficeIps",
                    "fallbackDomains",
                    "gatewayUniqueId",
                    "id",
                    "includes",
                    "lanAllowMinutes",
                    "lanAllowSubnetSize",
                    "match",
                    "name",
                    "policyId",
                    "precedence",
                    "registerInterfaceIpWithDns",
                    "sccmVpnBoundarySupport",
                    "serviceModeV2",
                    "supportUrl",
                    "switchLocked",
                    "targetTests",
                    "tunnelProtocol"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfileLocalDomainFallback:getZeroTrustDeviceCustomProfileLocalDomainFallback": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceCustomProfileLocalDomainFallback = cloudflare.getZeroTrustDeviceCustomProfileLocalDomainFallback({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    policyId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_custom_profile_local_domain_fallback = cloudflare.get_zero_trust_device_custom_profile_local_domain_fallback(account_id=\"699d98642c564d2e855e9661899b7252\",\n    policy_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceCustomProfileLocalDomainFallback = Cloudflare.Index.GetZeroTrustDeviceCustomProfileLocalDomainFallback.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        PolicyId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceCustomProfileLocalDomainFallback(ctx, \u0026cloudflare.LookupZeroTrustDeviceCustomProfileLocalDomainFallbackArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tPolicyId:  \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceCustomProfileLocalDomainFallbackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceCustomProfileLocalDomainFallback = CloudflareFunctions.getZeroTrustDeviceCustomProfileLocalDomainFallback(GetZeroTrustDeviceCustomProfileLocalDomainFallbackArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .policyId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceCustomProfileLocalDomainFallback:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceCustomProfileLocalDomainFallback\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        policyId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceCustomProfileLocalDomainFallback.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "policyId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "policyId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceCustomProfileLocalDomainFallback.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "description": {
                        "description": "A description of the fallback domain, displayed in the client UI.\n",
                        "type": "string"
                    },
                    "dnsServers": {
                        "description": "A list of IP addresses to handle domain resolution.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "policyId": {
                        "type": "string"
                    },
                    "suffix": {
                        "description": "The domain suffix to match when resolving locally.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "dnsServers",
                    "id",
                    "policyId",
                    "suffix"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceCustomProfiles:getZeroTrustDeviceCustomProfiles": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceCustomProfiles = cloudflare.getZeroTrustDeviceCustomProfiles({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_custom_profiles = cloudflare.get_zero_trust_device_custom_profiles(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceCustomProfiles = Cloudflare.Index.GetZeroTrustDeviceCustomProfiles.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceCustomProfiles(ctx, \u0026cloudflare.LookupZeroTrustDeviceCustomProfilesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceCustomProfilesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceCustomProfiles = CloudflareFunctions.getZeroTrustDeviceCustomProfiles(GetZeroTrustDeviceCustomProfilesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceCustomProfiles:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceCustomProfiles\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceCustomProfiles.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceCustomProfiles.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceCustomProfilesResult:getZeroTrustDeviceCustomProfilesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfile:getZeroTrustDeviceDefaultProfile": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceDefaultProfile = cloudflare.getZeroTrustDeviceDefaultProfile({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_default_profile = cloudflare.get_zero_trust_device_default_profile(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceDefaultProfile = Cloudflare.Index.GetZeroTrustDeviceDefaultProfile.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceDefaultProfile(ctx, \u0026cloudflare.LookupZeroTrustDeviceDefaultProfileArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceDefaultProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceDefaultProfile = CloudflareFunctions.getZeroTrustDeviceDefaultProfile(GetZeroTrustDeviceDefaultProfileArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceDefaultProfile:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceDefaultProfile\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceDefaultProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceDefaultProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "allowModeSwitch": {
                        "description": "Whether to allow the user to switch WARP between modes.\n",
                        "type": "boolean"
                    },
                    "allowUpdates": {
                        "description": "Whether to receive update notifications when a new version of the client is available.\n",
                        "type": "boolean"
                    },
                    "allowedToLeave": {
                        "description": "Whether to allow devices to leave the organization.\n",
                        "type": "boolean"
                    },
                    "autoConnect": {
                        "description": "The amount of time in seconds to reconnect after having been disabled.\n",
                        "type": "number"
                    },
                    "captivePortal": {
                        "description": "Turn on the captive portal after the specified amount of time.\n",
                        "type": "number"
                    },
                    "default": {
                        "description": "Whether the policy will be applied to matching devices.\n",
                        "type": "boolean"
                    },
                    "disableAutoFallback": {
                        "description": "If the \u003cspan pulumi-lang-nodejs=\"`dnsServer`\" pulumi-lang-dotnet=\"`DnsServer`\" pulumi-lang-go=\"`dnsServer`\" pulumi-lang-python=\"`dns_server`\" pulumi-lang-yaml=\"`dnsServer`\" pulumi-lang-java=\"`dnsServer`\"\u003e`dnsServer`\u003c/span\u003e field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n",
                        "type": "boolean"
                    },
                    "enabled": {
                        "description": "Whether the policy will be applied to matching devices.\n",
                        "type": "boolean"
                    },
                    "excludeOfficeIps": {
                        "description": "Whether to add Microsoft IPs to Split Tunnel exclusions.\n",
                        "type": "boolean"
                    },
                    "excludes": {
                        "description": "List of routes excluded in the WARP client's tunnel.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceDefaultProfileExclude:getZeroTrustDeviceDefaultProfileExclude"
                        },
                        "type": "array"
                    },
                    "fallbackDomains": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceDefaultProfileFallbackDomain:getZeroTrustDeviceDefaultProfileFallbackDomain"
                        },
                        "type": "array"
                    },
                    "gatewayUniqueId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "includes": {
                        "description": "List of routes included in the WARP client's tunnel.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceDefaultProfileInclude:getZeroTrustDeviceDefaultProfileInclude"
                        },
                        "type": "array"
                    },
                    "policyId": {
                        "type": "string"
                    },
                    "registerInterfaceIpWithDns": {
                        "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server.\n",
                        "type": "boolean"
                    },
                    "sccmVpnBoundarySupport": {
                        "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only).\n",
                        "type": "boolean"
                    },
                    "serviceModeV2": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceDefaultProfileServiceModeV2:getZeroTrustDeviceDefaultProfileServiceModeV2"
                    },
                    "supportUrl": {
                        "description": "The URL to launch when the Send Feedback button is clicked.\n",
                        "type": "string"
                    },
                    "switchLocked": {
                        "description": "Whether to allow the user to turn off the WARP switch and disconnect the client.\n",
                        "type": "boolean"
                    },
                    "tunnelProtocol": {
                        "description": "Determines which tunnel protocol to use.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "allowModeSwitch",
                    "allowUpdates",
                    "allowedToLeave",
                    "autoConnect",
                    "captivePortal",
                    "default",
                    "disableAutoFallback",
                    "enabled",
                    "excludes",
                    "excludeOfficeIps",
                    "fallbackDomains",
                    "gatewayUniqueId",
                    "id",
                    "includes",
                    "policyId",
                    "registerInterfaceIpWithDns",
                    "sccmVpnBoundarySupport",
                    "serviceModeV2",
                    "supportUrl",
                    "switchLocked",
                    "tunnelProtocol"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfileCertificates:getZeroTrustDeviceDefaultProfileCertificates": {
            "description": "Accepted Permissions\n\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceDefaultProfileCertificates = cloudflare.getZeroTrustDeviceDefaultProfileCertificates({\n    zoneId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_default_profile_certificates = cloudflare.get_zero_trust_device_default_profile_certificates(zone_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceDefaultProfileCertificates = Cloudflare.Index.GetZeroTrustDeviceDefaultProfileCertificates.Invoke(new()\n    {\n        ZoneId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceDefaultProfileCertificates(ctx, \u0026cloudflare.LookupZeroTrustDeviceDefaultProfileCertificatesArgs{\n\t\t\tZoneId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceDefaultProfileCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceDefaultProfileCertificates = CloudflareFunctions.getZeroTrustDeviceDefaultProfileCertificates(GetZeroTrustDeviceDefaultProfileCertificatesArgs.builder()\n            .zoneId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceDefaultProfileCertificates:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceDefaultProfileCertificates\n      arguments:\n        zoneId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceDefaultProfileCertificates.\n",
                "properties": {
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceDefaultProfileCertificates.\n",
                "properties": {
                    "enabled": {
                        "description": "The current status of the device policy certificate provisioning feature for WARP clients.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "enabled",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceDefaultProfileLocalDomainFallback:getZeroTrustDeviceDefaultProfileLocalDomainFallback": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceDefaultProfileLocalDomainFallback = cloudflare.getZeroTrustDeviceDefaultProfileLocalDomainFallback({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_default_profile_local_domain_fallback = cloudflare.get_zero_trust_device_default_profile_local_domain_fallback(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceDefaultProfileLocalDomainFallback = Cloudflare.Index.GetZeroTrustDeviceDefaultProfileLocalDomainFallback.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceDefaultProfileLocalDomainFallback(ctx, \u0026cloudflare.LookupZeroTrustDeviceDefaultProfileLocalDomainFallbackArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceDefaultProfileLocalDomainFallbackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceDefaultProfileLocalDomainFallback = CloudflareFunctions.getZeroTrustDeviceDefaultProfileLocalDomainFallback(GetZeroTrustDeviceDefaultProfileLocalDomainFallbackArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceDefaultProfileLocalDomainFallback:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceDefaultProfileLocalDomainFallback\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceDefaultProfileLocalDomainFallback.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceDefaultProfileLocalDomainFallback.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "description": {
                        "description": "A description of the fallback domain, displayed in the client UI.\n",
                        "type": "string"
                    },
                    "dnsServers": {
                        "description": "A list of IP addresses to handle domain resolution.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "suffix": {
                        "description": "The domain suffix to match when resolving locally.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "dnsServers",
                    "id",
                    "suffix"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceIpProfile:getZeroTrustDeviceIpProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceIpProfile = cloudflare.getZeroTrustDeviceIpProfile({\n    accountId: \"account_id\",\n    profileId: \"profile_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_ip_profile = cloudflare.get_zero_trust_device_ip_profile(account_id=\"account_id\",\n    profile_id=\"profile_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceIpProfile = Cloudflare.Index.GetZeroTrustDeviceIpProfile.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ProfileId = \"profile_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceIpProfile(ctx, \u0026cloudflare.LookupZeroTrustDeviceIpProfileArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tProfileId: pulumi.StringRef(\"profile_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceIpProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceIpProfile = CloudflareFunctions.getZeroTrustDeviceIpProfile(GetZeroTrustDeviceIpProfileArgs.builder()\n            .accountId(\"account_id\")\n            .profileId(\"profile_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceIpProfile:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceIpProfile\n      arguments:\n        accountId: account_id\n        profileId: profile_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceIpProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceIpProfileFilter:getZeroTrustDeviceIpProfileFilter"
                    },
                    "profileId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceIpProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "The RFC3339Nano timestamp when the Device IP profile was created.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "An optional description of the Device IP profile.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Whether the Device IP profile is enabled.\n",
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceIpProfileFilter:getZeroTrustDeviceIpProfileFilter"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "match": {
                        "description": "The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\".\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A user-friendly name for the Device IP profile.\n",
                        "type": "string"
                    },
                    "precedence": {
                        "description": "The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field.\n",
                        "type": "integer"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "subnetId": {
                        "description": "The ID of the Subnet.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "The RFC3339Nano timestamp when the Device IP profile was last updated.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "description",
                    "enabled",
                    "id",
                    "match",
                    "name",
                    "precedence",
                    "subnetId",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceIpProfiles:getZeroTrustDeviceIpProfiles": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceIpProfiles = cloudflare.getZeroTrustDeviceIpProfiles({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_ip_profiles = cloudflare.get_zero_trust_device_ip_profiles(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceIpProfiles = Cloudflare.Index.GetZeroTrustDeviceIpProfiles.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceIpProfiles(ctx, \u0026cloudflare.LookupZeroTrustDeviceIpProfilesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceIpProfilesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceIpProfiles = CloudflareFunctions.getZeroTrustDeviceIpProfiles(GetZeroTrustDeviceIpProfilesArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceIpProfiles:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceIpProfiles\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceIpProfiles.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "perPage": {
                        "type": "integer",
                        "description": "The number of IP profiles to return per page.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceIpProfiles.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "perPage": {
                        "description": "The number of IP profiles to return per page.\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceIpProfilesResult:getZeroTrustDeviceIpProfilesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "perPage",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceManagedNetworks:getZeroTrustDeviceManagedNetworks": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceManagedNetworks = cloudflare.getZeroTrustDeviceManagedNetworks({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    networkId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_managed_networks = cloudflare.get_zero_trust_device_managed_networks(account_id=\"699d98642c564d2e855e9661899b7252\",\n    network_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceManagedNetworks = Cloudflare.Index.GetZeroTrustDeviceManagedNetworks.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        NetworkId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceManagedNetworks(ctx, \u0026cloudflare.LookupZeroTrustDeviceManagedNetworksArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tNetworkId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceManagedNetworksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceManagedNetworks = CloudflareFunctions.getZeroTrustDeviceManagedNetworks(GetZeroTrustDeviceManagedNetworksArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .networkId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceManagedNetworks:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceManagedNetworks\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        networkId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceManagedNetworks.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "networkId": {
                        "type": "string",
                        "description": "API UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "networkId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceManagedNetworks.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDeviceManagedNetworksConfig:getZeroTrustDeviceManagedNetworksConfig",
                        "description": "The configuration object containing information for the WARP client to detect the managed network.\n"
                    },
                    "id": {
                        "description": "API UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the device managed network. This name must be unique.\n",
                        "type": "string"
                    },
                    "networkId": {
                        "description": "API UUID.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "The type of device managed network.\nAvailable values: \"tls\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "config",
                    "id",
                    "name",
                    "networkId",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceManagedNetworksList:getZeroTrustDeviceManagedNetworksList": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceManagedNetworksList = cloudflare.getZeroTrustDeviceManagedNetworksList({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_managed_networks_list = cloudflare.get_zero_trust_device_managed_networks_list(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceManagedNetworksList = Cloudflare.Index.GetZeroTrustDeviceManagedNetworksList.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceManagedNetworksList(ctx, \u0026cloudflare.LookupZeroTrustDeviceManagedNetworksListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceManagedNetworksListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceManagedNetworksList = CloudflareFunctions.getZeroTrustDeviceManagedNetworksList(GetZeroTrustDeviceManagedNetworksListArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceManagedNetworksList:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceManagedNetworksList\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceManagedNetworksList.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceManagedNetworksList.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDeviceManagedNetworksListResult:getZeroTrustDeviceManagedNetworksListResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureIntegration:getZeroTrustDevicePostureIntegration": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureIntegration = cloudflare.getZeroTrustDevicePostureIntegration({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    integrationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_integration = cloudflare.get_zero_trust_device_posture_integration(account_id=\"699d98642c564d2e855e9661899b7252\",\n    integration_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureIntegration = Cloudflare.Index.GetZeroTrustDevicePostureIntegration.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        IntegrationId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDevicePostureIntegration(ctx, \u0026cloudflare.LookupZeroTrustDevicePostureIntegrationArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tIntegrationId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDevicePostureIntegrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDevicePostureIntegration = CloudflareFunctions.getZeroTrustDevicePostureIntegration(GetZeroTrustDevicePostureIntegrationArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .integrationId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDevicePostureIntegration:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDevicePostureIntegration\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        integrationId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDevicePostureIntegration.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "integrationId": {
                        "type": "string",
                        "description": "API UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "integrationId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDevicePostureIntegration.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureIntegrationConfig:getZeroTrustDevicePostureIntegrationConfig",
                        "description": "The configuration object containing third-party integration information.\n"
                    },
                    "id": {
                        "description": "API UUID.\n",
                        "type": "string"
                    },
                    "integrationId": {
                        "description": "API UUID.\n",
                        "type": "string"
                    },
                    "interval": {
                        "description": "The interval between each posture check with the third-party API. Use \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e for minutes (e.g. \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e) and \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e for hours (e.g. \u003cspan pulumi-lang-nodejs=\"`12h`\" pulumi-lang-dotnet=\"`12h`\" pulumi-lang-go=\"`12h`\" pulumi-lang-python=\"`12h`\" pulumi-lang-yaml=\"`12h`\" pulumi-lang-java=\"`12h`\"\u003e`12h`\u003c/span\u003e).\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the device posture integration.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "The type of device posture integration.\nAvailable values: \"workspace*one\", \"crowdstrike*s2s\", \"uptycs\", \"intune\", \"kolide\", \"tanium*s2s\", \"sentinelone*s2s\", \u003cspan pulumi-lang-nodejs=\"\"customS2s\"\" pulumi-lang-dotnet=\"\"CustomS2s\"\" pulumi-lang-go=\"\"customS2s\"\" pulumi-lang-python=\"\"custom_s2s\"\" pulumi-lang-yaml=\"\"customS2s\"\" pulumi-lang-java=\"\"customS2s\"\"\u003e\"customS2s\"\u003c/span\u003e.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "config",
                    "id",
                    "integrationId",
                    "interval",
                    "name",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureIntegrations:getZeroTrustDevicePostureIntegrations": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureIntegrations = cloudflare.getZeroTrustDevicePostureIntegrations({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_integrations = cloudflare.get_zero_trust_device_posture_integrations(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureIntegrations = Cloudflare.Index.GetZeroTrustDevicePostureIntegrations.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDevicePostureIntegrations(ctx, \u0026cloudflare.LookupZeroTrustDevicePostureIntegrationsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDevicePostureIntegrationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDevicePostureIntegrations = CloudflareFunctions.getZeroTrustDevicePostureIntegrations(GetZeroTrustDevicePostureIntegrationsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDevicePostureIntegrations:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDevicePostureIntegrations\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDevicePostureIntegrations.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDevicePostureIntegrations.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureIntegrationsResult:getZeroTrustDevicePostureIntegrationsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRule:getZeroTrustDevicePostureRule": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureRule = cloudflare.getZeroTrustDevicePostureRule({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    ruleId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_rule = cloudflare.get_zero_trust_device_posture_rule(account_id=\"699d98642c564d2e855e9661899b7252\",\n    rule_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureRule = Cloudflare.Index.GetZeroTrustDevicePostureRule.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        RuleId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDevicePostureRule(ctx, \u0026cloudflare.LookupZeroTrustDevicePostureRuleArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tRuleId:    \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDevicePostureRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDevicePostureRule = CloudflareFunctions.getZeroTrustDevicePostureRule(GetZeroTrustDevicePostureRuleArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .ruleId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDevicePostureRule:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDevicePostureRule\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        ruleId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDevicePostureRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "API UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "ruleId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDevicePostureRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "description": {
                        "description": "The description of the device posture rule.\n",
                        "type": "string"
                    },
                    "expiration": {
                        "description": "Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "API UUID.\n",
                        "type": "string"
                    },
                    "input": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRuleInput:getZeroTrustDevicePostureRuleInput",
                        "description": "The value to be checked against.\n"
                    },
                    "matches": {
                        "description": "The conditions that the client must match to run the rule.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRuleMatch:getZeroTrustDevicePostureRuleMatch"
                        },
                        "type": "array"
                    },
                    "name": {
                        "description": "The name of the device posture rule.\n",
                        "type": "string"
                    },
                    "ruleId": {
                        "description": "API UUID.\n",
                        "type": "string"
                    },
                    "schedule": {
                        "description": "Polling frequency for the WARP client posture check. Default: \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e (poll every five minutes). Minimum: \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "The type of device posture rule.\nAvailable values: \"file\", \"application\", \"tanium\", \"gateway\", \"warp\", \"disk*encryption\", \"serial*number\", \"sentinelone\", \"carbonblack\", \"firewall\", \"os*version\", \"domain*joined\", \"client*certificate\", \"client*certificate*v2\", \"antivirus\", \"unique*client*id\", \"kolide\", \"tanium*s2s\", \"crowdstrike*s2s\", \"intune\", \"workspace*one\", \"sentinelone*s2s\", \"custom*s2s\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "description",
                    "expiration",
                    "id",
                    "input",
                    "matches",
                    "name",
                    "ruleId",
                    "schedule",
                    "type"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDevicePostureRules:getZeroTrustDevicePostureRules": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDevicePostureRules = cloudflare.getZeroTrustDevicePostureRules({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_posture_rules = cloudflare.get_zero_trust_device_posture_rules(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDevicePostureRules = Cloudflare.Index.GetZeroTrustDevicePostureRules.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDevicePostureRules(ctx, \u0026cloudflare.LookupZeroTrustDevicePostureRulesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDevicePostureRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDevicePostureRules = CloudflareFunctions.getZeroTrustDevicePostureRules(GetZeroTrustDevicePostureRulesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDevicePostureRules:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDevicePostureRules\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDevicePostureRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDevicePostureRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDevicePostureRulesResult:getZeroTrustDevicePostureRulesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceSettings:getZeroTrustDeviceSettings": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceSettings = cloudflare.getZeroTrustDeviceSettings({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_settings = cloudflare.get_zero_trust_device_settings(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceSettings = Cloudflare.Index.GetZeroTrustDeviceSettings.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceSettings(ctx, \u0026cloudflare.LookupZeroTrustDeviceSettingsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceSettings = CloudflareFunctions.getZeroTrustDeviceSettings(GetZeroTrustDeviceSettingsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceSettings:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceSettings\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceSettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceSettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "disableForTime": {
                        "description": "Sets the time limit, in seconds, that a user can use an override code to bypass WARP.\n",
                        "type": "number"
                    },
                    "externalEmergencySignalEnabled": {
                        "description": "Controls whether the external emergency disconnect feature is enabled.\n",
                        "type": "boolean"
                    },
                    "externalEmergencySignalFingerprint": {
                        "description": "The SHA256 fingerprint (64 hexadecimal characters) of the HTTPS server certificate for the external*emergency*signal_url. If provided, the WARP client will use this value to verify the server's identity. The device will ignore any response if the server's certificate fingerprint does not exactly match this value.\n",
                        "type": "string"
                    },
                    "externalEmergencySignalInterval": {
                        "description": "The interval at which the WARP client fetches the emergency disconnect signal, formatted as a duration string (e.g., \"5m\", \"2m30s\", \"1h\"). Minimum 30 seconds.\n",
                        "type": "string"
                    },
                    "externalEmergencySignalUrl": {
                        "description": "The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host.\n",
                        "type": "string"
                    },
                    "gatewayProxyEnabled": {
                        "description": "Enable gateway proxy filtering on TCP.\n",
                        "type": "boolean"
                    },
                    "gatewayUdpProxyEnabled": {
                        "description": "Enable gateway proxy filtering on UDP.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "rootCertificateInstallationEnabled": {
                        "description": "Enable installation of cloudflare managed root certificate.\n",
                        "type": "boolean"
                    },
                    "useZtVirtualIp": {
                        "description": "Enable using CGNAT virtual IPv4.\n",
                        "type": "boolean"
                    }
                },
                "required": [
                    "disableForTime",
                    "externalEmergencySignalEnabled",
                    "externalEmergencySignalFingerprint",
                    "externalEmergencySignalInterval",
                    "externalEmergencySignalUrl",
                    "gatewayProxyEnabled",
                    "gatewayUdpProxyEnabled",
                    "rootCertificateInstallationEnabled",
                    "useZtVirtualIp",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDeviceSubnet:getZeroTrustDeviceSubnet": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDeviceSubnet = cloudflare.getZeroTrustDeviceSubnet({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    subnetId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_device_subnet = cloudflare.get_zero_trust_device_subnet(account_id=\"699d98642c564d2e855e9661899b7252\",\n    subnet_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDeviceSubnet = Cloudflare.Index.GetZeroTrustDeviceSubnet.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        SubnetId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDeviceSubnet(ctx, \u0026cloudflare.LookupZeroTrustDeviceSubnetArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tSubnetId:  \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDeviceSubnetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDeviceSubnet = CloudflareFunctions.getZeroTrustDeviceSubnet(GetZeroTrustDeviceSubnetArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .subnetId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDeviceSubnet:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDeviceSubnet\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        subnetId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDeviceSubnet.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "subnetId": {
                        "type": "string",
                        "description": "The UUID of the subnet.\n"
                    }
                },
                "type": "object",
                "required": [
                    "subnetId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDeviceSubnet.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "comment": {
                        "description": "An optional description of the subnet.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the resource was created.\n",
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The UUID of the subnet.\n",
                        "type": "string"
                    },
                    "isDefaultNetwork": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this is the default subnet for the account. There can only be one default subnet per account.\n",
                        "type": "boolean"
                    },
                    "name": {
                        "description": "A user-friendly name for the subnet.\n",
                        "type": "string"
                    },
                    "network": {
                        "description": "The private IPv4 or IPv6 range defining the subnet, in CIDR notation.\n",
                        "type": "string"
                    },
                    "subnetId": {
                        "description": "The UUID of the subnet.\n",
                        "type": "string"
                    },
                    "subnetType": {
                        "description": "The type of subnet.\nAvailable values: \u003cspan pulumi-lang-nodejs=\"\"cloudflareSource\"\" pulumi-lang-dotnet=\"\"CloudflareSource\"\" pulumi-lang-go=\"\"cloudflareSource\"\" pulumi-lang-python=\"\"cloudflare_source\"\" pulumi-lang-yaml=\"\"cloudflareSource\"\" pulumi-lang-java=\"\"cloudflareSource\"\"\u003e\"cloudflareSource\"\u003c/span\u003e, \"warp\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comment",
                    "createdAt",
                    "deletedAt",
                    "id",
                    "isDefaultNetwork",
                    "name",
                    "network",
                    "subnetId",
                    "subnetType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDexRule:getZeroTrustDexRule": {
            "description": "Accepted Permissions\n\n- `Cloudflare DEX Read`\n- `Cloudflare DEX Write`\n- `Zero Trust Read`\n- `Zero Trust Report`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDexRule = cloudflare.getZeroTrustDexRule({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    ruleId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dex_rule = cloudflare.get_zero_trust_dex_rule(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    rule_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDexRule = Cloudflare.Index.GetZeroTrustDexRule.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        RuleId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDexRule(ctx, \u0026cloudflare.LookupZeroTrustDexRuleArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tRuleId:    \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDexRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDexRule = CloudflareFunctions.getZeroTrustDexRule(GetZeroTrustDexRuleArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .ruleId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDexRule:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDexRule\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        ruleId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDexRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "API Resource UUID tag.\n"
                    }
                },
                "type": "object",
                "required": [
                    "ruleId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDexRule.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "id": {
                        "description": "API Resource UUID tag.\n",
                        "type": "string"
                    },
                    "match": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "ruleId": {
                        "description": "API Resource UUID tag.\n",
                        "type": "string"
                    },
                    "targetedTests": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDexRuleTargetedTest:getZeroTrustDexRuleTargetedTest"
                        },
                        "type": "array"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "description",
                    "id",
                    "match",
                    "name",
                    "ruleId",
                    "targetedTests",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDexRules:getZeroTrustDexRules": {
            "description": "Accepted Permissions\n\n- `Cloudflare DEX Read`\n- `Cloudflare DEX Write`\n- `Zero Trust Read`\n- `Zero Trust Report`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDexRules = cloudflare.getZeroTrustDexRules({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    name: \"name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dex_rules = cloudflare.get_zero_trust_dex_rules(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    name=\"name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDexRules = Cloudflare.Index.GetZeroTrustDexRules.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        Name = \"name\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDexRules(ctx, \u0026cloudflare.LookupZeroTrustDexRulesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tName:      pulumi.StringRef(\"name\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDexRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDexRules = CloudflareFunctions.getZeroTrustDexRules(GetZeroTrustDexRulesArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .name(\"name\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDexRules:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDexRules\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        name: name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDexRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Filter results by rule name\n"
                    },
                    "sortBy": {
                        "type": "string",
                        "description": "Which property to sort results by\nAvailable values: \"name\", \"created*at\", \"updated*at\".\n"
                    },
                    "sortOrder": {
                        "type": "string",
                        "description": "Sort direction for\u003cspan pulumi-lang-nodejs=\" sortBy \" pulumi-lang-dotnet=\" SortBy \" pulumi-lang-go=\" sortBy \" pulumi-lang-python=\" sort_by \" pulumi-lang-yaml=\" sortBy \" pulumi-lang-java=\" sortBy \"\u003e sortBy \u003c/span\u003eproperty\nAvailable values: \"ASC\", \"DESC\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDexRules.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Filter results by rule name\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDexRulesResult:getZeroTrustDexRulesResult"
                        },
                        "type": "array"
                    },
                    "sortBy": {
                        "description": "Which property to sort results by\nAvailable values: \"name\", \"created*at\", \"updated*at\".\n",
                        "type": "string"
                    },
                    "sortOrder": {
                        "description": "Sort direction for\u003cspan pulumi-lang-nodejs=\" sortBy \" pulumi-lang-dotnet=\" SortBy \" pulumi-lang-go=\" sortBy \" pulumi-lang-python=\" sort_by \" pulumi-lang-yaml=\" sortBy \" pulumi-lang-java=\" sortBy \"\u003e sortBy \u003c/span\u003eproperty\nAvailable values: \"ASC\", \"DESC\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "sortBy",
                    "sortOrder",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDexTest:getZeroTrustDexTest": {
            "description": "Accepted Permissions\n\n- `Cloudflare DEX Read`\n- `Cloudflare DEX Write`\n- `Zero Trust Read`\n- `Zero Trust Report`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDexTest = cloudflare.getZeroTrustDexTest({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    dexTestId: \"372e67954025e0ba6aaa6d586b9e0b59\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dex_test = cloudflare.get_zero_trust_dex_test(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    dex_test_id=\"372e67954025e0ba6aaa6d586b9e0b59\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDexTest = Cloudflare.Index.GetZeroTrustDexTest.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        DexTestId = \"372e67954025e0ba6aaa6d586b9e0b59\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDexTest(ctx, \u0026cloudflare.LookupZeroTrustDexTestArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tDexTestId: pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b59\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDexTestArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDexTest = CloudflareFunctions.getZeroTrustDexTest(GetZeroTrustDexTestArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .dexTestId(\"372e67954025e0ba6aaa6d586b9e0b59\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDexTest:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDexTest\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        dexTestId: 372e67954025e0ba6aaa6d586b9e0b59\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDexTest.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "dexTestId": {
                        "type": "string",
                        "description": "The unique identifier for the test.\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDexTestFilter:getZeroTrustDexTestFilter"
                    },
                    "targetPolicies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDexTestTargetPolicy:getZeroTrustDexTestTargetPolicy"
                        },
                        "description": "DEX rules targeted by this test\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDexTest.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "data": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDexTestData:getZeroTrustDexTestData",
                        "description": "The configuration object which contains the details for the WARP client to conduct the test.\n"
                    },
                    "description": {
                        "description": "Additional details about the test.\n",
                        "type": "string"
                    },
                    "dexTestId": {
                        "description": "The unique identifier for the test.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Determines whether or not the test is active.\n",
                        "type": "boolean"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDexTestFilter:getZeroTrustDexTestFilter"
                    },
                    "id": {
                        "description": "The unique identifier for the test.\n",
                        "type": "string"
                    },
                    "interval": {
                        "description": "How often the test will run.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the DEX test. Must be unique.\n",
                        "type": "string"
                    },
                    "targetPolicies": {
                        "description": "DEX rules targeted by this test\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDexTestTargetPolicy:getZeroTrustDexTestTargetPolicy"
                        },
                        "type": "array"
                    },
                    "targeted": {
                        "type": "boolean"
                    },
                    "testId": {
                        "description": "The unique identifier for the test.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "data",
                    "description",
                    "enabled",
                    "id",
                    "interval",
                    "name",
                    "targetPolicies",
                    "targeted",
                    "testId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDexTests:getZeroTrustDexTests": {
            "description": "Accepted Permissions\n\n- `Cloudflare DEX Read`\n- `Cloudflare DEX Write`\n- `Zero Trust Read`\n- `Zero Trust Report`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDexTests = cloudflare.getZeroTrustDexTests({\n    accountId: \"01a7362d577a6c3019a474fd6f485823\",\n    kind: \"http\",\n    testName: \"testName\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dex_tests = cloudflare.get_zero_trust_dex_tests(account_id=\"01a7362d577a6c3019a474fd6f485823\",\n    kind=\"http\",\n    test_name=\"testName\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDexTests = Cloudflare.Index.GetZeroTrustDexTests.Invoke(new()\n    {\n        AccountId = \"01a7362d577a6c3019a474fd6f485823\",\n        Kind = \"http\",\n        TestName = \"testName\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDexTests(ctx, \u0026cloudflare.LookupZeroTrustDexTestsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"01a7362d577a6c3019a474fd6f485823\"),\n\t\t\tKind:      pulumi.StringRef(\"http\"),\n\t\t\tTestName:  pulumi.StringRef(\"testName\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDexTestsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDexTests = CloudflareFunctions.getZeroTrustDexTests(GetZeroTrustDexTestsArgs.builder()\n            .accountId(\"01a7362d577a6c3019a474fd6f485823\")\n            .kind(\"http\")\n            .testName(\"testName\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDexTests:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDexTests\n      arguments:\n        accountId: 01a7362d577a6c3019a474fd6f485823\n        kind: http\n        testName: testName\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDexTests.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "kind": {
                        "type": "string",
                        "description": "Filter by test type\nAvailable values: \"http\", \"traceroute\".\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "testName": {
                        "type": "string",
                        "description": "Filter by test name\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDexTests.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "kind": {
                        "description": "Filter by test type\nAvailable values: \"http\", \"traceroute\".\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDexTestsResult:getZeroTrustDexTestsResult"
                        },
                        "type": "array"
                    },
                    "testName": {
                        "description": "Filter by test name\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntries:getZeroTrustDlpCustomEntries": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpCustomEntries = cloudflare.getZeroTrustDlpCustomEntries({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_custom_entries = cloudflare.get_zero_trust_dlp_custom_entries(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpCustomEntries = Cloudflare.Index.GetZeroTrustDlpCustomEntries.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpCustomEntries(ctx, \u0026cloudflare.LookupZeroTrustDlpCustomEntriesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpCustomEntriesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpCustomEntries = CloudflareFunctions.getZeroTrustDlpCustomEntries(GetZeroTrustDlpCustomEntriesArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpCustomEntries:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpCustomEntries\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpCustomEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpCustomEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntriesResult:getZeroTrustDlpCustomEntriesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomEntry:getZeroTrustDlpCustomEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpCustomEntry = cloudflare.getZeroTrustDlpCustomEntry({\n    accountId: \"account_id\",\n    entryId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_custom_entry = cloudflare.get_zero_trust_dlp_custom_entry(account_id=\"account_id\",\n    entry_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpCustomEntry = Cloudflare.Index.GetZeroTrustDlpCustomEntry.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        EntryId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpCustomEntry(ctx, \u0026cloudflare.LookupZeroTrustDlpCustomEntryArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tEntryId:   \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpCustomEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpCustomEntry = CloudflareFunctions.getZeroTrustDlpCustomEntry(GetZeroTrustDlpCustomEntryArgs.builder()\n            .accountId(\"account_id\")\n            .entryId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpCustomEntry:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpCustomEntry\n      arguments:\n        accountId: account_id\n        entryId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpCustomEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "entryId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "entryId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpCustomEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n",
                        "type": "boolean"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntryConfidence:getZeroTrustDlpCustomEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "entryId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntryPattern:getZeroTrustDlpCustomEntryPattern"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "profiles": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntryProfile:getZeroTrustDlpCustomEntryProfile"
                        },
                        "type": "array"
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n",
                        "type": "string"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomEntryVariant:getZeroTrustDlpCustomEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "required": [
                    "caseSensitive",
                    "confidence",
                    "createdAt",
                    "description",
                    "enabled",
                    "entryId",
                    "id",
                    "name",
                    "pattern",
                    "profileId",
                    "profiles",
                    "secret",
                    "type",
                    "updatedAt",
                    "uploadStatus",
                    "variant",
                    "wordList"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpCustomProfile:getZeroTrustDlpCustomProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpCustomProfile = cloudflare.getZeroTrustDlpCustomProfile({\n    accountId: \"account_id\",\n    profileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_custom_profile = cloudflare.get_zero_trust_dlp_custom_profile(account_id=\"account_id\",\n    profile_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpCustomProfile = Cloudflare.Index.GetZeroTrustDlpCustomProfile.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ProfileId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpCustomProfile(ctx, \u0026cloudflare.LookupZeroTrustDlpCustomProfileArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tProfileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpCustomProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpCustomProfile = CloudflareFunctions.getZeroTrustDlpCustomProfile(GetZeroTrustDlpCustomProfileArgs.builder()\n            .accountId(\"account_id\")\n            .profileId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpCustomProfile:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpCustomProfile\n      arguments:\n        accountId: account_id\n        profileId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpCustomProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "profileId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "profileId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpCustomProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextEnabled": {
                        "type": "boolean"
                    },
                    "allowedMatchCount": {
                        "description": "Related DLP policies will trigger when the match count exceeds the number set.\n",
                        "type": "integer"
                    },
                    "confidenceThreshold": {
                        "description": "Available values: \"low\", \"medium\", \"high\", \u003cspan pulumi-lang-nodejs=\"\"veryHigh\"\" pulumi-lang-dotnet=\"\"VeryHigh\"\" pulumi-lang-go=\"\"veryHigh\"\" pulumi-lang-python=\"\"very_high\"\" pulumi-lang-yaml=\"\"veryHigh\"\" pulumi-lang-java=\"\"veryHigh\"\"\u003e\"veryHigh\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "contextAwareness": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileContextAwareness:getZeroTrustDlpCustomProfileContextAwareness",
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "Scan the context of predefined entries to only return matches surrounded by keywords.\n"
                    },
                    "createdAt": {
                        "description": "When the profile was created.\n",
                        "type": "string"
                    },
                    "dataClasses": {
                        "description": "Data classes associated with this profile.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "dataTags": {
                        "description": "Data tags associated with this profile.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "description": {
                        "description": "The description of the profile.\n",
                        "type": "string"
                    },
                    "entries": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileEntry:getZeroTrustDlpCustomProfileEntry"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the profile.\n",
                        "type": "string"
                    },
                    "ocrEnabled": {
                        "type": "boolean"
                    },
                    "openAccess": {
                        "description": "Whether this profile can be accessed by anyone.\n",
                        "type": "boolean"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "sensitivityLevels": {
                        "description": "Sensitivity levels associated with this profile.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileSensitivityLevel:getZeroTrustDlpCustomProfileSensitivityLevel"
                        },
                        "type": "array"
                    },
                    "sharedEntries": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpCustomProfileSharedEntry:getZeroTrustDlpCustomProfileSharedEntry"
                        },
                        "type": "array"
                    },
                    "type": {
                        "description": "Available values: \"custom\", \"predefined\", \"integration\".\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "When the profile was lasted updated.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "aiContextEnabled",
                    "allowedMatchCount",
                    "confidenceThreshold",
                    "contextAwareness",
                    "createdAt",
                    "dataClasses",
                    "dataTags",
                    "description",
                    "entries",
                    "id",
                    "name",
                    "ocrEnabled",
                    "openAccess",
                    "profileId",
                    "sensitivityLevels",
                    "sharedEntries",
                    "type",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpDataset:getZeroTrustDlpDataset": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpDataset = cloudflare.getZeroTrustDlpDataset({\n    accountId: \"account_id\",\n    datasetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_dataset = cloudflare.get_zero_trust_dlp_dataset(account_id=\"account_id\",\n    dataset_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpDataset = Cloudflare.Index.GetZeroTrustDlpDataset.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        DatasetId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpDataset(ctx, \u0026cloudflare.LookupZeroTrustDlpDatasetArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tDatasetId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpDatasetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpDataset = CloudflareFunctions.getZeroTrustDlpDataset(GetZeroTrustDlpDatasetArgs.builder()\n            .accountId(\"account_id\")\n            .datasetId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpDataset:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpDataset\n      arguments:\n        accountId: account_id\n        datasetId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpDataset.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "datasetId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "datasetId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpDataset.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "type": "boolean"
                    },
                    "columns": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpDatasetColumn:getZeroTrustDlpDatasetColumn"
                        },
                        "type": "array"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "datasetId": {
                        "type": "string"
                    },
                    "description": {
                        "description": "The description of the dataset.\n",
                        "type": "string"
                    },
                    "encodingVersion": {
                        "type": "integer"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "numCells": {
                        "type": "integer"
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "status": {
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "description": "Stores when the dataset was last updated.\n",
                        "type": "string"
                    },
                    "uploads": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpDatasetUpload:getZeroTrustDlpDatasetUpload"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "caseSensitive",
                    "columns",
                    "createdAt",
                    "datasetId",
                    "description",
                    "encodingVersion",
                    "id",
                    "name",
                    "numCells",
                    "secret",
                    "status",
                    "updatedAt",
                    "uploads"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpDatasets:getZeroTrustDlpDatasets": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpDatasets = cloudflare.getZeroTrustDlpDatasets({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_datasets = cloudflare.get_zero_trust_dlp_datasets(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpDatasets = Cloudflare.Index.GetZeroTrustDlpDatasets.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpDatasets(ctx, \u0026cloudflare.LookupZeroTrustDlpDatasetsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpDatasetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpDatasets = CloudflareFunctions.getZeroTrustDlpDatasets(GetZeroTrustDlpDatasetsArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpDatasets:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpDatasets\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpDatasets.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpDatasets.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpDatasetsResult:getZeroTrustDlpDatasetsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpEntries:getZeroTrustDlpEntries": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpEntries = cloudflare.getZeroTrustDlpEntries({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_entries = cloudflare.get_zero_trust_dlp_entries(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpEntries = Cloudflare.Index.GetZeroTrustDlpEntries.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpEntries(ctx, \u0026cloudflare.LookupZeroTrustDlpEntriesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpEntriesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpEntries = CloudflareFunctions.getZeroTrustDlpEntries(GetZeroTrustDlpEntriesArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpEntries:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpEntries\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntriesResult:getZeroTrustDlpEntriesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpEntry:getZeroTrustDlpEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpEntry = cloudflare.getZeroTrustDlpEntry({\n    accountId: \"account_id\",\n    entryId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_entry = cloudflare.get_zero_trust_dlp_entry(account_id=\"account_id\",\n    entry_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpEntry = Cloudflare.Index.GetZeroTrustDlpEntry.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        EntryId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpEntry(ctx, \u0026cloudflare.LookupZeroTrustDlpEntryArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tEntryId:   \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpEntry = CloudflareFunctions.getZeroTrustDlpEntry(GetZeroTrustDlpEntryArgs.builder()\n            .accountId(\"account_id\")\n            .entryId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpEntry:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpEntry\n      arguments:\n        accountId: account_id\n        entryId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "entryId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "entryId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n",
                        "type": "boolean"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntryConfidence:getZeroTrustDlpEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "entryId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntryPattern:getZeroTrustDlpEntryPattern"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "profiles": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntryProfile:getZeroTrustDlpEntryProfile"
                        },
                        "type": "array"
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n",
                        "type": "string"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpEntryVariant:getZeroTrustDlpEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "required": [
                    "caseSensitive",
                    "confidence",
                    "createdAt",
                    "description",
                    "enabled",
                    "entryId",
                    "id",
                    "name",
                    "pattern",
                    "profileId",
                    "profiles",
                    "secret",
                    "type",
                    "updatedAt",
                    "uploadStatus",
                    "variant",
                    "wordList"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntries:getZeroTrustDlpIntegrationEntries": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpIntegrationEntries = cloudflare.getZeroTrustDlpIntegrationEntries({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_integration_entries = cloudflare.get_zero_trust_dlp_integration_entries(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpIntegrationEntries = Cloudflare.Index.GetZeroTrustDlpIntegrationEntries.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpIntegrationEntries(ctx, \u0026cloudflare.LookupZeroTrustDlpIntegrationEntriesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpIntegrationEntriesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpIntegrationEntries = CloudflareFunctions.getZeroTrustDlpIntegrationEntries(GetZeroTrustDlpIntegrationEntriesArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpIntegrationEntries:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpIntegrationEntries\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpIntegrationEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpIntegrationEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntriesResult:getZeroTrustDlpIntegrationEntriesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpIntegrationEntry:getZeroTrustDlpIntegrationEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpIntegrationEntry = cloudflare.getZeroTrustDlpIntegrationEntry({\n    accountId: \"account_id\",\n    entryId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_integration_entry = cloudflare.get_zero_trust_dlp_integration_entry(account_id=\"account_id\",\n    entry_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpIntegrationEntry = Cloudflare.Index.GetZeroTrustDlpIntegrationEntry.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        EntryId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpIntegrationEntry(ctx, \u0026cloudflare.LookupZeroTrustDlpIntegrationEntryArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tEntryId:   \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpIntegrationEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpIntegrationEntry = CloudflareFunctions.getZeroTrustDlpIntegrationEntry(GetZeroTrustDlpIntegrationEntryArgs.builder()\n            .accountId(\"account_id\")\n            .entryId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpIntegrationEntry:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpIntegrationEntry\n      arguments:\n        accountId: account_id\n        entryId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpIntegrationEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "entryId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "entryId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpIntegrationEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n",
                        "type": "boolean"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntryConfidence:getZeroTrustDlpIntegrationEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "entryId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntryPattern:getZeroTrustDlpIntegrationEntryPattern"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "profiles": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntryProfile:getZeroTrustDlpIntegrationEntryProfile"
                        },
                        "type": "array"
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n",
                        "type": "string"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpIntegrationEntryVariant:getZeroTrustDlpIntegrationEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "required": [
                    "caseSensitive",
                    "confidence",
                    "createdAt",
                    "description",
                    "enabled",
                    "entryId",
                    "id",
                    "name",
                    "pattern",
                    "profileId",
                    "profiles",
                    "secret",
                    "type",
                    "updatedAt",
                    "uploadStatus",
                    "variant",
                    "wordList"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntries:getZeroTrustDlpPredefinedEntries": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpPredefinedEntries = cloudflare.getZeroTrustDlpPredefinedEntries({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_predefined_entries = cloudflare.get_zero_trust_dlp_predefined_entries(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpPredefinedEntries = Cloudflare.Index.GetZeroTrustDlpPredefinedEntries.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpPredefinedEntries(ctx, \u0026cloudflare.LookupZeroTrustDlpPredefinedEntriesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpPredefinedEntriesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpPredefinedEntries = CloudflareFunctions.getZeroTrustDlpPredefinedEntries(GetZeroTrustDlpPredefinedEntriesArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpPredefinedEntries:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpPredefinedEntries\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpPredefinedEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpPredefinedEntries.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntriesResult:getZeroTrustDlpPredefinedEntriesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedEntry:getZeroTrustDlpPredefinedEntry": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpPredefinedEntry = cloudflare.getZeroTrustDlpPredefinedEntry({\n    accountId: \"account_id\",\n    entryId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_predefined_entry = cloudflare.get_zero_trust_dlp_predefined_entry(account_id=\"account_id\",\n    entry_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpPredefinedEntry = Cloudflare.Index.GetZeroTrustDlpPredefinedEntry.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        EntryId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpPredefinedEntry(ctx, \u0026cloudflare.LookupZeroTrustDlpPredefinedEntryArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tEntryId:   \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpPredefinedEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpPredefinedEntry = CloudflareFunctions.getZeroTrustDlpPredefinedEntry(GetZeroTrustDlpPredefinedEntryArgs.builder()\n            .accountId(\"account_id\")\n            .entryId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpPredefinedEntry:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpPredefinedEntry\n      arguments:\n        accountId: account_id\n        entryId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpPredefinedEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "entryId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "entryId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpPredefinedEntry.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "caseSensitive": {
                        "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true\n",
                        "type": "boolean"
                    },
                    "confidence": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntryConfidence:getZeroTrustDlpPredefinedEntryConfidence"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "entryId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "pattern": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntryPattern:getZeroTrustDlpPredefinedEntryPattern"
                    },
                    "profileId": {
                        "type": "string"
                    },
                    "profiles": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntryProfile:getZeroTrustDlpPredefinedEntryProfile"
                        },
                        "type": "array"
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "type": {
                        "description": "Available values: \"custom\", \"predefined\", \"integration\", \"exact*data\", \"document*fingerprint\", \u003cspan pulumi-lang-nodejs=\"\"wordList\"\" pulumi-lang-dotnet=\"\"WordList\"\" pulumi-lang-go=\"\"wordList\"\" pulumi-lang-python=\"\"word_list\"\" pulumi-lang-yaml=\"\"wordList\"\" pulumi-lang-java=\"\"wordList\"\"\u003e\"wordList\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadStatus": {
                        "description": "Available values: \"empty\", \"uploading\", \"pending\", \"processing\", \"failed\", \"complete\".\n",
                        "type": "string"
                    },
                    "variant": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedEntryVariant:getZeroTrustDlpPredefinedEntryVariant"
                    },
                    "wordList": {
                        "type": "string"
                    }
                },
                "required": [
                    "caseSensitive",
                    "confidence",
                    "createdAt",
                    "description",
                    "enabled",
                    "entryId",
                    "id",
                    "name",
                    "pattern",
                    "profileId",
                    "profiles",
                    "secret",
                    "type",
                    "updatedAt",
                    "uploadStatus",
                    "variant",
                    "wordList"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpPredefinedProfile:getZeroTrustDlpPredefinedProfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpPredefinedProfile = cloudflare.getZeroTrustDlpPredefinedProfile({\n    accountId: \"account_id\",\n    profileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_predefined_profile = cloudflare.get_zero_trust_dlp_predefined_profile(account_id=\"account_id\",\n    profile_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpPredefinedProfile = Cloudflare.Index.GetZeroTrustDlpPredefinedProfile.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ProfileId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpPredefinedProfile(ctx, \u0026cloudflare.LookupZeroTrustDlpPredefinedProfileArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tProfileId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpPredefinedProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpPredefinedProfile = CloudflareFunctions.getZeroTrustDlpPredefinedProfile(GetZeroTrustDlpPredefinedProfileArgs.builder()\n            .accountId(\"account_id\")\n            .profileId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpPredefinedProfile:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpPredefinedProfile\n      arguments:\n        accountId: account_id\n        profileId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpPredefinedProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "profileId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "profileId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpPredefinedProfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextEnabled": {
                        "type": "boolean"
                    },
                    "allowedMatchCount": {
                        "type": "integer"
                    },
                    "confidenceThreshold": {
                        "type": "string"
                    },
                    "enabledEntries": {
                        "description": "Entries to enable for this predefined profile. Any entries not provided will be disabled.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "entries": {
                        "deprecationMessage": "This attribute is deprecated.",
                        "description": "This field has been deprecated for \u003cspan pulumi-lang-nodejs=\"`enabledEntries`\" pulumi-lang-dotnet=\"`EnabledEntries`\" pulumi-lang-go=\"`enabledEntries`\" pulumi-lang-python=\"`enabled_entries`\" pulumi-lang-yaml=\"`enabledEntries`\" pulumi-lang-java=\"`enabledEntries`\"\u003e`enabledEntries`\u003c/span\u003e.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDlpPredefinedProfileEntry:getZeroTrustDlpPredefinedProfileEntry"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "The name of the predefined profile.\n",
                        "type": "string"
                    },
                    "ocrEnabled": {
                        "type": "boolean"
                    },
                    "openAccess": {
                        "description": "Whether this profile can be accessed by anyone.\n",
                        "type": "boolean"
                    },
                    "profileId": {
                        "type": "string"
                    }
                },
                "required": [
                    "aiContextEnabled",
                    "allowedMatchCount",
                    "confidenceThreshold",
                    "enabledEntries",
                    "entries",
                    "id",
                    "name",
                    "ocrEnabled",
                    "openAccess",
                    "profileId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDlpSettings:getZeroTrustDlpSettings": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDlpSettings = cloudflare.getZeroTrustDlpSettings({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dlp_settings = cloudflare.get_zero_trust_dlp_settings(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDlpSettings = Cloudflare.Index.GetZeroTrustDlpSettings.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDlpSettings(ctx, \u0026cloudflare.LookupZeroTrustDlpSettingsArgs{\n\t\t\tAccountId: \"account_id\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDlpSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDlpSettings = CloudflareFunctions.getZeroTrustDlpSettings(GetZeroTrustDlpSettingsArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDlpSettings:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDlpSettings\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDlpSettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "accountId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDlpSettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "aiContextAnalysis": {
                        "description": "Whether AI context analysis is enabled at the account level.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "ocr": {
                        "description": "Whether OCR is enabled at the account level.\n",
                        "type": "boolean"
                    },
                    "payloadLogging": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDlpSettingsPayloadLogging:getZeroTrustDlpSettingsPayloadLogging"
                    }
                },
                "required": [
                    "accountId",
                    "aiContextAnalysis",
                    "id",
                    "ocr",
                    "payloadLogging"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDnsLocation:getZeroTrustDnsLocation": {
            "description": "Accepted Permissions\n\n- `Cloudflare Zero Trust Secure DNS Locations Write`\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDnsLocation = cloudflare.getZeroTrustDnsLocation({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    locationId: \"ed35569b41ce4d1facfe683550f54086\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dns_location = cloudflare.get_zero_trust_dns_location(account_id=\"699d98642c564d2e855e9661899b7252\",\n    location_id=\"ed35569b41ce4d1facfe683550f54086\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDnsLocation = Cloudflare.Index.GetZeroTrustDnsLocation.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        LocationId = \"ed35569b41ce4d1facfe683550f54086\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDnsLocation(ctx, \u0026cloudflare.LookupZeroTrustDnsLocationArgs{\n\t\t\tAccountId:  pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tLocationId: \"ed35569b41ce4d1facfe683550f54086\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDnsLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDnsLocation = CloudflareFunctions.getZeroTrustDnsLocation(GetZeroTrustDnsLocationArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .locationId(\"ed35569b41ce4d1facfe683550f54086\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDnsLocation:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDnsLocation\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        locationId: ed35569b41ce4d1facfe683550f54086\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDnsLocation.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "locationId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "locationId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDnsLocation.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "clientDefault": {
                        "description": "Indicate whether this location is the default location.\n",
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "dnsDestinationIpsId": {
                        "description": "Indicate the identifier of the pair of IPv4 addresses assigned to this location.\n",
                        "type": "string"
                    },
                    "dnsDestinationIpv6BlockId": {
                        "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.\n",
                        "type": "string"
                    },
                    "dohSubdomain": {
                        "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.\n",
                        "type": "string"
                    },
                    "ecsSupport": {
                        "description": "Indicate whether the location must resolve EDNS queries.\n",
                        "type": "boolean"
                    },
                    "endpoints": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationEndpoints:getZeroTrustDnsLocationEndpoints",
                        "description": "Configure the destination endpoints for this location.\n"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "ip": {
                        "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.\n",
                        "type": "string"
                    },
                    "ipv4Destination": {
                        "description": "Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n",
                        "type": "string"
                    },
                    "ipv4DestinationBackup": {
                        "description": "Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only.\n",
                        "type": "string"
                    },
                    "locationId": {
                        "type": "string"
                    },
                    "name": {
                        "description": "Specify the location name.\n",
                        "type": "string"
                    },
                    "networks": {
                        "description": "Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationNetwork:getZeroTrustDnsLocationNetwork"
                        },
                        "type": "array"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "clientDefault",
                    "createdAt",
                    "dnsDestinationIpsId",
                    "dnsDestinationIpv6BlockId",
                    "dohSubdomain",
                    "ecsSupport",
                    "endpoints",
                    "id",
                    "ip",
                    "ipv4Destination",
                    "ipv4DestinationBackup",
                    "locationId",
                    "name",
                    "networks",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustDnsLocations:getZeroTrustDnsLocations": {
            "description": "Accepted Permissions\n\n- `Cloudflare Zero Trust Secure DNS Locations Write`\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustDnsLocations = cloudflare.getZeroTrustDnsLocations({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_dns_locations = cloudflare.get_zero_trust_dns_locations(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustDnsLocations = Cloudflare.Index.GetZeroTrustDnsLocations.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustDnsLocations(ctx, \u0026cloudflare.LookupZeroTrustDnsLocationsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustDnsLocationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustDnsLocations = CloudflareFunctions.getZeroTrustDnsLocations(GetZeroTrustDnsLocationsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustDnsLocations:\n    fn::invoke:\n      function: cloudflare:getZeroTrustDnsLocations\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustDnsLocations.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustDnsLocations.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustDnsLocationsResult:getZeroTrustDnsLocationsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayAppTypesList:getZeroTrustGatewayAppTypesList": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayAppTypesList = cloudflare.getZeroTrustGatewayAppTypesList({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_app_types_list = cloudflare.get_zero_trust_gateway_app_types_list(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayAppTypesList = Cloudflare.Index.GetZeroTrustGatewayAppTypesList.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayAppTypesList(ctx, \u0026cloudflare.LookupZeroTrustGatewayAppTypesListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayAppTypesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayAppTypesList = CloudflareFunctions.getZeroTrustGatewayAppTypesList(GetZeroTrustGatewayAppTypesListArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayAppTypesList:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayAppTypesList\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayAppTypesList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Provide the identifier string.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayAppTypesList.\n",
                "properties": {
                    "accountId": {
                        "description": "Provide the identifier string.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustGatewayAppTypesListResult:getZeroTrustGatewayAppTypesListResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayCategoriesList:getZeroTrustGatewayCategoriesList": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayCategoriesList = cloudflare.getZeroTrustGatewayCategoriesList({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_categories_list = cloudflare.get_zero_trust_gateway_categories_list(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayCategoriesList = Cloudflare.Index.GetZeroTrustGatewayCategoriesList.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayCategoriesList(ctx, \u0026cloudflare.LookupZeroTrustGatewayCategoriesListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayCategoriesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayCategoriesList = CloudflareFunctions.getZeroTrustGatewayCategoriesList(GetZeroTrustGatewayCategoriesListArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayCategoriesList:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayCategoriesList\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayCategoriesList.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Provide the identifier string.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayCategoriesList.\n",
                "properties": {
                    "accountId": {
                        "description": "Provide the identifier string.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustGatewayCategoriesListResult:getZeroTrustGatewayCategoriesListResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayCertificate:getZeroTrustGatewayCertificate": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayCertificate = cloudflare.getZeroTrustGatewayCertificate({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    certificateId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_certificate = cloudflare.get_zero_trust_gateway_certificate(account_id=\"699d98642c564d2e855e9661899b7252\",\n    certificate_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayCertificate = Cloudflare.Index.GetZeroTrustGatewayCertificate.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        CertificateId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayCertificate(ctx, \u0026cloudflare.LookupZeroTrustGatewayCertificateArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tCertificateId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayCertificate = CloudflareFunctions.getZeroTrustGatewayCertificate(GetZeroTrustGatewayCertificateArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .certificateId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayCertificate:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayCertificate\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        certificateId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayCertificate.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "certificateId": {
                        "type": "string",
                        "description": "Identify the certificate with a UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "certificateId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayCertificate.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "bindingStatus": {
                        "description": "Indicate the read-only deployment status of the certificate on Cloudflare's edge. Gateway TLS interception can use certificates in the 'available' (previously called 'active') state.\nAvailable values: \"pending*deployment\", \"available\", \"pending*deletion\", \"inactive\".\n",
                        "type": "string"
                    },
                    "certificate": {
                        "description": "Provide the CA certificate (read-only).\n",
                        "type": "string"
                    },
                    "certificateId": {
                        "description": "Identify the certificate with a UUID.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "expiresOn": {
                        "type": "string"
                    },
                    "fingerprint": {
                        "description": "Provide the SHA256 fingerprint of the certificate (read-only).\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identify the certificate with a UUID.\n",
                        "type": "string"
                    },
                    "inUse": {
                        "description": "Indicate whether Gateway TLS interception uses this certificate (read-only). You cannot set this value directly. To configure interception, use the Gateway configuration setting named \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e (read-only).\n",
                        "type": "boolean"
                    },
                    "issuerOrg": {
                        "description": "Indicate the organization that issued the certificate (read-only).\n",
                        "type": "string"
                    },
                    "issuerRaw": {
                        "description": "Provide the entire issuer field of the certificate (read-only).\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Indicate the read-only certificate type, BYO-PKI (custom) or Gateway-managed.\nAvailable values: \"custom\", \u003cspan pulumi-lang-nodejs=\"\"gatewayManaged\"\" pulumi-lang-dotnet=\"\"GatewayManaged\"\" pulumi-lang-go=\"\"gatewayManaged\"\" pulumi-lang-python=\"\"gateway_managed\"\" pulumi-lang-yaml=\"\"gatewayManaged\"\" pulumi-lang-java=\"\"gatewayManaged\"\"\u003e\"gatewayManaged\"\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "uploadedOn": {
                        "type": "string"
                    }
                },
                "required": [
                    "bindingStatus",
                    "certificate",
                    "certificateId",
                    "createdAt",
                    "expiresOn",
                    "fingerprint",
                    "id",
                    "inUse",
                    "issuerOrg",
                    "issuerRaw",
                    "type",
                    "updatedAt",
                    "uploadedOn"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayCertificates:getZeroTrustGatewayCertificates": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayCertificates = cloudflare.getZeroTrustGatewayCertificates({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_certificates = cloudflare.get_zero_trust_gateway_certificates(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayCertificates = Cloudflare.Index.GetZeroTrustGatewayCertificates.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayCertificates(ctx, \u0026cloudflare.LookupZeroTrustGatewayCertificatesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayCertificatesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayCertificates = CloudflareFunctions.getZeroTrustGatewayCertificates(GetZeroTrustGatewayCertificatesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayCertificates:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayCertificates\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayCertificates.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayCertificates.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustGatewayCertificatesResult:getZeroTrustGatewayCertificatesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayLogging:getZeroTrustGatewayLogging": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayLogging = cloudflare.getZeroTrustGatewayLogging({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_logging = cloudflare.get_zero_trust_gateway_logging(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayLogging = Cloudflare.Index.GetZeroTrustGatewayLogging.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayLogging(ctx, \u0026cloudflare.LookupZeroTrustGatewayLoggingArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayLoggingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayLogging = CloudflareFunctions.getZeroTrustGatewayLogging(GetZeroTrustGatewayLoggingArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayLogging:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayLogging\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayLogging.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayLogging.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "redactPii": {
                        "description": "Indicate whether to redact personally identifiable information from activity logging (PII fields include source IP, user email, user ID, device ID, URL, referrer, and user agent).\n",
                        "type": "boolean"
                    },
                    "settingsByRuleType": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayLoggingSettingsByRuleType:getZeroTrustGatewayLoggingSettingsByRuleType",
                        "description": "Configure logging settings for each rule type.\n"
                    }
                },
                "required": [
                    "id",
                    "redactPii",
                    "settingsByRuleType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayPacfile:getZeroTrustGatewayPacfile": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPacfile = cloudflare.getZeroTrustGatewayPacfile({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    pacfileId: \"ed35569b41ce4d1facfe683550f54086\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_pacfile = cloudflare.get_zero_trust_gateway_pacfile(account_id=\"699d98642c564d2e855e9661899b7252\",\n    pacfile_id=\"ed35569b41ce4d1facfe683550f54086\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPacfile = Cloudflare.Index.GetZeroTrustGatewayPacfile.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        PacfileId = \"ed35569b41ce4d1facfe683550f54086\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayPacfile(ctx, \u0026cloudflare.LookupZeroTrustGatewayPacfileArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tPacfileId: \"ed35569b41ce4d1facfe683550f54086\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayPacfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayPacfile = CloudflareFunctions.getZeroTrustGatewayPacfile(GetZeroTrustGatewayPacfileArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .pacfileId(\"ed35569b41ce4d1facfe683550f54086\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayPacfile:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayPacfile\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        pacfileId: ed35569b41ce4d1facfe683550f54086\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayPacfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "pacfileId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "pacfileId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayPacfile.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "contents": {
                        "description": "Actual contents of the PAC file\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "description": "Detailed description of the PAC file.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Name of the PAC file.\n",
                        "type": "string"
                    },
                    "pacfileId": {
                        "type": "string"
                    },
                    "slug": {
                        "description": "URL-friendly version of the PAC file name.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "url": {
                        "description": "Unique URL to download the PAC file.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "contents",
                    "createdAt",
                    "description",
                    "id",
                    "name",
                    "pacfileId",
                    "slug",
                    "updatedAt",
                    "url"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayPacfiles:getZeroTrustGatewayPacfiles": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPacfiles = cloudflare.getZeroTrustGatewayPacfiles({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_pacfiles = cloudflare.get_zero_trust_gateway_pacfiles(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPacfiles = Cloudflare.Index.GetZeroTrustGatewayPacfiles.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayPacfiles(ctx, \u0026cloudflare.LookupZeroTrustGatewayPacfilesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayPacfilesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayPacfiles = CloudflareFunctions.getZeroTrustGatewayPacfiles(GetZeroTrustGatewayPacfilesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayPacfiles:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayPacfiles\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayPacfiles.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayPacfiles.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPacfilesResult:getZeroTrustGatewayPacfilesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicies:getZeroTrustGatewayPolicies": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPolicies = cloudflare.getZeroTrustGatewayPolicies({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_policies = cloudflare.get_zero_trust_gateway_policies(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPolicies = Cloudflare.Index.GetZeroTrustGatewayPolicies.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayPolicies(ctx, \u0026cloudflare.LookupZeroTrustGatewayPoliciesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayPolicies = CloudflareFunctions.getZeroTrustGatewayPolicies(GetZeroTrustGatewayPoliciesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayPolicies:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayPolicies\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayPolicies.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayPolicies.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPoliciesResult:getZeroTrustGatewayPoliciesResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayPolicy:getZeroTrustGatewayPolicy": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayPolicy = cloudflare.getZeroTrustGatewayPolicy({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    ruleId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_policy = cloudflare.get_zero_trust_gateway_policy(account_id=\"699d98642c564d2e855e9661899b7252\",\n    rule_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayPolicy = Cloudflare.Index.GetZeroTrustGatewayPolicy.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        RuleId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayPolicy(ctx, \u0026cloudflare.LookupZeroTrustGatewayPolicyArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tRuleId:    \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayPolicy = CloudflareFunctions.getZeroTrustGatewayPolicy(GetZeroTrustGatewayPolicyArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .ruleId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayPolicy:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayPolicy\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        ruleId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayPolicy.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "ruleId": {
                        "type": "string",
                        "description": "Identify the API resource with a UUID.\n"
                    }
                },
                "type": "object",
                "required": [
                    "ruleId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayPolicy.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "action": {
                        "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nAvailable values: \"on\", \"off\", \"allow\", \"block\", \"scan\", \"noscan\", \"safesearch\", \"ytrestricted\", \"isolate\", \"noisolate\", \"override\", \u003cspan pulumi-lang-nodejs=\"\"l4Override\"\" pulumi-lang-dotnet=\"\"L4Override\"\" pulumi-lang-go=\"\"l4Override\"\" pulumi-lang-python=\"\"l4_override\"\" pulumi-lang-yaml=\"\"l4Override\"\" pulumi-lang-java=\"\"l4Override\"\"\u003e\"l4Override\"\u003c/span\u003e, \"egress\", \"resolve\", \"quarantine\", \"redirect\".\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Indicate the date of deletion, if any.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "Specify the rule description.\n",
                        "type": "string"
                    },
                    "devicePosture": {
                        "description": "Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n",
                        "type": "string"
                    },
                    "enabled": {
                        "description": "Specify whether the rule is enabled.\n",
                        "type": "boolean"
                    },
                    "expiration": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyExpiration:getZeroTrustGatewayPolicyExpiration",
                        "description": "Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e configuration, if any. This  does not apply to HTTP or network policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e rules.\n"
                    },
                    "filters": {
                        "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "Identify the API resource with a UUID.\n",
                        "type": "string"
                    },
                    "identity": {
                        "description": "Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Specify the rule name.\n",
                        "type": "string"
                    },
                    "precedence": {
                        "description": "Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to Order of enforcement to manage precedence via Terraform.\n",
                        "type": "integer"
                    },
                    "readOnly": {
                        "description": "Indicate that this rule is shared via the Orgs API and read only.\n",
                        "type": "boolean"
                    },
                    "ruleId": {
                        "description": "Identify the API resource with a UUID.\n",
                        "type": "string"
                    },
                    "ruleSettings": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicyRuleSettings:getZeroTrustGatewayPolicyRuleSettings",
                        "description": "Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift.\n"
                    },
                    "schedule": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewayPolicySchedule:getZeroTrustGatewayPolicySchedule",
                        "description": "Defines the schedule for activating DNS policies. Settable only for \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`dnsResolver`\" pulumi-lang-dotnet=\"`DnsResolver`\" pulumi-lang-go=\"`dnsResolver`\" pulumi-lang-python=\"`dns_resolver`\" pulumi-lang-yaml=\"`dnsResolver`\" pulumi-lang-java=\"`dnsResolver`\"\u003e`dnsResolver`\u003c/span\u003e rules.\n"
                    },
                    "sharable": {
                        "description": "Indicate that this rule is sharable via the Orgs API.\n",
                        "type": "boolean"
                    },
                    "sourceAccount": {
                        "description": "Provide the account tag of the account that created the rule.\n",
                        "type": "string"
                    },
                    "traffic": {
                        "description": "Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    },
                    "version": {
                        "description": "Indicate the version number of the rule(read-only).\n",
                        "type": "integer"
                    },
                    "warningStatus": {
                        "description": "Indicate a warning for a misconfigured rule, if any.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "action",
                    "createdAt",
                    "deletedAt",
                    "description",
                    "devicePosture",
                    "enabled",
                    "expiration",
                    "filters",
                    "id",
                    "identity",
                    "name",
                    "precedence",
                    "readOnly",
                    "ruleId",
                    "ruleSettings",
                    "schedule",
                    "sharable",
                    "sourceAccount",
                    "traffic",
                    "updatedAt",
                    "version",
                    "warningStatus"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayProxyEndpoint:getZeroTrustGatewayProxyEndpoint": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayProxyEndpoint = cloudflare.getZeroTrustGatewayProxyEndpoint({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    proxyEndpointId: \"ed35569b41ce4d1facfe683550f54086\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_proxy_endpoint = cloudflare.get_zero_trust_gateway_proxy_endpoint(account_id=\"699d98642c564d2e855e9661899b7252\",\n    proxy_endpoint_id=\"ed35569b41ce4d1facfe683550f54086\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayProxyEndpoint = Cloudflare.Index.GetZeroTrustGatewayProxyEndpoint.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        ProxyEndpointId = \"ed35569b41ce4d1facfe683550f54086\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayProxyEndpoint(ctx, \u0026cloudflare.LookupZeroTrustGatewayProxyEndpointArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tProxyEndpointId: \"ed35569b41ce4d1facfe683550f54086\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayProxyEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayProxyEndpoint = CloudflareFunctions.getZeroTrustGatewayProxyEndpoint(GetZeroTrustGatewayProxyEndpointArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .proxyEndpointId(\"ed35569b41ce4d1facfe683550f54086\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayProxyEndpoint:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayProxyEndpoint\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        proxyEndpointId: ed35569b41ce4d1facfe683550f54086\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayProxyEndpoint.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "proxyEndpointId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "proxyEndpointId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayProxyEndpoint.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "ips": {
                        "description": "Specify the list of CIDRs to restrict ingress connections.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "kind": {
                        "description": "The proxy endpoint kind\nAvailable values: \"ip\", \"identity\".\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Specify the name of the proxy endpoint.\n",
                        "type": "string"
                    },
                    "proxyEndpointId": {
                        "type": "string"
                    },
                    "subdomain": {
                        "description": "Specify the subdomain to use as the destination in the proxy client.\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "id",
                    "ips",
                    "kind",
                    "name",
                    "proxyEndpointId",
                    "subdomain",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewayProxyEndpoints:getZeroTrustGatewayProxyEndpoints": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewayProxyEndpoints = cloudflare.getZeroTrustGatewayProxyEndpoints({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_proxy_endpoints = cloudflare.get_zero_trust_gateway_proxy_endpoints(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewayProxyEndpoints = Cloudflare.Index.GetZeroTrustGatewayProxyEndpoints.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewayProxyEndpoints(ctx, \u0026cloudflare.LookupZeroTrustGatewayProxyEndpointsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewayProxyEndpointsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewayProxyEndpoints = CloudflareFunctions.getZeroTrustGatewayProxyEndpoints(GetZeroTrustGatewayProxyEndpointsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewayProxyEndpoints:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewayProxyEndpoints\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewayProxyEndpoints.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewayProxyEndpoints.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustGatewayProxyEndpointsResult:getZeroTrustGatewayProxyEndpointsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustGatewaySettings:getZeroTrustGatewaySettings": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustGatewaySettings = cloudflare.getZeroTrustGatewaySettings({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_gateway_settings = cloudflare.get_zero_trust_gateway_settings(account_id=\"699d98642c564d2e855e9661899b7252\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustGatewaySettings = Cloudflare.Index.GetZeroTrustGatewaySettings.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustGatewaySettings(ctx, \u0026cloudflare.LookupZeroTrustGatewaySettingsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustGatewaySettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustGatewaySettings = CloudflareFunctions.getZeroTrustGatewaySettings(GetZeroTrustGatewaySettingsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustGatewaySettings:\n    fn::invoke:\n      function: cloudflare:getZeroTrustGatewaySettings\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustGatewaySettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustGatewaySettings.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "settings": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustGatewaySettingsSettings:getZeroTrustGatewaySettingsSettings",
                        "description": "Specify account settings.\n"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "id",
                    "settings",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustList:getZeroTrustList": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustList = cloudflare.getZeroTrustList({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    listId: \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_list = cloudflare.get_zero_trust_list(account_id=\"699d98642c564d2e855e9661899b7252\",\n    list_id=\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustList = Cloudflare.Index.GetZeroTrustList.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        ListId = \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustList(ctx, \u0026cloudflare.LookupZeroTrustListArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tListId:    pulumi.StringRef(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustList = CloudflareFunctions.getZeroTrustList(GetZeroTrustListArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .listId(\"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustList:\n    fn::invoke:\n      function: cloudflare:getZeroTrustList\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        listId: f174e90a-fafe-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustList.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustListFilter:getZeroTrustListFilter"
                    },
                    "listId": {
                        "type": "string",
                        "description": "Identify the API resource with a UUID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustList.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "description": {
                        "description": "Provide the list description.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustListFilter:getZeroTrustListFilter"
                    },
                    "id": {
                        "description": "Identify the API resource with a UUID.\n",
                        "type": "string"
                    },
                    "items": {
                        "description": "Provide the list items.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustListItem:getZeroTrustListItem"
                        },
                        "type": "array"
                    },
                    "listCount": {
                        "description": "Indicate the number of items in the list.\n",
                        "type": "number"
                    },
                    "listId": {
                        "description": "Identify the API resource with a UUID.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "Specify the list name.\n",
                        "type": "string"
                    },
                    "type": {
                        "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n",
                        "type": "string"
                    },
                    "updatedAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "createdAt",
                    "description",
                    "id",
                    "items",
                    "listCount",
                    "name",
                    "type",
                    "updatedAt"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustLists:getZeroTrustLists": {
            "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustLists = cloudflare.getZeroTrustLists({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    type: \"SERIAL\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_lists = cloudflare.get_zero_trust_lists(account_id=\"699d98642c564d2e855e9661899b7252\",\n    type=\"SERIAL\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustLists = Cloudflare.Index.GetZeroTrustLists.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Type = \"SERIAL\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustLists(ctx, \u0026cloudflare.LookupZeroTrustListsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tType:      pulumi.StringRef(\"SERIAL\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustListsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustLists = CloudflareFunctions.getZeroTrustLists(GetZeroTrustListsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .type(\"SERIAL\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustLists:\n    fn::invoke:\n      function: cloudflare:getZeroTrustLists\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        type: SERIAL\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustLists.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustLists.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustListsResult:getZeroTrustListsResult"
                        },
                        "type": "array"
                    },
                    "type": {
                        "description": "Specify the list type.\nAvailable values: \"SERIAL\", \"URL\", \"DOMAIN\", \"EMAIL\", \"IP\", \"CATEGORY\", \"LOCATION\", \"DEVICE\", \"AAGUID\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustNetworkHostnameRoute:getZeroTrustNetworkHostnameRoute": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustNetworkHostnameRoute = cloudflare.getZeroTrustNetworkHostnameRoute({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    hostnameRouteId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_network_hostname_route = cloudflare.get_zero_trust_network_hostname_route(account_id=\"699d98642c564d2e855e9661899b7252\",\n    hostname_route_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustNetworkHostnameRoute = Cloudflare.Index.GetZeroTrustNetworkHostnameRoute.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        HostnameRouteId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustNetworkHostnameRoute(ctx, \u0026cloudflare.LookupZeroTrustNetworkHostnameRouteArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tHostnameRouteId: pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustNetworkHostnameRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustNetworkHostnameRoute = CloudflareFunctions.getZeroTrustNetworkHostnameRoute(GetZeroTrustNetworkHostnameRouteArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .hostnameRouteId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustNetworkHostnameRoute:\n    fn::invoke:\n      function: cloudflare:getZeroTrustNetworkHostnameRoute\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        hostnameRouteId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustNetworkHostnameRoute.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustNetworkHostnameRouteFilter:getZeroTrustNetworkHostnameRouteFilter"
                    },
                    "hostnameRouteId": {
                        "type": "string",
                        "description": "The hostname route ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustNetworkHostnameRoute.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "comment": {
                        "description": "An optional description of the hostname route.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the resource was created.\n",
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustNetworkHostnameRouteFilter:getZeroTrustNetworkHostnameRouteFilter"
                    },
                    "hostname": {
                        "description": "The hostname of the route.\n",
                        "type": "string"
                    },
                    "hostnameRouteId": {
                        "description": "The hostname route ID.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The hostname route ID.\n",
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "tunnelName": {
                        "description": "A user-friendly name for a tunnel.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comment",
                    "createdAt",
                    "deletedAt",
                    "hostname",
                    "id",
                    "tunnelId",
                    "tunnelName"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustNetworkHostnameRoutes:getZeroTrustNetworkHostnameRoutes": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustNetworkHostnameRoutes = cloudflare.getZeroTrustNetworkHostnameRoutes({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    id: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    comment: \"example%20comment\",\n    existedAt: \"2019-10-12T07%3A20%3A50.52Z\",\n    hostname: \"office-1.local\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_network_hostname_routes = cloudflare.get_zero_trust_network_hostname_routes(account_id=\"699d98642c564d2e855e9661899b7252\",\n    id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    comment=\"example%20comment\",\n    existed_at=\"2019-10-12T07%3A20%3A50.52Z\",\n    hostname=\"office-1.local\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustNetworkHostnameRoutes = Cloudflare.Index.GetZeroTrustNetworkHostnameRoutes.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Id = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        Comment = \"example%20comment\",\n        ExistedAt = \"2019-10-12T07%3A20%3A50.52Z\",\n        Hostname = \"office-1.local\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustNetworkHostnameRoutes(ctx, \u0026cloudflare.LookupZeroTrustNetworkHostnameRoutesArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tId:        pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tComment:   pulumi.StringRef(\"example%20comment\"),\n\t\t\tExistedAt: pulumi.StringRef(\"2019-10-12T07%3A20%3A50.52Z\"),\n\t\t\tHostname:  pulumi.StringRef(\"office-1.local\"),\n\t\t\tTunnelId:  pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustNetworkHostnameRoutesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustNetworkHostnameRoutes = CloudflareFunctions.getZeroTrustNetworkHostnameRoutes(GetZeroTrustNetworkHostnameRoutesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .id(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .comment(\"example%20comment\")\n            .existedAt(\"2019-10-12T07%3A20%3A50.52Z\")\n            .hostname(\"office-1.local\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustNetworkHostnameRoutes:\n    fn::invoke:\n      function: cloudflare:getZeroTrustNetworkHostnameRoutes\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        id: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n        comment: example%20comment\n        existedAt: 2019-10-12T07%3A20%3A50.52Z\n        hostname: office-1.local\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustNetworkHostnameRoutes.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "If set, only list hostname routes with the given comment.\n"
                    },
                    "existedAt": {
                        "type": "string",
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                    },
                    "hostname": {
                        "type": "string",
                        "description": "If set, only list hostname routes that contain a substring of the given value, the filter is case-insensitive.\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "The hostname route ID.\n"
                    },
                    "isDeleted": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only return deleted hostname routes. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted hostname routes.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "If set, only list hostname routes that point to a specific tunnel.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustNetworkHostnameRoutes.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "comment": {
                        "description": "If set, only list hostname routes with the given comment.\n",
                        "type": "string"
                    },
                    "existedAt": {
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n",
                        "type": "string"
                    },
                    "hostname": {
                        "description": "If set, only list hostname routes that contain a substring of the given value, the filter is case-insensitive.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The hostname route ID.\n",
                        "type": "string"
                    },
                    "isDeleted": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only return deleted hostname routes. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted hostname routes.\n",
                        "type": "boolean"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustNetworkHostnameRoutesResult:getZeroTrustNetworkHostnameRoutesResult"
                        },
                        "type": "array"
                    },
                    "tunnelId": {
                        "description": "If set, only list hostname routes that point to a specific tunnel.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "isDeleted",
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustOrganization:getZeroTrustOrganization": {
            "description": "Accepted Permissions\n\n- `Access: Organizations, Identity Providers, and Groups Read`\n- `Access: Organizations, Identity Providers, and Groups Revoke`\n- `Access: Organizations, Identity Providers, and Groups Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustOrganization = cloudflare.getZeroTrustOrganization({\n    accountId: \"account_id\",\n    zoneId: \"zone_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_organization = cloudflare.get_zero_trust_organization(account_id=\"account_id\",\n    zone_id=\"zone_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustOrganization = Cloudflare.Index.GetZeroTrustOrganization.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        ZoneId = \"zone_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustOrganization(ctx, \u0026cloudflare.LookupZeroTrustOrganizationArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t\tZoneId:    pulumi.StringRef(\"zone_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustOrganizationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustOrganization = CloudflareFunctions.getZeroTrustOrganization(GetZeroTrustOrganizationArgs.builder()\n            .accountId(\"account_id\")\n            .zoneId(\"zone_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustOrganization:\n    fn::invoke:\n      function: cloudflare:getZeroTrustOrganization\n      arguments:\n        accountId: account_id\n        zoneId: zone_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustOrganization.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustOrganization.\n",
                "properties": {
                    "accountId": {
                        "description": "The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.\n",
                        "type": "string"
                    },
                    "allowAuthenticateViaWarp": {
                        "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.\n",
                        "type": "boolean"
                    },
                    "authDomain": {
                        "description": "The unique subdomain assigned to your Zero Trust organization.\n",
                        "type": "string"
                    },
                    "autoRedirectToIdentity": {
                        "description": "When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, users skip the identity provider selection step during login.\n",
                        "type": "boolean"
                    },
                    "customPages": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustOrganizationCustomPages:getZeroTrustOrganizationCustomPages"
                    },
                    "denyUnmatchedRequests": {
                        "description": "Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-go=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-python=\"`deny_unmatched_requests_exempted_zone_names`\" pulumi-lang-yaml=\"`denyUnmatchedRequestsExemptedZoneNames`\" pulumi-lang-java=\"`denyUnmatchedRequestsExemptedZoneNames`\"\u003e`denyUnmatchedRequestsExemptedZoneNames`\u003c/span\u003e array.\n",
                        "type": "boolean"
                    },
                    "denyUnmatchedRequestsExemptedZoneNames": {
                        "description": "Contains zone names to exempt from the \u003cspan pulumi-lang-nodejs=\"`denyUnmatchedRequests`\" pulumi-lang-dotnet=\"`DenyUnmatchedRequests`\" pulumi-lang-go=\"`denyUnmatchedRequests`\" pulumi-lang-python=\"`deny_unmatched_requests`\" pulumi-lang-yaml=\"`denyUnmatchedRequests`\" pulumi-lang-java=\"`denyUnmatchedRequests`\"\u003e`denyUnmatchedRequests`\u003c/span\u003e feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "isUiReadOnly": {
                        "description": "Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled.\n",
                        "type": "boolean"
                    },
                    "loginDesign": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustOrganizationLoginDesign:getZeroTrustOrganizationLoginDesign"
                    },
                    "mfaConfig": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustOrganizationMfaConfig:getZeroTrustOrganizationMfaConfig",
                        "description": "Configures multi-factor authentication (MFA) settings for an organization.\n"
                    },
                    "mfaRequiredForAllApps": {
                        "description": "Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured.\n",
                        "type": "boolean"
                    },
                    "mfaSshPivKeyRequirements": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustOrganizationMfaSshPivKeyRequirements:getZeroTrustOrganizationMfaSshPivKeyRequirements",
                        "description": "Configures SSH PIV key requirements for MFA using hardware security keys.\n"
                    },
                    "name": {
                        "description": "The name of your Zero Trust organization.\n",
                        "type": "string"
                    },
                    "sessionDuration": {
                        "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: ns, us (or µs), ms, s, m, h.\n",
                        "type": "string"
                    },
                    "uiReadOnlyToggleReason": {
                        "description": "A description of the reason why the UI read only field is being toggled.\n",
                        "type": "string"
                    },
                    "userSeatExpirationInactiveTime": {
                        "description": "The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format \u003cspan pulumi-lang-nodejs=\"`300ms`\" pulumi-lang-dotnet=\"`300ms`\" pulumi-lang-go=\"`300ms`\" pulumi-lang-python=\"`300ms`\" pulumi-lang-yaml=\"`300ms`\" pulumi-lang-java=\"`300ms`\"\u003e`300ms`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: \u003cspan pulumi-lang-nodejs=\"`ns`\" pulumi-lang-dotnet=\"`Ns`\" pulumi-lang-go=\"`ns`\" pulumi-lang-python=\"`ns`\" pulumi-lang-yaml=\"`ns`\" pulumi-lang-java=\"`ns`\"\u003e`ns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`us`\" pulumi-lang-dotnet=\"`Us`\" pulumi-lang-go=\"`us`\" pulumi-lang-python=\"`us`\" pulumi-lang-yaml=\"`us`\" pulumi-lang-java=\"`us`\"\u003e`us`\u003c/span\u003e (or `µs`), \u003cspan pulumi-lang-nodejs=\"`ms`\" pulumi-lang-dotnet=\"`Ms`\" pulumi-lang-go=\"`ms`\" pulumi-lang-python=\"`ms`\" pulumi-lang-yaml=\"`ms`\" pulumi-lang-java=\"`ms`\"\u003e`ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`m`\" pulumi-lang-dotnet=\"`M`\" pulumi-lang-go=\"`m`\" pulumi-lang-python=\"`m`\" pulumi-lang-yaml=\"`m`\" pulumi-lang-java=\"`m`\"\u003e`m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`h`\" pulumi-lang-dotnet=\"`H`\" pulumi-lang-go=\"`h`\" pulumi-lang-python=\"`h`\" pulumi-lang-yaml=\"`h`\" pulumi-lang-java=\"`h`\"\u003e`h`\u003c/span\u003e.\n",
                        "type": "string"
                    },
                    "warpAuthSessionDuration": {
                        "description": "The amount of time that tokens issued for applications will be valid. Must be in the format \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`2h45m`\" pulumi-lang-dotnet=\"`2h45m`\" pulumi-lang-go=\"`2h45m`\" pulumi-lang-python=\"`2h45m`\" pulumi-lang-yaml=\"`2h45m`\" pulumi-lang-java=\"`2h45m`\"\u003e`2h45m`\u003c/span\u003e. Valid time units are: m, h.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "allowAuthenticateViaWarp",
                    "authDomain",
                    "autoRedirectToIdentity",
                    "customPages",
                    "denyUnmatchedRequests",
                    "denyUnmatchedRequestsExemptedZoneNames",
                    "isUiReadOnly",
                    "loginDesign",
                    "mfaConfig",
                    "mfaRequiredForAllApps",
                    "mfaSshPivKeyRequirements",
                    "name",
                    "sessionDuration",
                    "uiReadOnlyToggleReason",
                    "userSeatExpirationInactiveTime",
                    "warpAuthSessionDuration",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustRiskBehavior:getZeroTrustRiskBehavior": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustRiskBehavior = cloudflare.getZeroTrustRiskBehavior({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_risk_behavior = cloudflare.get_zero_trust_risk_behavior(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustRiskBehavior = Cloudflare.Index.GetZeroTrustRiskBehavior.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustRiskBehavior(ctx, \u0026cloudflare.LookupZeroTrustRiskBehaviorArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustRiskBehaviorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustRiskBehavior = CloudflareFunctions.getZeroTrustRiskBehavior(GetZeroTrustRiskBehaviorArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustRiskBehavior:\n    fn::invoke:\n      function: cloudflare:getZeroTrustRiskBehavior\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustRiskBehavior.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustRiskBehavior.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "behaviors": {
                        "additionalProperties": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustRiskBehaviorBehaviors:getZeroTrustRiskBehaviorBehaviors"
                        },
                        "type": "object"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    }
                },
                "required": [
                    "behaviors",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustRiskScoringIntegration:getZeroTrustRiskScoringIntegration": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustRiskScoringIntegration = cloudflare.getZeroTrustRiskScoringIntegration({\n    accountId: \"account_id\",\n    integrationId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_risk_scoring_integration = cloudflare.get_zero_trust_risk_scoring_integration(account_id=\"account_id\",\n    integration_id=\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustRiskScoringIntegration = Cloudflare.Index.GetZeroTrustRiskScoringIntegration.Invoke(new()\n    {\n        AccountId = \"account_id\",\n        IntegrationId = \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustRiskScoringIntegration(ctx, \u0026cloudflare.LookupZeroTrustRiskScoringIntegrationArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"account_id\"),\n\t\t\tIntegrationId: \"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustRiskScoringIntegrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustRiskScoringIntegration = CloudflareFunctions.getZeroTrustRiskScoringIntegration(GetZeroTrustRiskScoringIntegrationArgs.builder()\n            .accountId(\"account_id\")\n            .integrationId(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustRiskScoringIntegration:\n    fn::invoke:\n      function: cloudflare:getZeroTrustRiskScoringIntegration\n      arguments:\n        accountId: account_id\n        integrationId: 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustRiskScoringIntegration.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "integrationId": {
                        "type": "string"
                    }
                },
                "type": "object",
                "required": [
                    "integrationId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustRiskScoringIntegration.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "accountTag": {
                        "description": "The Cloudflare account tag.\n",
                        "type": "string"
                    },
                    "active": {
                        "description": "Whether this integration is enabled and should export changes in risk score.\n",
                        "type": "boolean"
                    },
                    "createdAt": {
                        "description": "When the integration was created in RFC3339 format.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The ID of this resource.\n",
                        "type": "string"
                    },
                    "integrationId": {
                        "type": "string"
                    },
                    "integrationType": {
                        "description": "Available values: \"Okta\".\n",
                        "type": "string"
                    },
                    "referenceId": {
                        "description": "A reference ID defined by the client.\nShould be set to the Access-Okta IDP integration ID.\nUseful when the risk-score integration needs to be associated with a secondary asset and recalled using that ID.\n",
                        "type": "string"
                    },
                    "tenantUrl": {
                        "description": "The base URL for the tenant. E.g. \"https://tenant.okta.com\".\n",
                        "type": "string"
                    },
                    "wellKnownUrl": {
                        "description": "The URL for the Shared Signals Framework configuration, e.g. \"/.well-known/sse-configuration/{integration*uuid}/\". https://openid.net/specs/openid-sse-framework-1*0.html#rfc.section.6.2.1.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "accountTag",
                    "active",
                    "createdAt",
                    "id",
                    "integrationId",
                    "integrationType",
                    "referenceId",
                    "tenantUrl",
                    "wellKnownUrl"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustRiskScoringIntegrations:getZeroTrustRiskScoringIntegrations": {
            "description": "Accepted Permissions\n\n- `Zero Trust Read`\n- `Zero Trust Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustRiskScoringIntegrations = cloudflare.getZeroTrustRiskScoringIntegrations({\n    accountId: \"account_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_risk_scoring_integrations = cloudflare.get_zero_trust_risk_scoring_integrations(account_id=\"account_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustRiskScoringIntegrations = Cloudflare.Index.GetZeroTrustRiskScoringIntegrations.Invoke(new()\n    {\n        AccountId = \"account_id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustRiskScoringIntegrations(ctx, \u0026cloudflare.LookupZeroTrustRiskScoringIntegrationsArgs{\n\t\t\tAccountId: pulumi.StringRef(\"account_id\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustRiskScoringIntegrationsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustRiskScoringIntegrations = CloudflareFunctions.getZeroTrustRiskScoringIntegrations(GetZeroTrustRiskScoringIntegrationsArgs.builder()\n            .accountId(\"account_id\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustRiskScoringIntegrations:\n    fn::invoke:\n      function: cloudflare:getZeroTrustRiskScoringIntegrations\n      arguments:\n        accountId: account_id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustRiskScoringIntegrations.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustRiskScoringIntegrations.\n",
                "properties": {
                    "accountId": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustRiskScoringIntegrationsResult:getZeroTrustRiskScoringIntegrationsResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflared:getZeroTrustTunnelCloudflared": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflared = cloudflare.getZeroTrustTunnelCloudflared({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared = cloudflare.get_zero_trust_tunnel_cloudflared(account_id=\"699d98642c564d2e855e9661899b7252\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflared = Cloudflare.Index.GetZeroTrustTunnelCloudflared.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflared(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tTunnelId:  pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflared = CloudflareFunctions.getZeroTrustTunnelCloudflared(GetZeroTrustTunnelCloudflaredArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflared:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflared\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflared.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredFilter:getZeroTrustTunnelCloudflaredFilter"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflared.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "accountTag": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "configSrc": {
                        "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n",
                        "type": "string"
                    },
                    "connections": {
                        "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`",
                        "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConnection:getZeroTrustTunnelCloudflaredConnection"
                        },
                        "type": "array"
                    },
                    "connsActiveAt": {
                        "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n",
                        "type": "string"
                    },
                    "connsInactiveAt": {
                        "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the resource was created.\n",
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredFilter:getZeroTrustTunnelCloudflaredFilter"
                    },
                    "id": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "metadata": {
                        "description": "Metadata associated with the tunnel.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A user-friendly name for a tunnel.\n",
                        "type": "string"
                    },
                    "remoteConfig": {
                        "deprecationMessage": "Use the\u003cspan pulumi-lang-nodejs=\" configSrc \" pulumi-lang-dotnet=\" ConfigSrc \" pulumi-lang-go=\" configSrc \" pulumi-lang-python=\" config_src \" pulumi-lang-yaml=\" configSrc \" pulumi-lang-java=\" configSrc \"\u003e configSrc \u003c/span\u003efield instead.",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the tunnel can be configured remotely from the Zero Trust dashboard. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tunnel must be configured locally on the origin machine.\n",
                        "type": "boolean"
                    },
                    "status": {
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n",
                        "type": "string"
                    },
                    "tunType": {
                        "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n",
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "accountTag",
                    "configSrc",
                    "connections",
                    "connsActiveAt",
                    "connsInactiveAt",
                    "createdAt",
                    "deletedAt",
                    "id",
                    "metadata",
                    "name",
                    "remoteConfig",
                    "status",
                    "tunType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredConfig:getZeroTrustTunnelCloudflaredConfig": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredConfig = cloudflare.getZeroTrustTunnelCloudflaredConfig({\n    accountId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_config = cloudflare.get_zero_trust_tunnel_cloudflared_config(account_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredConfig = Cloudflare.Index.GetZeroTrustTunnelCloudflaredConfig.Invoke(new()\n    {\n        AccountId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflaredConfig(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredConfigArgs{\n\t\t\tAccountId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tTunnelId:  \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflaredConfig = CloudflareFunctions.getZeroTrustTunnelCloudflaredConfig(GetZeroTrustTunnelCloudflaredConfigArgs.builder()\n            .accountId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflaredConfig:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflaredConfig\n      arguments:\n        accountId: 023e105f4ecef8ad9ca31a8372d0c353\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflaredConfig.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    }
                },
                "type": "object",
                "required": [
                    "tunnelId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflaredConfig.\n",
                "properties": {
                    "accountId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "config": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredConfigConfig:getZeroTrustTunnelCloudflaredConfigConfig",
                        "description": "The tunnel configuration and ingress rules.\n"
                    },
                    "createdAt": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "source": {
                        "description": "Indicates if this is a locally or remotely configured tunnel. If \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, manage the tunnel using a YAML file on the origin machine. If \u003cspan pulumi-lang-nodejs=\"`cloudflare`\" pulumi-lang-dotnet=\"`Cloudflare`\" pulumi-lang-go=\"`cloudflare`\" pulumi-lang-python=\"`cloudflare`\" pulumi-lang-yaml=\"`cloudflare`\" pulumi-lang-java=\"`cloudflare`\"\u003e`cloudflare`\u003c/span\u003e, manage the tunnel's configuration on the Zero Trust dashboard.\nAvailable values: \"local\", \"cloudflare\".\n",
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "version": {
                        "description": "The version of the Tunnel Configuration.\n",
                        "type": "integer"
                    }
                },
                "required": [
                    "config",
                    "createdAt",
                    "source",
                    "tunnelId",
                    "version",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredRoute:getZeroTrustTunnelCloudflaredRoute": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredRoute = cloudflare.getZeroTrustTunnelCloudflaredRoute({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    routeId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_route = cloudflare.get_zero_trust_tunnel_cloudflared_route(account_id=\"699d98642c564d2e855e9661899b7252\",\n    route_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredRoute = Cloudflare.Index.GetZeroTrustTunnelCloudflaredRoute.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        RouteId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflaredRoute(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredRouteArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tRouteId:   pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflaredRoute = CloudflareFunctions.getZeroTrustTunnelCloudflaredRoute(GetZeroTrustTunnelCloudflaredRouteArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .routeId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflaredRoute:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflaredRoute\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        routeId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflaredRoute.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredRouteFilter:getZeroTrustTunnelCloudflaredRouteFilter"
                    },
                    "routeId": {
                        "type": "string",
                        "description": "UUID of the route.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflaredRoute.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "comment": {
                        "description": "Optional remark describing the route.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the resource was created.\n",
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredRouteFilter:getZeroTrustTunnelCloudflaredRouteFilter"
                    },
                    "id": {
                        "description": "UUID of the route.\n",
                        "type": "string"
                    },
                    "network": {
                        "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.\n",
                        "type": "string"
                    },
                    "routeId": {
                        "description": "UUID of the route.\n",
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "virtualNetworkId": {
                        "description": "UUID of the virtual network.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comment",
                    "createdAt",
                    "deletedAt",
                    "id",
                    "network",
                    "tunnelId",
                    "virtualNetworkId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredRoutes:getZeroTrustTunnelCloudflaredRoutes": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredRoutes = cloudflare.getZeroTrustTunnelCloudflaredRoutes({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    existedAt: \"2019-10-12T07%3A20%3A50.52Z\",\n    isDeleted: true,\n    networkSubset: \"172.16.0.0/16\",\n    networkSuperset: \"172.16.0.0/16\",\n    routeId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    tunTypes: [\"cfd_tunnel\"],\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    virtualNetworkId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_routes = cloudflare.get_zero_trust_tunnel_cloudflared_routes(account_id=\"699d98642c564d2e855e9661899b7252\",\n    existed_at=\"2019-10-12T07%3A20%3A50.52Z\",\n    is_deleted=True,\n    network_subset=\"172.16.0.0/16\",\n    network_superset=\"172.16.0.0/16\",\n    route_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    tun_types=[\"cfd_tunnel\"],\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    virtual_network_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredRoutes = Cloudflare.Index.GetZeroTrustTunnelCloudflaredRoutes.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        ExistedAt = \"2019-10-12T07%3A20%3A50.52Z\",\n        IsDeleted = true,\n        NetworkSubset = \"172.16.0.0/16\",\n        NetworkSuperset = \"172.16.0.0/16\",\n        RouteId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        TunTypes = new[]\n        {\n            \"cfd_tunnel\",\n        },\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        VirtualNetworkId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflaredRoutes(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredRoutesArgs{\n\t\t\tAccountId:       pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tExistedAt:       pulumi.StringRef(\"2019-10-12T07%3A20%3A50.52Z\"),\n\t\t\tIsDeleted:       pulumi.BoolRef(true),\n\t\t\tNetworkSubset:   pulumi.StringRef(\"172.16.0.0/16\"),\n\t\t\tNetworkSuperset: pulumi.StringRef(\"172.16.0.0/16\"),\n\t\t\tRouteId:         pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tTunTypes: []string{\n\t\t\t\t\"cfd_tunnel\",\n\t\t\t},\n\t\t\tTunnelId:         pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tVirtualNetworkId: pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredRoutesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflaredRoutes = CloudflareFunctions.getZeroTrustTunnelCloudflaredRoutes(GetZeroTrustTunnelCloudflaredRoutesArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .existedAt(\"2019-10-12T07%3A20%3A50.52Z\")\n            .isDeleted(true)\n            .networkSubset(\"172.16.0.0/16\")\n            .networkSuperset(\"172.16.0.0/16\")\n            .routeId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .tunTypes(\"cfd_tunnel\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .virtualNetworkId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflaredRoutes:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflaredRoutes\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        existedAt: 2019-10-12T07%3A20%3A50.52Z\n        isDeleted: true\n        networkSubset: 172.16.0.0/16\n        networkSuperset: 172.16.0.0/16\n        routeId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n        tunTypes:\n          - cfd_tunnel\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n        virtualNetworkId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflaredRoutes.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "comment": {
                        "type": "string",
                        "description": "Optional remark describing the route.\n"
                    },
                    "existedAt": {
                        "type": "string",
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                    },
                    "isDeleted": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted routes. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted routes. If empty, all routes will be included.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "networkSubset": {
                        "type": "string",
                        "description": "If set, only list routes that are contained within this IP range.\n"
                    },
                    "networkSuperset": {
                        "type": "string",
                        "description": "If set, only list routes that contain this IP range.\n"
                    },
                    "routeId": {
                        "type": "string",
                        "description": "UUID of the route.\n"
                    },
                    "tunTypes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The types of tunnels to filter by, separated by commas.\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "virtualNetworkId": {
                        "type": "string",
                        "description": "UUID of the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflaredRoutes.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "comment": {
                        "description": "Optional remark describing the route.\n",
                        "type": "string"
                    },
                    "existedAt": {
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "isDeleted": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted routes. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted routes. If empty, all routes will be included.\n",
                        "type": "boolean"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "networkSubset": {
                        "description": "If set, only list routes that are contained within this IP range.\n",
                        "type": "string"
                    },
                    "networkSuperset": {
                        "description": "If set, only list routes that contain this IP range.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredRoutesResult:getZeroTrustTunnelCloudflaredRoutesResult"
                        },
                        "type": "array"
                    },
                    "routeId": {
                        "description": "UUID of the route.\n",
                        "type": "string"
                    },
                    "tunTypes": {
                        "description": "The types of tunnels to filter by, separated by commas.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "virtualNetworkId": {
                        "description": "UUID of the virtual network.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comment",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredToken:getZeroTrustTunnelCloudflaredToken": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredToken = cloudflare.getZeroTrustTunnelCloudflaredToken({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_token = cloudflare.get_zero_trust_tunnel_cloudflared_token(account_id=\"699d98642c564d2e855e9661899b7252\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredToken = Cloudflare.Index.GetZeroTrustTunnelCloudflaredToken.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflaredToken(ctx, \u0026cloudflare.GetZeroTrustTunnelCloudflaredTokenArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tTunnelId:  \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflaredToken = CloudflareFunctions.getZeroTrustTunnelCloudflaredToken(GetZeroTrustTunnelCloudflaredTokenArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflaredToken:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflaredToken\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflaredToken.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    }
                },
                "type": "object",
                "required": [
                    "tunnelId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflaredToken.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "token": {
                        "description": "The Tunnel Token is used as a mechanism to authenticate the operation of a tunnel.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "token",
                    "tunnelId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetwork:getZeroTrustTunnelCloudflaredVirtualNetwork": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredVirtualNetwork = cloudflare.getZeroTrustTunnelCloudflaredVirtualNetwork({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    virtualNetworkId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_virtual_network = cloudflare.get_zero_trust_tunnel_cloudflared_virtual_network(account_id=\"699d98642c564d2e855e9661899b7252\",\n    virtual_network_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredVirtualNetwork = Cloudflare.Index.GetZeroTrustTunnelCloudflaredVirtualNetwork.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        VirtualNetworkId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflaredVirtualNetwork(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredVirtualNetworkArgs{\n\t\t\tAccountId:        pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tVirtualNetworkId: pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredVirtualNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflaredVirtualNetwork = CloudflareFunctions.getZeroTrustTunnelCloudflaredVirtualNetwork(GetZeroTrustTunnelCloudflaredVirtualNetworkArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .virtualNetworkId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflaredVirtualNetwork:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflaredVirtualNetwork\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        virtualNetworkId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflaredVirtualNetwork.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetworkFilter:getZeroTrustTunnelCloudflaredVirtualNetworkFilter"
                    },
                    "virtualNetworkId": {
                        "type": "string",
                        "description": "UUID of the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflaredVirtualNetwork.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "comment": {
                        "description": "Optional remark describing the virtual network.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the resource was created.\n",
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetworkFilter:getZeroTrustTunnelCloudflaredVirtualNetworkFilter"
                    },
                    "id": {
                        "description": "UUID of the virtual network.\n",
                        "type": "string"
                    },
                    "isDefaultNetwork": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this virtual network is the default for the account.\n",
                        "type": "boolean"
                    },
                    "name": {
                        "description": "A user-friendly name for the virtual network.\n",
                        "type": "string"
                    },
                    "virtualNetworkId": {
                        "description": "UUID of the virtual network.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "comment",
                    "createdAt",
                    "deletedAt",
                    "id",
                    "isDefaultNetwork",
                    "name"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetworks:getZeroTrustTunnelCloudflaredVirtualNetworks": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Networks Read`\n- `Cloudflare One Networks Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflaredVirtualNetworks = cloudflare.getZeroTrustTunnelCloudflaredVirtualNetworks({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    id: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    isDefault: true,\n    isDefaultNetwork: true,\n    isDeleted: true,\n    name: \"us-east-1-vpc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflared_virtual_networks = cloudflare.get_zero_trust_tunnel_cloudflared_virtual_networks(account_id=\"699d98642c564d2e855e9661899b7252\",\n    id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    is_default=True,\n    is_default_network=True,\n    is_deleted=True,\n    name=\"us-east-1-vpc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflaredVirtualNetworks = Cloudflare.Index.GetZeroTrustTunnelCloudflaredVirtualNetworks.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        Id = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        IsDefault = true,\n        IsDefaultNetwork = true,\n        IsDeleted = true,\n        Name = \"us-east-1-vpc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflaredVirtualNetworks(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredVirtualNetworksArgs{\n\t\t\tAccountId:        pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tId:               pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tIsDefault:        pulumi.BoolRef(true),\n\t\t\tIsDefaultNetwork: pulumi.BoolRef(true),\n\t\t\tIsDeleted:        pulumi.BoolRef(true),\n\t\t\tName:             pulumi.StringRef(\"us-east-1-vpc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredVirtualNetworksArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflaredVirtualNetworks = CloudflareFunctions.getZeroTrustTunnelCloudflaredVirtualNetworks(GetZeroTrustTunnelCloudflaredVirtualNetworksArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .id(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .isDefault(true)\n            .isDefaultNetwork(true)\n            .isDeleted(true)\n            .name(\"us-east-1-vpc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflaredVirtualNetworks:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflaredVirtualNetworks\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        id: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n        isDefault: true\n        isDefaultNetwork: true\n        isDeleted: true\n        name: us-east-1-vpc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflaredVirtualNetworks.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "id": {
                        "type": "string",
                        "description": "UUID of the virtual network.\n"
                    },
                    "isDefault": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include the default virtual network. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude the default virtual network. If empty, all virtual networks will be included.\n"
                    },
                    "isDefaultNetwork": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include the default virtual network. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude the default virtual network. If empty, all virtual networks will be included.\n"
                    },
                    "isDeleted": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted virtual networks. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted virtual networks. If empty, all virtual networks will be included.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for the virtual network.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflaredVirtualNetworks.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "UUID of the virtual network.\n",
                        "type": "string"
                    },
                    "isDefault": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include the default virtual network. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude the default virtual network. If empty, all virtual networks will be included.\n",
                        "type": "boolean"
                    },
                    "isDefaultNetwork": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include the default virtual network. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude the default virtual network. If empty, all virtual networks will be included.\n",
                        "type": "boolean"
                    },
                    "isDeleted": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted virtual networks. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted virtual networks. If empty, all virtual networks will be included.\n",
                        "type": "boolean"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "A user-friendly name for the virtual network.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredVirtualNetworksResult:getZeroTrustTunnelCloudflaredVirtualNetworksResult"
                        },
                        "type": "array"
                    }
                },
                "required": [
                    "results"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelCloudflareds:getZeroTrustTunnelCloudflareds": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Read`\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Read`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelCloudflareds = cloudflare.getZeroTrustTunnelCloudflareds({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    excludePrefix: \"vpc1-\",\n    existedAt: \"2019-10-12T07%3A20%3A50.52Z\",\n    includePrefix: \"vpc1-\",\n    isDeleted: true,\n    name: \"blog\",\n    status: \"healthy\",\n    uuid: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    wasActiveAt: \"2009-11-10T23:00:00Z\",\n    wasInactiveAt: \"2009-11-10T23:00:00Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_cloudflareds = cloudflare.get_zero_trust_tunnel_cloudflareds(account_id=\"699d98642c564d2e855e9661899b7252\",\n    exclude_prefix=\"vpc1-\",\n    existed_at=\"2019-10-12T07%3A20%3A50.52Z\",\n    include_prefix=\"vpc1-\",\n    is_deleted=True,\n    name=\"blog\",\n    status=\"healthy\",\n    uuid=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    was_active_at=\"2009-11-10T23:00:00Z\",\n    was_inactive_at=\"2009-11-10T23:00:00Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelCloudflareds = Cloudflare.Index.GetZeroTrustTunnelCloudflareds.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        ExcludePrefix = \"vpc1-\",\n        ExistedAt = \"2019-10-12T07%3A20%3A50.52Z\",\n        IncludePrefix = \"vpc1-\",\n        IsDeleted = true,\n        Name = \"blog\",\n        Status = \"healthy\",\n        Uuid = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        WasActiveAt = \"2009-11-10T23:00:00Z\",\n        WasInactiveAt = \"2009-11-10T23:00:00Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelCloudflareds(ctx, \u0026cloudflare.LookupZeroTrustTunnelCloudflaredsArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tExcludePrefix: pulumi.StringRef(\"vpc1-\"),\n\t\t\tExistedAt:     pulumi.StringRef(\"2019-10-12T07%3A20%3A50.52Z\"),\n\t\t\tIncludePrefix: pulumi.StringRef(\"vpc1-\"),\n\t\t\tIsDeleted:     pulumi.BoolRef(true),\n\t\t\tName:          pulumi.StringRef(\"blog\"),\n\t\t\tStatus:        pulumi.StringRef(\"healthy\"),\n\t\t\tUuid:          pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tWasActiveAt:   pulumi.StringRef(\"2009-11-10T23:00:00Z\"),\n\t\t\tWasInactiveAt: pulumi.StringRef(\"2009-11-10T23:00:00Z\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelCloudflaredsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelCloudflareds = CloudflareFunctions.getZeroTrustTunnelCloudflareds(GetZeroTrustTunnelCloudflaredsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .excludePrefix(\"vpc1-\")\n            .existedAt(\"2019-10-12T07%3A20%3A50.52Z\")\n            .includePrefix(\"vpc1-\")\n            .isDeleted(true)\n            .name(\"blog\")\n            .status(\"healthy\")\n            .uuid(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .wasActiveAt(\"2009-11-10T23:00:00Z\")\n            .wasInactiveAt(\"2009-11-10T23:00:00Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelCloudflareds:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelCloudflareds\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        excludePrefix: vpc1-\n        existedAt: 2019-10-12T07%3A20%3A50.52Z\n        includePrefix: vpc1-\n        isDeleted: true\n        name: blog\n        status: healthy\n        uuid: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n        wasActiveAt: 2009-11-10T23:00:00Z\n        wasInactiveAt: 2009-11-10T23:00:00Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelCloudflareds.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "excludePrefix": {
                        "type": "string"
                    },
                    "existedAt": {
                        "type": "string",
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                    },
                    "includePrefix": {
                        "type": "string"
                    },
                    "isDeleted": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted tunnels. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted tunnels. If empty, all tunnels will be included.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for a tunnel.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                    },
                    "uuid": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "wasActiveAt": {
                        "type": "string"
                    },
                    "wasInactiveAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelCloudflareds.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "excludePrefix": {
                        "type": "string"
                    },
                    "existedAt": {
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "includePrefix": {
                        "type": "string"
                    },
                    "isDeleted": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted tunnels. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted tunnels. If empty, all tunnels will be included.\n",
                        "type": "boolean"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "A user-friendly name for a tunnel.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustTunnelCloudflaredsResult:getZeroTrustTunnelCloudflaredsResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n",
                        "type": "string"
                    },
                    "uuid": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "wasActiveAt": {
                        "type": "string"
                    },
                    "wasInactiveAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnector:getZeroTrustTunnelWarpConnector": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: WARP Read`\n- `Cloudflare One Connector: WARP Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelWarpConnector = cloudflare.getZeroTrustTunnelWarpConnector({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_warp_connector = cloudflare.get_zero_trust_tunnel_warp_connector(account_id=\"699d98642c564d2e855e9661899b7252\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelWarpConnector = Cloudflare.Index.GetZeroTrustTunnelWarpConnector.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelWarpConnector(ctx, \u0026cloudflare.LookupZeroTrustTunnelWarpConnectorArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tTunnelId:  pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelWarpConnectorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelWarpConnector = CloudflareFunctions.getZeroTrustTunnelWarpConnector(GetZeroTrustTunnelWarpConnectorArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelWarpConnector:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelWarpConnector\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelWarpConnector.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelWarpConnectorFilter:getZeroTrustTunnelWarpConnectorFilter"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelWarpConnector.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "accountTag": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "connections": {
                        "deprecationMessage": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`",
                        "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustTunnelWarpConnectorConnection:getZeroTrustTunnelWarpConnectorConnection"
                        },
                        "type": "array"
                    },
                    "connsActiveAt": {
                        "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is inactive.\n",
                        "type": "string"
                    },
                    "connsInactiveAt": {
                        "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the tunnel is active.\n",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Timestamp of when the resource was created.\n",
                        "type": "string"
                    },
                    "deletedAt": {
                        "description": "Timestamp of when the resource was deleted. If \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, the resource has not been deleted.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZeroTrustTunnelWarpConnectorFilter:getZeroTrustTunnelWarpConnectorFilter"
                    },
                    "id": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "metadata": {
                        "description": "Metadata associated with the tunnel.\n",
                        "type": "string"
                    },
                    "name": {
                        "description": "A user-friendly name for a tunnel.\n",
                        "type": "string"
                    },
                    "status": {
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n",
                        "type": "string"
                    },
                    "tunType": {
                        "description": "The type of tunnel.\nAvailable values: \"cfd*tunnel\", \"warp*connector\", \"warp\", \"magic\", \u003cspan pulumi-lang-nodejs=\"\"ipSec\"\" pulumi-lang-dotnet=\"\"IpSec\"\" pulumi-lang-go=\"\"ipSec\"\" pulumi-lang-python=\"\"ip_sec\"\" pulumi-lang-yaml=\"\"ipSec\"\" pulumi-lang-java=\"\"ipSec\"\"\u003e\"ipSec\"\u003c/span\u003e, \"gre\", \"cni\".\n",
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "accountTag",
                    "connections",
                    "connsActiveAt",
                    "connsInactiveAt",
                    "createdAt",
                    "deletedAt",
                    "id",
                    "metadata",
                    "name",
                    "status",
                    "tunType"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnectorToken:getZeroTrustTunnelWarpConnectorToken": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: cloudflared Write`\n- `Cloudflare One Connectors Write`\n- `Cloudflare Tunnel Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelWarpConnectorToken = cloudflare.getZeroTrustTunnelWarpConnectorToken({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    tunnelId: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_warp_connector_token = cloudflare.get_zero_trust_tunnel_warp_connector_token(account_id=\"699d98642c564d2e855e9661899b7252\",\n    tunnel_id=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelWarpConnectorToken = Cloudflare.Index.GetZeroTrustTunnelWarpConnectorToken.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        TunnelId = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelWarpConnectorToken(ctx, \u0026cloudflare.GetZeroTrustTunnelWarpConnectorTokenArgs{\n\t\t\tAccountId: pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tTunnelId:  \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelWarpConnectorTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelWarpConnectorToken = CloudflareFunctions.getZeroTrustTunnelWarpConnectorToken(GetZeroTrustTunnelWarpConnectorTokenArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .tunnelId(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelWarpConnectorToken:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelWarpConnectorToken\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        tunnelId: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelWarpConnectorToken.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "tunnelId": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    }
                },
                "type": "object",
                "required": [
                    "tunnelId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelWarpConnectorToken.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "token": {
                        "description": "The Tunnel Token is used as a mechanism to authenticate the operation of a tunnel.\n",
                        "secret": true,
                        "type": "string"
                    },
                    "tunnelId": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "token",
                    "tunnelId",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZeroTrustTunnelWarpConnectors:getZeroTrustTunnelWarpConnectors": {
            "description": "Accepted Permissions\n\n- `Cloudflare One Connector: WARP Read`\n- `Cloudflare One Connector: WARP Write`\n- `Cloudflare One Connectors Read`\n- `Cloudflare One Connectors Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZeroTrustTunnelWarpConnectors = cloudflare.getZeroTrustTunnelWarpConnectors({\n    accountId: \"699d98642c564d2e855e9661899b7252\",\n    excludePrefix: \"vpc1-\",\n    existedAt: \"2019-10-12T07%3A20%3A50.52Z\",\n    includePrefix: \"vpc1-\",\n    isDeleted: true,\n    name: \"blog\",\n    status: \"healthy\",\n    uuid: \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    wasActiveAt: \"2009-11-10T23:00:00Z\",\n    wasInactiveAt: \"2009-11-10T23:00:00Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zero_trust_tunnel_warp_connectors = cloudflare.get_zero_trust_tunnel_warp_connectors(account_id=\"699d98642c564d2e855e9661899b7252\",\n    exclude_prefix=\"vpc1-\",\n    existed_at=\"2019-10-12T07%3A20%3A50.52Z\",\n    include_prefix=\"vpc1-\",\n    is_deleted=True,\n    name=\"blog\",\n    status=\"healthy\",\n    uuid=\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n    was_active_at=\"2009-11-10T23:00:00Z\",\n    was_inactive_at=\"2009-11-10T23:00:00Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZeroTrustTunnelWarpConnectors = Cloudflare.Index.GetZeroTrustTunnelWarpConnectors.Invoke(new()\n    {\n        AccountId = \"699d98642c564d2e855e9661899b7252\",\n        ExcludePrefix = \"vpc1-\",\n        ExistedAt = \"2019-10-12T07%3A20%3A50.52Z\",\n        IncludePrefix = \"vpc1-\",\n        IsDeleted = true,\n        Name = \"blog\",\n        Status = \"healthy\",\n        Uuid = \"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\",\n        WasActiveAt = \"2009-11-10T23:00:00Z\",\n        WasInactiveAt = \"2009-11-10T23:00:00Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZeroTrustTunnelWarpConnectors(ctx, \u0026cloudflare.LookupZeroTrustTunnelWarpConnectorsArgs{\n\t\t\tAccountId:     pulumi.StringRef(\"699d98642c564d2e855e9661899b7252\"),\n\t\t\tExcludePrefix: pulumi.StringRef(\"vpc1-\"),\n\t\t\tExistedAt:     pulumi.StringRef(\"2019-10-12T07%3A20%3A50.52Z\"),\n\t\t\tIncludePrefix: pulumi.StringRef(\"vpc1-\"),\n\t\t\tIsDeleted:     pulumi.BoolRef(true),\n\t\t\tName:          pulumi.StringRef(\"blog\"),\n\t\t\tStatus:        pulumi.StringRef(\"healthy\"),\n\t\t\tUuid:          pulumi.StringRef(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\"),\n\t\t\tWasActiveAt:   pulumi.StringRef(\"2009-11-10T23:00:00Z\"),\n\t\t\tWasInactiveAt: pulumi.StringRef(\"2009-11-10T23:00:00Z\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZeroTrustTunnelWarpConnectorsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZeroTrustTunnelWarpConnectors = CloudflareFunctions.getZeroTrustTunnelWarpConnectors(GetZeroTrustTunnelWarpConnectorsArgs.builder()\n            .accountId(\"699d98642c564d2e855e9661899b7252\")\n            .excludePrefix(\"vpc1-\")\n            .existedAt(\"2019-10-12T07%3A20%3A50.52Z\")\n            .includePrefix(\"vpc1-\")\n            .isDeleted(true)\n            .name(\"blog\")\n            .status(\"healthy\")\n            .uuid(\"f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\")\n            .wasActiveAt(\"2009-11-10T23:00:00Z\")\n            .wasInactiveAt(\"2009-11-10T23:00:00Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZeroTrustTunnelWarpConnectors:\n    fn::invoke:\n      function: cloudflare:getZeroTrustTunnelWarpConnectors\n      arguments:\n        accountId: 699d98642c564d2e855e9661899b7252\n        excludePrefix: vpc1-\n        existedAt: 2019-10-12T07%3A20%3A50.52Z\n        includePrefix: vpc1-\n        isDeleted: true\n        name: blog\n        status: healthy\n        uuid: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415\n        wasActiveAt: 2009-11-10T23:00:00Z\n        wasInactiveAt: 2009-11-10T23:00:00Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZeroTrustTunnelWarpConnectors.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Cloudflare account ID\n"
                    },
                    "excludePrefix": {
                        "type": "string"
                    },
                    "existedAt": {
                        "type": "string",
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n"
                    },
                    "includePrefix": {
                        "type": "string"
                    },
                    "isDeleted": {
                        "type": "boolean",
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted tunnels. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted tunnels. If empty, all tunnels will be included.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A user-friendly name for the tunnel.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n"
                    },
                    "uuid": {
                        "type": "string",
                        "description": "UUID of the tunnel.\n"
                    },
                    "wasActiveAt": {
                        "type": "string"
                    },
                    "wasInactiveAt": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZeroTrustTunnelWarpConnectors.\n",
                "properties": {
                    "accountId": {
                        "description": "Cloudflare account ID\n",
                        "type": "string"
                    },
                    "excludePrefix": {
                        "type": "string"
                    },
                    "existedAt": {
                        "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "includePrefix": {
                        "type": "string"
                    },
                    "isDeleted": {
                        "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, only include deleted tunnels. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, exclude deleted tunnels. If empty, all tunnels will be included.\n",
                        "type": "boolean"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "name": {
                        "description": "A user-friendly name for the tunnel.\n",
                        "type": "string"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZeroTrustTunnelWarpConnectorsResult:getZeroTrustTunnelWarpConnectorsResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "description": "The status of the tunnel. Valid values are \u003cspan pulumi-lang-nodejs=\"`inactive`\" pulumi-lang-dotnet=\"`Inactive`\" pulumi-lang-go=\"`inactive`\" pulumi-lang-python=\"`inactive`\" pulumi-lang-yaml=\"`inactive`\" pulumi-lang-java=\"`inactive`\"\u003e`inactive`\u003c/span\u003e (tunnel has never been run), \u003cspan pulumi-lang-nodejs=\"`degraded`\" pulumi-lang-dotnet=\"`Degraded`\" pulumi-lang-go=\"`degraded`\" pulumi-lang-python=\"`degraded`\" pulumi-lang-yaml=\"`degraded`\" pulumi-lang-java=\"`degraded`\"\u003e`degraded`\u003c/span\u003e (tunnel is active and able to serve traffic but in an unhealthy state), \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e (tunnel is active and able to serve traffic), or \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e (tunnel can not serve traffic as it has no connections to the Cloudflare Edge).\nAvailable values: \"inactive\", \"degraded\", \"healthy\", \"down\".\n",
                        "type": "string"
                    },
                    "uuid": {
                        "description": "UUID of the tunnel.\n",
                        "type": "string"
                    },
                    "wasActiveAt": {
                        "type": "string"
                    },
                    "wasInactiveAt": {
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZone:getZone": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n- `Zone Zone Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZone = cloudflare.getZone({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone = cloudflare.get_zone(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZone = Cloudflare.Index.GetZone.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZone(ctx, \u0026cloudflare.LookupZoneArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZone = CloudflareFunctions.getZone(GetZoneArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZone:\n    fn::invoke:\n      function: cloudflare:getZone\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZone.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZoneFilter:getZoneFilter"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZone.\n",
                "properties": {
                    "account": {
                        "$ref": "#/types/cloudflare:index/getZoneAccount:getZoneAccount"
                    },
                    "activatedOn": {
                        "type": "string"
                    },
                    "cnameSuffix": {
                        "type": "string"
                    },
                    "createdOn": {
                        "type": "string"
                    },
                    "developmentMode": {
                        "type": "number"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZoneFilter:getZoneFilter"
                    },
                    "id": {
                        "type": "string"
                    },
                    "meta": {
                        "$ref": "#/types/cloudflare:index/getZoneMeta:getZoneMeta"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "nameServers": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "originalDnshost": {
                        "type": "string"
                    },
                    "originalNameServers": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "originalRegistrar": {
                        "type": "string"
                    },
                    "owner": {
                        "$ref": "#/types/cloudflare:index/getZoneOwner:getZoneOwner"
                    },
                    "paused": {
                        "type": "boolean"
                    },
                    "permissions": {
                        "deprecationMessage": "This has been replaced by Account memberships.",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "plan": {
                        "$ref": "#/types/cloudflare:index/getZonePlan:getZonePlan",
                        "deprecationMessage": "Please use the `/zones/{zone_id}/subscription` API\nto update a zone's plan. Changing this value will create/cancel\nassociated subscriptions. To view available plans for this zone,\nsee [Zone Plans](https://developers.cloudflare.com/api/resources/zones/subresources/plans/)."
                    },
                    "status": {
                        "type": "string"
                    },
                    "tenant": {
                        "$ref": "#/types/cloudflare:index/getZoneTenant:getZoneTenant"
                    },
                    "tenantUnit": {
                        "$ref": "#/types/cloudflare:index/getZoneTenantUnit:getZoneTenantUnit"
                    },
                    "type": {
                        "type": "string"
                    },
                    "vanityNameServers": {
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "verificationKey": {
                        "type": "string"
                    },
                    "zoneId": {
                        "type": "string"
                    }
                },
                "required": [
                    "account",
                    "activatedOn",
                    "cnameSuffix",
                    "createdOn",
                    "developmentMode",
                    "id",
                    "meta",
                    "modifiedOn",
                    "name",
                    "nameServers",
                    "originalDnshost",
                    "originalNameServers",
                    "originalRegistrar",
                    "owner",
                    "paused",
                    "permissions",
                    "plan",
                    "status",
                    "tenant",
                    "tenantUnit",
                    "type",
                    "vanityNameServers",
                    "verificationKey",
                    "zoneId"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneCacheReserve:getZoneCacheReserve": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneCacheReserve = cloudflare.getZoneCacheReserve({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_cache_reserve = cloudflare.get_zone_cache_reserve(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneCacheReserve = Cloudflare.Index.GetZoneCacheReserve.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneCacheReserve(ctx, \u0026cloudflare.LookupZoneCacheReserveArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneCacheReserveArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneCacheReserve = CloudflareFunctions.getZoneCacheReserve(GetZoneCacheReserveArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneCacheReserve:\n    fn::invoke:\n      function: cloudflare:getZoneCacheReserve\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneCacheReserve.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneCacheReserve.\n",
                "properties": {
                    "editable": {
                        "description": "Whether the setting is editable.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time this setting was modified.\n",
                        "type": "string"
                    },
                    "value": {
                        "description": "Value of the Cache Reserve zone setting.\nAvailable values: \"on\", \"off\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "id",
                    "modifiedOn",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneCacheVariants:getZoneCacheVariants": {
            "description": "Accepted Permissions\n\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneCacheVariants = cloudflare.getZoneCacheVariants({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_cache_variants = cloudflare.get_zone_cache_variants(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneCacheVariants = Cloudflare.Index.GetZoneCacheVariants.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneCacheVariants(ctx, \u0026cloudflare.LookupZoneCacheVariantsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneCacheVariantsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneCacheVariants = CloudflareFunctions.getZoneCacheVariants(GetZoneCacheVariantsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneCacheVariants:\n    fn::invoke:\n      function: cloudflare:getZoneCacheVariants\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneCacheVariants.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneCacheVariants.\n",
                "properties": {
                    "editable": {
                        "description": "Whether the setting is editable.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "Last time this setting was modified.\n",
                        "type": "string"
                    },
                    "value": {
                        "$ref": "#/types/cloudflare:index/getZoneCacheVariantsValue:getZoneCacheVariantsValue",
                        "description": "Value of the zone setting.\n"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "id",
                    "modifiedOn",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneDnsSettings:getZoneDnsSettings": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n- `Zone DNS Settings Read`\n- `Zone DNS Settings Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneDnsSettings = cloudflare.getZoneDnsSettings({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_dns_settings = cloudflare.get_zone_dns_settings(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneDnsSettings = Cloudflare.Index.GetZoneDnsSettings.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneDnsSettings(ctx, \u0026cloudflare.LookupZoneDnsSettingsArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneDnsSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneDnsSettings = CloudflareFunctions.getZoneDnsSettings(GetZoneDnsSettingsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneDnsSettings:\n    fn::invoke:\n      function: cloudflare:getZoneDnsSettings\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneDnsSettings.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneDnsSettings.\n",
                "properties": {
                    "flattenAllCnames": {
                        "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.\n",
                        "type": "boolean"
                    },
                    "foundationDns": {
                        "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "internalDns": {
                        "$ref": "#/types/cloudflare:index/getZoneDnsSettingsInternalDns:getZoneDnsSettingsInternalDns",
                        "description": "Settings for this internal zone.\n"
                    },
                    "multiProvider": {
                        "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.\n",
                        "type": "boolean"
                    },
                    "nameservers": {
                        "$ref": "#/types/cloudflare:index/getZoneDnsSettingsNameservers:getZoneDnsSettingsNameservers",
                        "description": "Settings determining the nameservers through which the zone should be available.\n"
                    },
                    "nsTtl": {
                        "description": "The time to live (TTL) of the zone's nameserver (NS) records.\n",
                        "type": "number"
                    },
                    "secondaryOverrides": {
                        "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.\n",
                        "type": "boolean"
                    },
                    "soa": {
                        "$ref": "#/types/cloudflare:index/getZoneDnsSettingsSoa:getZoneDnsSettingsSoa",
                        "description": "Components of the zone's SOA record.\n"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "zoneMode": {
                        "description": "Whether the zone mode is a regular or CDN/DNS only zone.\nAvailable values: \"standard\", \"cdn*only\", \"dns*only\".\n",
                        "type": "string"
                    }
                },
                "required": [
                    "flattenAllCnames",
                    "foundationDns",
                    "internalDns",
                    "multiProvider",
                    "nameservers",
                    "nsTtl",
                    "secondaryOverrides",
                    "soa",
                    "zoneMode",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneDnssec:getZoneDnssec": {
            "description": "Accepted Permissions\n\n- `DNS Read`\n- `DNS Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneDnssec = cloudflare.getZoneDnssec({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_dnssec = cloudflare.get_zone_dnssec(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneDnssec = Cloudflare.Index.GetZoneDnssec.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneDnssec(ctx, \u0026cloudflare.LookupZoneDnssecArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneDnssecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneDnssec = CloudflareFunctions.getZoneDnssec(GetZoneDnssecArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneDnssec:\n    fn::invoke:\n      function: cloudflare:getZoneDnssec\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneDnssec.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneDnssec.\n",
                "properties": {
                    "algorithm": {
                        "description": "Algorithm key code.\n",
                        "type": "string"
                    },
                    "digest": {
                        "description": "Digest hash.\n",
                        "type": "string"
                    },
                    "digestAlgorithm": {
                        "description": "Type of digest algorithm.\n",
                        "type": "string"
                    },
                    "digestType": {
                        "description": "Coded type for digest algorithm.\n",
                        "type": "string"
                    },
                    "dnssecMultiSigner": {
                        "description": "If true, multi-signer DNSSEC is enabled on the zone, allowing multiple\nproviders to serve a DNSSEC-signed zone at the same time.\nThis is required for DNSKEY records (except those automatically\ngenerated by Cloudflare) to be added to the zone.\n",
                        "type": "boolean"
                    },
                    "dnssecPresigned": {
                        "type": "boolean"
                    },
                    "dnssecUseNsec3": {
                        "type": "boolean"
                    },
                    "ds": {
                        "type": "string"
                    },
                    "flags": {
                        "type": "number"
                    },
                    "id": {
                        "type": "string"
                    },
                    "keyTag": {
                        "type": "number"
                    },
                    "keyType": {
                        "type": "string"
                    },
                    "modifiedOn": {
                        "type": "string"
                    },
                    "publicKey": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "algorithm",
                    "digest",
                    "digestAlgorithm",
                    "digestType",
                    "dnssecMultiSigner",
                    "dnssecPresigned",
                    "dnssecUseNsec3",
                    "ds",
                    "flags",
                    "id",
                    "keyTag",
                    "keyType",
                    "modifiedOn",
                    "publicKey",
                    "status"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneHold:getZoneHold": {
            "description": "Accepted Permissions\n\n- `Access: Apps and Policies Read`\n- `Access: Apps and Policies Revoke`\n- `Access: Apps and Policies Write`\n- `Access: Mutual TLS Certificates Write`\n- `Access: Organizations, Identity Providers, and Groups Write`\n- `Analytics Read`\n- `Apps Write`\n- `Cache Purge`\n- `DNS Read`\n- `DNS Write`\n- `Firewall Services Read`\n- `Firewall Services Write`\n- `Load Balancers Read`\n- `Load Balancers Write`\n- `Logs Read`\n- `Logs Write`\n- `Page Rules Read`\n- `Page Rules Write`\n- `SSL and Certificates Read`\n- `SSL and Certificates Write`\n- `Stream Read`\n- `Stream Write`\n- `Trust and Safety Read`\n- `Trust and Safety Write`\n- `Workers Routes Read`\n- `Workers Routes Write`\n- `Workers Scripts Read`\n- `Workers Scripts Write`\n- `Zaraz Admin`\n- `Zaraz Edit`\n- `Zaraz Read`\n- `Zero Trust: PII Read`\n- `Zone Read`\n- `Zone Settings Read`\n- `Zone Settings Write`\n- `Zone Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneHold = cloudflare.getZoneHold({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_hold = cloudflare.get_zone_hold(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneHold = Cloudflare.Index.GetZoneHold.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneHold(ctx, \u0026cloudflare.LookupZoneHoldArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneHoldArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneHold = CloudflareFunctions.getZoneHold(GetZoneHoldArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneHold:\n    fn::invoke:\n      function: cloudflare:getZoneHold\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneHold.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneHold.\n",
                "properties": {
                    "hold": {
                        "type": "boolean"
                    },
                    "holdAfter": {
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier.\n",
                        "type": "string"
                    },
                    "includeSubdomains": {
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "hold",
                    "holdAfter",
                    "id",
                    "includeSubdomains"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneLockdown:getZoneLockdown": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneLockdown = cloudflare.getZoneLockdown({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    lockDownsId: \"372e67954025e0ba6aaa6d586b9e0b59\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_lockdown = cloudflare.get_zone_lockdown(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    lock_downs_id=\"372e67954025e0ba6aaa6d586b9e0b59\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneLockdown = Cloudflare.Index.GetZoneLockdown.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        LockDownsId = \"372e67954025e0ba6aaa6d586b9e0b59\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneLockdown(ctx, \u0026cloudflare.LookupZoneLockdownArgs{\n\t\t\tZoneId:      pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tLockDownsId: pulumi.StringRef(\"372e67954025e0ba6aaa6d586b9e0b59\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneLockdownArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneLockdown = CloudflareFunctions.getZoneLockdown(GetZoneLockdownArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .lockDownsId(\"372e67954025e0ba6aaa6d586b9e0b59\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneLockdown:\n    fn::invoke:\n      function: cloudflare:getZoneLockdown\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        lockDownsId: 372e67954025e0ba6aaa6d586b9e0b59\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneLockdown.\n",
                "properties": {
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZoneLockdownFilter:getZoneLockdownFilter"
                    },
                    "lockDownsId": {
                        "type": "string",
                        "description": "The unique identifier of the Zone Lockdown rule.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneLockdown.\n",
                "properties": {
                    "configurations": {
                        "description": "A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ipRange`\" pulumi-lang-dotnet=\"`IpRange`\" pulumi-lang-go=\"`ipRange`\" pulumi-lang-python=\"`ip_range`\" pulumi-lang-yaml=\"`ipRange`\" pulumi-lang-java=\"`ipRange`\"\u003e`ipRange`\u003c/span\u003e configurations.\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZoneLockdownConfiguration:getZoneLockdownConfiguration"
                        },
                        "type": "array"
                    },
                    "createdOn": {
                        "description": "The timestamp of when the rule was created.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "An informative summary of the rule.\n",
                        "type": "string"
                    },
                    "filter": {
                        "$ref": "#/types/cloudflare:index/getZoneLockdownFilter:getZoneLockdownFilter"
                    },
                    "id": {
                        "description": "The unique identifier of the Zone Lockdown rule.\n",
                        "type": "string"
                    },
                    "lockDownsId": {
                        "description": "The unique identifier of the Zone Lockdown rule.\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "The timestamp of when the rule was last modified.\n",
                        "type": "string"
                    },
                    "paused": {
                        "description": "When true, indicates that the rule is currently paused.\n",
                        "type": "boolean"
                    },
                    "urls": {
                        "description": "The URLs to include in the rule definition. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.\n",
                        "items": {
                            "type": "string"
                        },
                        "type": "array"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "configurations",
                    "createdOn",
                    "description",
                    "id",
                    "modifiedOn",
                    "paused",
                    "urls"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneLockdowns:getZoneLockdowns": {
            "description": "Accepted Permissions\n\n- `Firewall Services Read`\n- `Firewall Services Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneLockdowns = cloudflare.getZoneLockdowns({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    createdOn: \"2014-01-01T05:20:00.12345Z\",\n    description: \"endpoints\",\n    descriptionSearch: \"endpoints\",\n    ip: \"1.2.3.4\",\n    ipRangeSearch: \"1.2.3.0/16\",\n    ipSearch: \"1.2.3.4\",\n    modifiedOn: \"2014-01-01T05:20:00.12345Z\",\n    priority: 5,\n    uriSearch: \"/some/path\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_lockdowns = cloudflare.get_zone_lockdowns(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    created_on=\"2014-01-01T05:20:00.12345Z\",\n    description=\"endpoints\",\n    description_search=\"endpoints\",\n    ip=\"1.2.3.4\",\n    ip_range_search=\"1.2.3.0/16\",\n    ip_search=\"1.2.3.4\",\n    modified_on=\"2014-01-01T05:20:00.12345Z\",\n    priority=5,\n    uri_search=\"/some/path\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneLockdowns = Cloudflare.Index.GetZoneLockdowns.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        CreatedOn = \"2014-01-01T05:20:00.12345Z\",\n        Description = \"endpoints\",\n        DescriptionSearch = \"endpoints\",\n        Ip = \"1.2.3.4\",\n        IpRangeSearch = \"1.2.3.0/16\",\n        IpSearch = \"1.2.3.4\",\n        ModifiedOn = \"2014-01-01T05:20:00.12345Z\",\n        Priority = 5,\n        UriSearch = \"/some/path\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneLockdowns(ctx, \u0026cloudflare.LookupZoneLockdownsArgs{\n\t\t\tZoneId:            pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tCreatedOn:         pulumi.StringRef(\"2014-01-01T05:20:00.12345Z\"),\n\t\t\tDescription:       pulumi.StringRef(\"endpoints\"),\n\t\t\tDescriptionSearch: pulumi.StringRef(\"endpoints\"),\n\t\t\tIp:                pulumi.StringRef(\"1.2.3.4\"),\n\t\t\tIpRangeSearch:     pulumi.StringRef(\"1.2.3.0/16\"),\n\t\t\tIpSearch:          pulumi.StringRef(\"1.2.3.4\"),\n\t\t\tModifiedOn:        pulumi.StringRef(\"2014-01-01T05:20:00.12345Z\"),\n\t\t\tPriority:          pulumi.Float64Ref(5),\n\t\t\tUriSearch:         pulumi.StringRef(\"/some/path\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneLockdownsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneLockdowns = CloudflareFunctions.getZoneLockdowns(GetZoneLockdownsArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .createdOn(\"2014-01-01T05:20:00.12345Z\")\n            .description(\"endpoints\")\n            .descriptionSearch(\"endpoints\")\n            .ip(\"1.2.3.4\")\n            .ipRangeSearch(\"1.2.3.0/16\")\n            .ipSearch(\"1.2.3.4\")\n            .modifiedOn(\"2014-01-01T05:20:00.12345Z\")\n            .priority(5)\n            .uriSearch(\"/some/path\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneLockdowns:\n    fn::invoke:\n      function: cloudflare:getZoneLockdowns\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        createdOn: 2014-01-01T05:20:00.12345Z\n        description: endpoints\n        descriptionSearch: endpoints\n        ip: 1.2.3.4\n        ipRangeSearch: 1.2.3.0/16\n        ipSearch: 1.2.3.4\n        modifiedOn: 2014-01-01T05:20:00.12345Z\n        priority: 5\n        uriSearch: /some/path\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneLockdowns.\n",
                "properties": {
                    "createdOn": {
                        "type": "string",
                        "description": "The timestamp of when the rule was created.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A string to search for in the description of existing rules.\n"
                    },
                    "descriptionSearch": {
                        "type": "string",
                        "description": "A string to search for in the description of existing rules.\n"
                    },
                    "ip": {
                        "type": "string",
                        "description": "A single IP address to search for in existing rules.\n"
                    },
                    "ipRangeSearch": {
                        "type": "string",
                        "description": "A single IP address range to search for in existing rules.\n"
                    },
                    "ipSearch": {
                        "type": "string",
                        "description": "A single IP address to search for in existing rules.\n"
                    },
                    "maxItems": {
                        "type": "integer",
                        "description": "Max items to fetch, default: 1000\n"
                    },
                    "modifiedOn": {
                        "type": "string",
                        "description": "The timestamp of when the rule was last modified.\n"
                    },
                    "priority": {
                        "type": "number",
                        "description": "The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.\n"
                    },
                    "uriSearch": {
                        "type": "string",
                        "description": "A single URI to search for in the list of URLs of existing rules.\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Defines an identifier.\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneLockdowns.\n",
                "properties": {
                    "createdOn": {
                        "description": "The timestamp of when the rule was created.\n",
                        "type": "string"
                    },
                    "description": {
                        "description": "A string to search for in the description of existing rules.\n",
                        "type": "string"
                    },
                    "descriptionSearch": {
                        "description": "A string to search for in the description of existing rules.\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "ip": {
                        "description": "A single IP address to search for in existing rules.\n",
                        "type": "string"
                    },
                    "ipRangeSearch": {
                        "description": "A single IP address range to search for in existing rules.\n",
                        "type": "string"
                    },
                    "ipSearch": {
                        "description": "A single IP address to search for in existing rules.\n",
                        "type": "string"
                    },
                    "maxItems": {
                        "description": "Max items to fetch, default: 1000\n",
                        "type": "integer"
                    },
                    "modifiedOn": {
                        "description": "The timestamp of when the rule was last modified.\n",
                        "type": "string"
                    },
                    "priority": {
                        "description": "The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.\n",
                        "type": "number"
                    },
                    "results": {
                        "description": "The items returned by the data source\n",
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZoneLockdownsResult:getZoneLockdownsResult"
                        },
                        "type": "array"
                    },
                    "uriSearch": {
                        "description": "A single URI to search for in the list of URLs of existing rules.\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Defines an identifier.\n",
                        "type": "string"
                    }
                },
                "required": [
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneSetting:getZoneSetting": {
            "description": "Accepted Permissions\n\n- `Zone Settings Read`\n- `Zone Settings Write`\n\n## Available Setting IDs\n\n\u003c!-- BEGIN_ZONE_SETTING_IDS --\u003e\n\u003c!-- This table is auto-generated by scripts/generate-zone-setting-ids from the OpenAPI spec. Do not edit manually. --\u003e\n\nThe following table lists all valid \u003cspan pulumi-lang-nodejs=\"`settingId`\" pulumi-lang-dotnet=\"`SettingId`\" pulumi-lang-go=\"`settingId`\" pulumi-lang-python=\"`setting_id`\" pulumi-lang-yaml=\"`settingId`\" pulumi-lang-java=\"`settingId`\"\u003e`settingId`\u003c/span\u003e values. Some settings may require a specific Cloudflare plan level. For more details, see the [API documentation](https://developers.cloudflare.com/api/resources/zones/subresources/settings/methods/list/).\n\n| Setting ID | Value Type | Description |\n|---|---|---|\n| \u003cspan pulumi-lang-nodejs=\"`0rtt`\" pulumi-lang-dotnet=\"`0rtt`\" pulumi-lang-go=\"`0rtt`\" pulumi-lang-python=\"`0rtt`\" pulumi-lang-yaml=\"`0rtt`\" pulumi-lang-java=\"`0rtt`\"\u003e`0rtt`\u003c/span\u003e | `\"on\"` / `\"off\"` | 0-RTT session resumption enabled for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`advancedDdos`\" pulumi-lang-dotnet=\"`AdvancedDdos`\" pulumi-lang-go=\"`advancedDdos`\" pulumi-lang-python=\"`advanced_ddos`\" pulumi-lang-yaml=\"`advancedDdos`\" pulumi-lang-java=\"`advancedDdos`\"\u003e`advancedDdos`\u003c/span\u003e | `\"on\"` / `\"off\"` | Advanced protection from Distributed Denial of Service (DDoS) attacks on your... |\n| \u003cspan pulumi-lang-nodejs=\"`aegis`\" pulumi-lang-dotnet=\"`Aegis`\" pulumi-lang-go=\"`aegis`\" pulumi-lang-python=\"`aegis`\" pulumi-lang-yaml=\"`aegis`\" pulumi-lang-java=\"`aegis`\"\u003e`aegis`\u003c/span\u003e | Object | Aegis provides dedicated egress IPs (from Cloudflare to your origin) for your... |\n| \u003cspan pulumi-lang-nodejs=\"`alwaysOnline`\" pulumi-lang-dotnet=\"`AlwaysOnline`\" pulumi-lang-go=\"`alwaysOnline`\" pulumi-lang-python=\"`always_online`\" pulumi-lang-yaml=\"`alwaysOnline`\" pulumi-lang-java=\"`alwaysOnline`\"\u003e`alwaysOnline`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, Cloudflare serves limited copies of web pages available from th... |\n| \u003cspan pulumi-lang-nodejs=\"`alwaysUseHttps`\" pulumi-lang-dotnet=\"`AlwaysUseHttps`\" pulumi-lang-go=\"`alwaysUseHttps`\" pulumi-lang-python=\"`always_use_https`\" pulumi-lang-yaml=\"`alwaysUseHttps`\" pulumi-lang-java=\"`alwaysUseHttps`\"\u003e`alwaysUseHttps`\u003c/span\u003e | `\"on\"` / `\"off\"` | Reply to all requests for URLs that use \"http\" with a 301 redirect to the equ... |\n| \u003cspan pulumi-lang-nodejs=\"`automaticHttpsRewrites`\" pulumi-lang-dotnet=\"`AutomaticHttpsRewrites`\" pulumi-lang-go=\"`automaticHttpsRewrites`\" pulumi-lang-python=\"`automatic_https_rewrites`\" pulumi-lang-yaml=\"`automaticHttpsRewrites`\" pulumi-lang-java=\"`automaticHttpsRewrites`\"\u003e`automaticHttpsRewrites`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enable the Automatic HTTPS Rewrites feature for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`automaticPlatformOptimization`\" pulumi-lang-dotnet=\"`AutomaticPlatformOptimization`\" pulumi-lang-go=\"`automaticPlatformOptimization`\" pulumi-lang-python=\"`automatic_platform_optimization`\" pulumi-lang-yaml=\"`automaticPlatformOptimization`\" pulumi-lang-java=\"`automaticPlatformOptimization`\"\u003e`automaticPlatformOptimization`\u003c/span\u003e | Object | [Automatic Platform Optimization for WordPress](https://developers.cloudflare... |\n| \u003cspan pulumi-lang-nodejs=\"`brotli`\" pulumi-lang-dotnet=\"`Brotli`\" pulumi-lang-go=\"`brotli`\" pulumi-lang-python=\"`brotli`\" pulumi-lang-yaml=\"`brotli`\" pulumi-lang-java=\"`brotli`\"\u003e`brotli`\u003c/span\u003e | `\"on\"` / `\"off\"` | When the client requesting an asset supports the Brotli compression algorithm... |\n| \u003cspan pulumi-lang-nodejs=\"`browserCacheTtl`\" pulumi-lang-dotnet=\"`BrowserCacheTtl`\" pulumi-lang-go=\"`browserCacheTtl`\" pulumi-lang-python=\"`browser_cache_ttl`\" pulumi-lang-yaml=\"`browserCacheTtl`\" pulumi-lang-java=\"`browserCacheTtl`\"\u003e`browserCacheTtl`\u003c/span\u003e | Number | Browser Cache TTL (in seconds) specifies how long Cloudflare-cached resources... |\n| \u003cspan pulumi-lang-nodejs=\"`browserCheck`\" pulumi-lang-dotnet=\"`BrowserCheck`\" pulumi-lang-go=\"`browserCheck`\" pulumi-lang-python=\"`browser_check`\" pulumi-lang-yaml=\"`browserCheck`\" pulumi-lang-java=\"`browserCheck`\"\u003e`browserCheck`\u003c/span\u003e | `\"on\"` / `\"off\"` | Browser Integrity Check is similar to Bad Behavior and looks for common HTTP ... |\n| \u003cspan pulumi-lang-nodejs=\"`cacheLevel`\" pulumi-lang-dotnet=\"`CacheLevel`\" pulumi-lang-go=\"`cacheLevel`\" pulumi-lang-python=\"`cache_level`\" pulumi-lang-yaml=\"`cacheLevel`\" pulumi-lang-java=\"`cacheLevel`\"\u003e`cacheLevel`\u003c/span\u003e | `\"aggressive\"`, `\"basic\"`, `\"simplified\"` | Cache Level functions based off the setting level. The basic setting will cac... |\n| \u003cspan pulumi-lang-nodejs=\"`challengeTtl`\" pulumi-lang-dotnet=\"`ChallengeTtl`\" pulumi-lang-go=\"`challengeTtl`\" pulumi-lang-python=\"`challenge_ttl`\" pulumi-lang-yaml=\"`challengeTtl`\" pulumi-lang-java=\"`challengeTtl`\"\u003e`challengeTtl`\u003c/span\u003e | Number (14 values) | Specify how long a visitor is allowed access to your site after successfully ... |\n| \u003cspan pulumi-lang-nodejs=\"`ciphers`\" pulumi-lang-dotnet=\"`Ciphers`\" pulumi-lang-go=\"`ciphers`\" pulumi-lang-python=\"`ciphers`\" pulumi-lang-yaml=\"`ciphers`\" pulumi-lang-java=\"`ciphers`\"\u003e`ciphers`\u003c/span\u003e | Array of string | An allowlist of ciphers for TLS termination. These ciphers must be in the Bor... |\n| \u003cspan pulumi-lang-nodejs=\"`cnameFlattening`\" pulumi-lang-dotnet=\"`CnameFlattening`\" pulumi-lang-go=\"`cnameFlattening`\" pulumi-lang-python=\"`cname_flattening`\" pulumi-lang-yaml=\"`cnameFlattening`\" pulumi-lang-java=\"`cnameFlattening`\"\u003e`cnameFlattening`\u003c/span\u003e | `\u003cspan pulumi-lang-nodejs=\"\"flattenAtRoot\"\" pulumi-lang-dotnet=\"\"FlattenAtRoot\"\" pulumi-lang-go=\"\"flattenAtRoot\"\" pulumi-lang-python=\"\"flatten_at_root\"\" pulumi-lang-yaml=\"\"flattenAtRoot\"\" pulumi-lang-java=\"\"flattenAtRoot\"\"\u003e\"flattenAtRoot\"\u003c/span\u003e`, `\u003cspan pulumi-lang-nodejs=\"\"flattenAll\"\" pulumi-lang-dotnet=\"\"FlattenAll\"\" pulumi-lang-go=\"\"flattenAll\"\" pulumi-lang-python=\"\"flatten_all\"\" pulumi-lang-yaml=\"\"flattenAll\"\" pulumi-lang-java=\"\"flattenAll\"\"\u003e\"flattenAll\"\u003c/span\u003e` | Whether or not cname flattening is on. |\n| \u003cspan pulumi-lang-nodejs=\"`contentConverter`\" pulumi-lang-dotnet=\"`ContentConverter`\" pulumi-lang-go=\"`contentConverter`\" pulumi-lang-python=\"`content_converter`\" pulumi-lang-yaml=\"`contentConverter`\" pulumi-lang-java=\"`contentConverter`\"\u003e`contentConverter`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled and the client sends an Accept header requesting text/markdown, ... |\n| \u003cspan pulumi-lang-nodejs=\"`developmentMode`\" pulumi-lang-dotnet=\"`DevelopmentMode`\" pulumi-lang-go=\"`developmentMode`\" pulumi-lang-python=\"`development_mode`\" pulumi-lang-yaml=\"`developmentMode`\" pulumi-lang-java=\"`developmentMode`\"\u003e`developmentMode`\u003c/span\u003e | `\"on\"` / `\"off\"` | Development Mode temporarily allows you to enter development mode for your we... |\n| \u003cspan pulumi-lang-nodejs=\"`earlyHints`\" pulumi-lang-dotnet=\"`EarlyHints`\" pulumi-lang-go=\"`earlyHints`\" pulumi-lang-python=\"`early_hints`\" pulumi-lang-yaml=\"`earlyHints`\" pulumi-lang-java=\"`earlyHints`\"\u003e`earlyHints`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, Cloudflare will attempt to speed up overall page loads by servi... |\n| \u003cspan pulumi-lang-nodejs=\"`edgeCacheTtl`\" pulumi-lang-dotnet=\"`EdgeCacheTtl`\" pulumi-lang-go=\"`edgeCacheTtl`\" pulumi-lang-python=\"`edge_cache_ttl`\" pulumi-lang-yaml=\"`edgeCacheTtl`\" pulumi-lang-java=\"`edgeCacheTtl`\"\u003e`edgeCacheTtl`\u003c/span\u003e | Number (21 values) | Time (in seconds) that a resource will be ensured to remain on Cloudflare's c... |\n| \u003cspan pulumi-lang-nodejs=\"`emailObfuscation`\" pulumi-lang-dotnet=\"`EmailObfuscation`\" pulumi-lang-go=\"`emailObfuscation`\" pulumi-lang-python=\"`email_obfuscation`\" pulumi-lang-yaml=\"`emailObfuscation`\" pulumi-lang-java=\"`emailObfuscation`\"\u003e`emailObfuscation`\u003c/span\u003e | `\"on\"` / `\"off\"` | Encrypt email adresses on your web page from bots, while keeping them visible... |\n| \u003cspan pulumi-lang-nodejs=\"`h2Prioritization`\" pulumi-lang-dotnet=\"`H2Prioritization`\" pulumi-lang-go=\"`h2Prioritization`\" pulumi-lang-python=\"`h2_prioritization`\" pulumi-lang-yaml=\"`h2Prioritization`\" pulumi-lang-java=\"`h2Prioritization`\"\u003e`h2Prioritization`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"custom\"` | HTTP/2 Edge Prioritization optimises the delivery of resources served through... |\n| \u003cspan pulumi-lang-nodejs=\"`hotlinkProtection`\" pulumi-lang-dotnet=\"`HotlinkProtection`\" pulumi-lang-go=\"`hotlinkProtection`\" pulumi-lang-python=\"`hotlink_protection`\" pulumi-lang-yaml=\"`hotlinkProtection`\" pulumi-lang-java=\"`hotlinkProtection`\"\u003e`hotlinkProtection`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, the Hotlink Protection option ensures that other sites cannot s... |\n| \u003cspan pulumi-lang-nodejs=\"`http2`\" pulumi-lang-dotnet=\"`Http2`\" pulumi-lang-go=\"`http2`\" pulumi-lang-python=\"`http2`\" pulumi-lang-yaml=\"`http2`\" pulumi-lang-java=\"`http2`\"\u003e`http2`\u003c/span\u003e | `\"on\"` / `\"off\"` | HTTP2 enabled for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`http3`\" pulumi-lang-dotnet=\"`Http3`\" pulumi-lang-go=\"`http3`\" pulumi-lang-python=\"`http3`\" pulumi-lang-yaml=\"`http3`\" pulumi-lang-java=\"`http3`\"\u003e`http3`\u003c/span\u003e | `\"on\"` / `\"off\"` | HTTP3 enabled for this zone. |\n| \u003cspan pulumi-lang-nodejs=\"`imageResizing`\" pulumi-lang-dotnet=\"`ImageResizing`\" pulumi-lang-go=\"`imageResizing`\" pulumi-lang-python=\"`image_resizing`\" pulumi-lang-yaml=\"`imageResizing`\" pulumi-lang-java=\"`imageResizing`\"\u003e`imageResizing`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"open\"` | Image Transformations provides on-demand resizing, conversion and optimizatio... |\n| \u003cspan pulumi-lang-nodejs=\"`ipGeolocation`\" pulumi-lang-dotnet=\"`IpGeolocation`\" pulumi-lang-go=\"`ipGeolocation`\" pulumi-lang-python=\"`ip_geolocation`\" pulumi-lang-yaml=\"`ipGeolocation`\" pulumi-lang-java=\"`ipGeolocation`\"\u003e`ipGeolocation`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enable IP Geolocation to have Cloudflare geolocate visitors to your website a... |\n| \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enable IPv6 on all subdomains that are Cloudflare enabled.  (https://support.... |\n| \u003cspan pulumi-lang-nodejs=\"`maxUpload`\" pulumi-lang-dotnet=\"`MaxUpload`\" pulumi-lang-go=\"`maxUpload`\" pulumi-lang-python=\"`max_upload`\" pulumi-lang-yaml=\"`maxUpload`\" pulumi-lang-java=\"`maxUpload`\"\u003e`maxUpload`\u003c/span\u003e | Number (18 values) | Maximum size of an allowable upload. |\n| \u003cspan pulumi-lang-nodejs=\"`minTlsVersion`\" pulumi-lang-dotnet=\"`MinTlsVersion`\" pulumi-lang-go=\"`minTlsVersion`\" pulumi-lang-python=\"`min_tls_version`\" pulumi-lang-yaml=\"`minTlsVersion`\" pulumi-lang-java=\"`minTlsVersion`\"\u003e`minTlsVersion`\u003c/span\u003e | `\"1.0\"`, `\"1.1\"`, `\"1.2\"`, `\"1.3\"` | Only accepts HTTPS requests that use at least the TLS protocol version specif... |\n| \u003cspan pulumi-lang-nodejs=\"`mirage`\" pulumi-lang-dotnet=\"`Mirage`\" pulumi-lang-go=\"`mirage`\" pulumi-lang-python=\"`mirage`\" pulumi-lang-yaml=\"`mirage`\" pulumi-lang-java=\"`mirage`\"\u003e`mirage`\u003c/span\u003e | `\"on\"` / `\"off\"` | Automatically optimize image loading for website visitors on mobile devices. ... |\n| \u003cspan pulumi-lang-nodejs=\"`nel`\" pulumi-lang-dotnet=\"`Nel`\" pulumi-lang-go=\"`nel`\" pulumi-lang-python=\"`nel`\" pulumi-lang-yaml=\"`nel`\" pulumi-lang-java=\"`nel`\"\u003e`nel`\u003c/span\u003e | Object | Enable Network Error Logging reporting on your zone. (Beta) |\n| \u003cspan pulumi-lang-nodejs=\"`opportunisticEncryption`\" pulumi-lang-dotnet=\"`OpportunisticEncryption`\" pulumi-lang-go=\"`opportunisticEncryption`\" pulumi-lang-python=\"`opportunistic_encryption`\" pulumi-lang-yaml=\"`opportunisticEncryption`\" pulumi-lang-java=\"`opportunisticEncryption`\"\u003e`opportunisticEncryption`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enables the Opportunistic Encryption feature for a zone. |\n| \u003cspan pulumi-lang-nodejs=\"`opportunisticOnion`\" pulumi-lang-dotnet=\"`OpportunisticOnion`\" pulumi-lang-go=\"`opportunisticOnion`\" pulumi-lang-python=\"`opportunistic_onion`\" pulumi-lang-yaml=\"`opportunisticOnion`\" pulumi-lang-java=\"`opportunisticOnion`\"\u003e`opportunisticOnion`\u003c/span\u003e | `\"on\"` / `\"off\"` | Add an Alt-Svc header to all legitimate requests from Tor, allowing the conne... |\n| \u003cspan pulumi-lang-nodejs=\"`orangeToOrange`\" pulumi-lang-dotnet=\"`OrangeToOrange`\" pulumi-lang-go=\"`orangeToOrange`\" pulumi-lang-python=\"`orange_to_orange`\" pulumi-lang-yaml=\"`orangeToOrange`\" pulumi-lang-java=\"`orangeToOrange`\"\u003e`orangeToOrange`\u003c/span\u003e | `\"on\"` / `\"off\"` | Orange to Orange (O2O) allows zones on Cloudflare to CNAME to other zones als... |\n| \u003cspan pulumi-lang-nodejs=\"`originErrorPagePassThru`\" pulumi-lang-dotnet=\"`OriginErrorPagePassThru`\" pulumi-lang-go=\"`originErrorPagePassThru`\" pulumi-lang-python=\"`origin_error_page_pass_thru`\" pulumi-lang-yaml=\"`originErrorPagePassThru`\" pulumi-lang-java=\"`originErrorPagePassThru`\"\u003e`originErrorPagePassThru`\u003c/span\u003e | `\"on\"` / `\"off\"` | Cloudflare will proxy customer error pages on any 502,504 errors on origin se... |\n| \u003cspan pulumi-lang-nodejs=\"`originH2MaxStreams`\" pulumi-lang-dotnet=\"`OriginH2MaxStreams`\" pulumi-lang-go=\"`originH2MaxStreams`\" pulumi-lang-python=\"`origin_h2_max_streams`\" pulumi-lang-yaml=\"`originH2MaxStreams`\" pulumi-lang-java=\"`originH2MaxStreams`\"\u003e`originH2MaxStreams`\u003c/span\u003e | Number | Origin H2 Max Streams configures the max number of concurrent requests that C... |\n| \u003cspan pulumi-lang-nodejs=\"`originMaxHttpVersion`\" pulumi-lang-dotnet=\"`OriginMaxHttpVersion`\" pulumi-lang-go=\"`originMaxHttpVersion`\" pulumi-lang-python=\"`origin_max_http_version`\" pulumi-lang-yaml=\"`originMaxHttpVersion`\" pulumi-lang-java=\"`originMaxHttpVersion`\"\u003e`originMaxHttpVersion`\u003c/span\u003e | `\"2\"`, `\"1\"` | Origin Max HTTP Setting Version sets the highest HTTP version Cloudflare will... |\n| \u003cspan pulumi-lang-nodejs=\"`polish`\" pulumi-lang-dotnet=\"`Polish`\" pulumi-lang-go=\"`polish`\" pulumi-lang-python=\"`polish`\" pulumi-lang-yaml=\"`polish`\" pulumi-lang-java=\"`polish`\"\u003e`polish`\u003c/span\u003e | `\"off\"`, `\"lossless\"`, `\"lossy\"` | Removes metadata and compresses your images for faster page load times. Basic... |\n| \u003cspan pulumi-lang-nodejs=\"`prefetchPreload`\" pulumi-lang-dotnet=\"`PrefetchPreload`\" pulumi-lang-go=\"`prefetchPreload`\" pulumi-lang-python=\"`prefetch_preload`\" pulumi-lang-yaml=\"`prefetchPreload`\" pulumi-lang-java=\"`prefetchPreload`\"\u003e`prefetchPreload`\u003c/span\u003e | `\"on\"` / `\"off\"` | Cloudflare will prefetch any URLs that are included in the response headers. ... |\n| \u003cspan pulumi-lang-nodejs=\"`privacyPass`\" pulumi-lang-dotnet=\"`PrivacyPass`\" pulumi-lang-go=\"`privacyPass`\" pulumi-lang-python=\"`privacy_pass`\" pulumi-lang-yaml=\"`privacyPass`\" pulumi-lang-java=\"`privacyPass`\"\u003e`privacyPass`\u003c/span\u003e | `\"on\"` / `\"off\"` | Privacy Pass v1 was a browser extension developed by the Privacy Pass Team to... |\n| \u003cspan pulumi-lang-nodejs=\"`proxyReadTimeout`\" pulumi-lang-dotnet=\"`ProxyReadTimeout`\" pulumi-lang-go=\"`proxyReadTimeout`\" pulumi-lang-python=\"`proxy_read_timeout`\" pulumi-lang-yaml=\"`proxyReadTimeout`\" pulumi-lang-java=\"`proxyReadTimeout`\"\u003e`proxyReadTimeout`\u003c/span\u003e | Number | Maximum time between two read operations from origin. |\n| \u003cspan pulumi-lang-nodejs=\"`pseudoIpv4`\" pulumi-lang-dotnet=\"`PseudoIpv4`\" pulumi-lang-go=\"`pseudoIpv4`\" pulumi-lang-python=\"`pseudo_ipv4`\" pulumi-lang-yaml=\"`pseudoIpv4`\" pulumi-lang-java=\"`pseudoIpv4`\"\u003e`pseudoIpv4`\u003c/span\u003e | `\"off\"`, `\u003cspan pulumi-lang-nodejs=\"\"addHeader\"\" pulumi-lang-dotnet=\"\"AddHeader\"\" pulumi-lang-go=\"\"addHeader\"\" pulumi-lang-python=\"\"add_header\"\" pulumi-lang-yaml=\"\"addHeader\"\" pulumi-lang-java=\"\"addHeader\"\"\u003e\"addHeader\"\u003c/span\u003e`, `\u003cspan pulumi-lang-nodejs=\"\"overwriteHeader\"\" pulumi-lang-dotnet=\"\"OverwriteHeader\"\" pulumi-lang-go=\"\"overwriteHeader\"\" pulumi-lang-python=\"\"overwrite_header\"\" pulumi-lang-yaml=\"\"overwriteHeader\"\" pulumi-lang-java=\"\"overwriteHeader\"\"\u003e\"overwriteHeader\"\u003c/span\u003e` | The value set for the Pseudo IPv4 setting. |\n| \u003cspan pulumi-lang-nodejs=\"`redirectsForAiTraining`\" pulumi-lang-dotnet=\"`RedirectsForAiTraining`\" pulumi-lang-go=\"`redirectsForAiTraining`\" pulumi-lang-python=\"`redirects_for_ai_training`\" pulumi-lang-yaml=\"`redirectsForAiTraining`\" pulumi-lang-java=\"`redirectsForAiTraining`\"\u003e`redirectsForAiTraining`\u003c/span\u003e | `\"on\"` / `\"off\"` | When enabled, Cloudflare will redirect verified AI training crawlers to canon... |\n| \u003cspan pulumi-lang-nodejs=\"`replaceInsecureJs`\" pulumi-lang-dotnet=\"`ReplaceInsecureJs`\" pulumi-lang-go=\"`replaceInsecureJs`\" pulumi-lang-python=\"`replace_insecure_js`\" pulumi-lang-yaml=\"`replaceInsecureJs`\" pulumi-lang-java=\"`replaceInsecureJs`\"\u003e`replaceInsecureJs`\u003c/span\u003e | `\"on\"` / `\"off\"` | Automatically replace insecure JavaScript libraries with safer and faster alt... |\n| \u003cspan pulumi-lang-nodejs=\"`responseBuffering`\" pulumi-lang-dotnet=\"`ResponseBuffering`\" pulumi-lang-go=\"`responseBuffering`\" pulumi-lang-python=\"`response_buffering`\" pulumi-lang-yaml=\"`responseBuffering`\" pulumi-lang-java=\"`responseBuffering`\"\u003e`responseBuffering`\u003c/span\u003e | `\"on\"` / `\"off\"` | Enables or disables buffering of responses from the proxied server. Cloudflar... |\n| \u003cspan pulumi-lang-nodejs=\"`rocketLoader`\" pulumi-lang-dotnet=\"`RocketLoader`\" pulumi-lang-go=\"`rocketLoader`\" pulumi-lang-python=\"`rocket_loader`\" pulumi-lang-yaml=\"`rocketLoader`\" pulumi-lang-java=\"`rocketLoader`\"\u003e`rocketLoader`\u003c/span\u003e | `\"on\"` / `\"off\"` | Rocket Loader is a general-purpose asynchronous JavaScript optimisation that ... |\n| \u003cspan pulumi-lang-nodejs=\"`securityHeader`\" pulumi-lang-dotnet=\"`SecurityHeader`\" pulumi-lang-go=\"`securityHeader`\" pulumi-lang-python=\"`security_header`\" pulumi-lang-yaml=\"`securityHeader`\" pulumi-lang-java=\"`securityHeader`\"\u003e`securityHeader`\u003c/span\u003e | Object | Cloudflare security header for a zone. |\n| \u003cspan pulumi-lang-nodejs=\"`securityLevel`\" pulumi-lang-dotnet=\"`SecurityLevel`\" pulumi-lang-go=\"`securityLevel`\" pulumi-lang-python=\"`security_level`\" pulumi-lang-yaml=\"`securityLevel`\" pulumi-lang-java=\"`securityLevel`\"\u003e`securityLevel`\u003c/span\u003e | `\"off\"`, `\u003cspan pulumi-lang-nodejs=\"\"essentiallyOff\"\" pulumi-lang-dotnet=\"\"EssentiallyOff\"\" pulumi-lang-go=\"\"essentiallyOff\"\" pulumi-lang-python=\"\"essentially_off\"\" pulumi-lang-yaml=\"\"essentiallyOff\"\" pulumi-lang-java=\"\"essentiallyOff\"\"\u003e\"essentiallyOff\"\u003c/span\u003e`, `\"low\"`, `\"medium\"`, `\"high\"`, `\u003cspan pulumi-lang-nodejs=\"\"underAttack\"\" pulumi-lang-dotnet=\"\"UnderAttack\"\" pulumi-lang-go=\"\"underAttack\"\" pulumi-lang-python=\"\"under_attack\"\" pulumi-lang-yaml=\"\"underAttack\"\" pulumi-lang-java=\"\"underAttack\"\"\u003e\"underAttack\"\u003c/span\u003e` | Choose the appropriate security profile for your website, which will automati... |\n| \u003cspan pulumi-lang-nodejs=\"`serverSideExclude`\" pulumi-lang-dotnet=\"`ServerSideExclude`\" pulumi-lang-go=\"`serverSideExclude`\" pulumi-lang-python=\"`server_side_exclude`\" pulumi-lang-yaml=\"`serverSideExclude`\" pulumi-lang-java=\"`serverSideExclude`\"\u003e`serverSideExclude`\u003c/span\u003e | `\"on\"` / `\"off\"` | If there is sensitive content on your website that you want visible to real v... |\n| \u003cspan pulumi-lang-nodejs=\"`sha1Support`\" pulumi-lang-dotnet=\"`Sha1Support`\" pulumi-lang-go=\"`sha1Support`\" pulumi-lang-python=\"`sha1_support`\" pulumi-lang-yaml=\"`sha1Support`\" pulumi-lang-java=\"`sha1Support`\"\u003e`sha1Support`\u003c/span\u003e | `\"on\"` / `\"off\"` | Allow SHA1 support. |\n| \u003cspan pulumi-lang-nodejs=\"`sortQueryStringForCache`\" pulumi-lang-dotnet=\"`SortQueryStringForCache`\" pulumi-lang-go=\"`sortQueryStringForCache`\" pulumi-lang-python=\"`sort_query_string_for_cache`\" pulumi-lang-yaml=\"`sortQueryStringForCache`\" pulumi-lang-java=\"`sortQueryStringForCache`\"\u003e`sortQueryStringForCache`\u003c/span\u003e | `\"on\"` / `\"off\"` | Cloudflare will treat files with the same query strings as the same file in c... |\n| \u003cspan pulumi-lang-nodejs=\"`ssl`\" pulumi-lang-dotnet=\"`Ssl`\" pulumi-lang-go=\"`ssl`\" pulumi-lang-python=\"`ssl`\" pulumi-lang-yaml=\"`ssl`\" pulumi-lang-java=\"`ssl`\"\u003e`ssl`\u003c/span\u003e | `\"off\"`, `\"flexible\"`, `\"full\"`, `\"strict\"` | SSL encrypts your visitor's connection and safeguards credit card numbers and... |\n| \u003cspan pulumi-lang-nodejs=\"`sslRecommender`\" pulumi-lang-dotnet=\"`SslRecommender`\" pulumi-lang-go=\"`sslRecommender`\" pulumi-lang-python=\"`ssl_recommender`\" pulumi-lang-yaml=\"`sslRecommender`\" pulumi-lang-java=\"`sslRecommender`\"\u003e`sslRecommender`\u003c/span\u003e | Uses \u003cspan pulumi-lang-nodejs=\"`enabled`\" pulumi-lang-dotnet=\"`Enabled`\" pulumi-lang-go=\"`enabled`\" pulumi-lang-python=\"`enabled`\" pulumi-lang-yaml=\"`enabled`\" pulumi-lang-java=\"`enabled`\"\u003e`enabled`\u003c/span\u003e attr | Enrollment in the SSL/TLS Recommender service which tries to detect and recom... |\n| \u003cspan pulumi-lang-nodejs=\"`tls12Only`\" pulumi-lang-dotnet=\"`Tls12Only`\" pulumi-lang-go=\"`tls12Only`\" pulumi-lang-python=\"`tls_1_2_only`\" pulumi-lang-yaml=\"`tls12Only`\" pulumi-lang-java=\"`tls12Only`\"\u003e`tls12Only`\u003c/span\u003e | `\"on\"` / `\"off\"` | Only allows TLS1.2. |\n| \u003cspan pulumi-lang-nodejs=\"`tls13`\" pulumi-lang-dotnet=\"`Tls13`\" pulumi-lang-go=\"`tls13`\" pulumi-lang-python=\"`tls_1_3`\" pulumi-lang-yaml=\"`tls13`\" pulumi-lang-java=\"`tls13`\"\u003e`tls13`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"zrt\"` | Enables Crypto TLS 1.3 feature for a zone. |\n| \u003cspan pulumi-lang-nodejs=\"`tlsClientAuth`\" pulumi-lang-dotnet=\"`TlsClientAuth`\" pulumi-lang-go=\"`tlsClientAuth`\" pulumi-lang-python=\"`tls_client_auth`\" pulumi-lang-yaml=\"`tlsClientAuth`\" pulumi-lang-java=\"`tlsClientAuth`\"\u003e`tlsClientAuth`\u003c/span\u003e | `\"on\"` / `\"off\"` | TLS Client Auth requires Cloudflare to connect to your origin server using a ... |\n| \u003cspan pulumi-lang-nodejs=\"`transformations`\" pulumi-lang-dotnet=\"`Transformations`\" pulumi-lang-go=\"`transformations`\" pulumi-lang-python=\"`transformations`\" pulumi-lang-yaml=\"`transformations`\" pulumi-lang-java=\"`transformations`\"\u003e`transformations`\u003c/span\u003e | `\"on\"`, `\"off\"`, `\"open\"` | Media Transformations provides on-demand resizing, conversion and optimizatio... |\n| \u003cspan pulumi-lang-nodejs=\"`transformationsAllowedOrigins`\" pulumi-lang-dotnet=\"`TransformationsAllowedOrigins`\" pulumi-lang-go=\"`transformationsAllowedOrigins`\" pulumi-lang-python=\"`transformations_allowed_origins`\" pulumi-lang-yaml=\"`transformationsAllowedOrigins`\" pulumi-lang-java=\"`transformationsAllowedOrigins`\"\u003e`transformationsAllowedOrigins`\u003c/span\u003e | String | Media Transformations Allowed Origins restricts transformations for images an... |\n| \u003cspan pulumi-lang-nodejs=\"`trueClientIpHeader`\" pulumi-lang-dotnet=\"`TrueClientIpHeader`\" pulumi-lang-go=\"`trueClientIpHeader`\" pulumi-lang-python=\"`true_client_ip_header`\" pulumi-lang-yaml=\"`trueClientIpHeader`\" pulumi-lang-java=\"`trueClientIpHeader`\"\u003e`trueClientIpHeader`\u003c/span\u003e | `\"on\"` / `\"off\"` | Allows customer to continue to use True Client IP (Akamai feature) in the hea... |\n| \u003cspan pulumi-lang-nodejs=\"`waf`\" pulumi-lang-dotnet=\"`Waf`\" pulumi-lang-go=\"`waf`\" pulumi-lang-python=\"`waf`\" pulumi-lang-yaml=\"`waf`\" pulumi-lang-java=\"`waf`\"\u003e`waf`\u003c/span\u003e | `\"on\"` / `\"off\"` | The WAF examines HTTP requests to your website.  It inspects both GET and POS... |\n| \u003cspan pulumi-lang-nodejs=\"`webp`\" pulumi-lang-dotnet=\"`Webp`\" pulumi-lang-go=\"`webp`\" pulumi-lang-python=\"`webp`\" pulumi-lang-yaml=\"`webp`\" pulumi-lang-java=\"`webp`\"\u003e`webp`\u003c/span\u003e | `\"on\"` / `\"off\"` | When the client requesting the image supports the WebP image codec, and WebP ... |\n| \u003cspan pulumi-lang-nodejs=\"`websockets`\" pulumi-lang-dotnet=\"`Websockets`\" pulumi-lang-go=\"`websockets`\" pulumi-lang-python=\"`websockets`\" pulumi-lang-yaml=\"`websockets`\" pulumi-lang-java=\"`websockets`\"\u003e`websockets`\u003c/span\u003e | `\"on\"` / `\"off\"` | WebSockets are open connections sustained between the client and the origin s... |\n\n\u003c!-- END_ZONE_SETTING_IDS --\u003e\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneSetting = cloudflare.getZoneSetting({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n    settingId: \"always_online\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_setting = cloudflare.get_zone_setting(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\",\n    setting_id=\"always_online\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneSetting = Cloudflare.Index.GetZoneSetting.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n        SettingId = \"always_online\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneSetting(ctx, \u0026cloudflare.LookupZoneSettingArgs{\n\t\t\tZoneId:    pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t\tSettingId: \"always_online\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneSetting = CloudflareFunctions.getZoneSetting(GetZoneSettingArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .settingId(\"always_online\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneSetting:\n    fn::invoke:\n      function: cloudflare:getZoneSetting\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n        settingId: always_online\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneSetting.\n",
                "properties": {
                    "settingId": {
                        "type": "string",
                        "description": "Setting name\n"
                    },
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object",
                "required": [
                    "settingId"
                ]
            },
            "outputs": {
                "description": "A collection of values returned by getZoneSetting.\n",
                "properties": {
                    "editable": {
                        "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level).\n",
                        "type": "boolean"
                    },
                    "enabled": {
                        "description": "ssl-recommender enrollment setting.\n",
                        "type": "boolean"
                    },
                    "id": {
                        "description": "Setting name\n",
                        "type": "string"
                    },
                    "modifiedOn": {
                        "description": "last time this setting was modified.\n",
                        "type": "string"
                    },
                    "settingId": {
                        "description": "Setting name\n",
                        "type": "string"
                    },
                    "timeRemaining": {
                        "description": "Value of the zone setting.\nNotes: The interval (in seconds) from when development mode expires (positive integer) or last expired (negative integer) for the domain. If development mode has never been enabled, this value is false.\n",
                        "type": "number"
                    },
                    "value": {
                        "description": "Current value of the zone setting.\nAvailable values: \"on\", \"off\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "editable",
                    "enabled",
                    "id",
                    "modifiedOn",
                    "settingId",
                    "timeRemaining",
                    "value"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZoneSubscription:getZoneSubscription": {
            "description": "Accepted Permissions\n\n- `Billing Read`\n- `Billing Write`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZoneSubscription = cloudflare.getZoneSubscription({\n    zoneId: \"023e105f4ecef8ad9ca31a8372d0c353\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zone_subscription = cloudflare.get_zone_subscription(zone_id=\"023e105f4ecef8ad9ca31a8372d0c353\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZoneSubscription = Cloudflare.Index.GetZoneSubscription.Invoke(new()\n    {\n        ZoneId = \"023e105f4ecef8ad9ca31a8372d0c353\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZoneSubscription(ctx, \u0026cloudflare.LookupZoneSubscriptionArgs{\n\t\t\tZoneId: pulumi.StringRef(\"023e105f4ecef8ad9ca31a8372d0c353\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZoneSubscriptionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZoneSubscription = CloudflareFunctions.getZoneSubscription(GetZoneSubscriptionArgs.builder()\n            .zoneId(\"023e105f4ecef8ad9ca31a8372d0c353\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZoneSubscription:\n    fn::invoke:\n      function: cloudflare:getZoneSubscription\n      arguments:\n        zoneId: 023e105f4ecef8ad9ca31a8372d0c353\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZoneSubscription.\n",
                "properties": {
                    "zoneId": {
                        "type": "string",
                        "description": "Identifier\n"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZoneSubscription.\n",
                "properties": {
                    "currency": {
                        "description": "The monetary unit in which pricing information is displayed.\n",
                        "type": "string"
                    },
                    "currentPeriodEnd": {
                        "description": "The end of the current period and also when the next billing is due.\n",
                        "type": "string"
                    },
                    "currentPeriodStart": {
                        "description": "When the current billing period started. May match initial*period*start if this is the first period.\n",
                        "type": "string"
                    },
                    "frequency": {
                        "description": "How often the subscription is renewed automatically.\nAvailable values: \"weekly\", \"monthly\", \"quarterly\", \"yearly\", \"not-applicable\".\n",
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifier\n",
                        "type": "string"
                    },
                    "price": {
                        "description": "The price of the subscription that will be billed, in US dollars.\n",
                        "type": "number"
                    },
                    "ratePlan": {
                        "$ref": "#/types/cloudflare:index/getZoneSubscriptionRatePlan:getZoneSubscriptionRatePlan",
                        "description": "The rate plan applied to the subscription.\n"
                    },
                    "state": {
                        "description": "The state that the subscription is in.\nAvailable values: \"Trial\", \"Provisioned\", \"Paid\", \"AwaitingPayment\", \"Cancelled\", \"Failed\", \"Expired\".\n",
                        "type": "string"
                    },
                    "zoneId": {
                        "description": "Identifier\n",
                        "type": "string"
                    }
                },
                "required": [
                    "currency",
                    "currentPeriodEnd",
                    "currentPeriodStart",
                    "frequency",
                    "id",
                    "price",
                    "ratePlan",
                    "state"
                ],
                "type": "object"
            }
        },
        "cloudflare:index/getZones:getZones": {
            "description": "Accepted Permissions\n\n- `Zone Zone Read`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as cloudflare from \"@pulumi/cloudflare\";\n\nconst exampleZones = cloudflare.getZones({\n    account: {\n        id: \"id\",\n        name: \"name\",\n    },\n    direction: \"desc\",\n    name: \"name\",\n    order: \"status\",\n    status: \"initializing\",\n});\n```\n```python\nimport pulumi\nimport pulumi_cloudflare as cloudflare\n\nexample_zones = cloudflare.get_zones(account={\n        \"id\": \"id\",\n        \"name\": \"name\",\n    },\n    direction=\"desc\",\n    name=\"name\",\n    order=\"status\",\n    status=\"initializing\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Cloudflare = Pulumi.Cloudflare;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var exampleZones = Cloudflare.Index.GetZones.Invoke(new()\n    {\n        Account = new Cloudflare.Inputs.GetZonesAccountInputArgs\n        {\n            Id = \"id\",\n            Name = \"name\",\n        },\n        Direction = \"desc\",\n        Name = \"name\",\n        Order = \"status\",\n        Status = \"initializing\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-cloudflare/sdk/v6/go/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudflare.GetZones(ctx, \u0026cloudflare.LookupZonesArgs{\n\t\t\tAccount: cloudflare.GetZonesAccount{\n\t\t\t\tId:   pulumi.StringRef(\"id\"),\n\t\t\t\tName: pulumi.StringRef(\"name\"),\n\t\t\t},\n\t\t\tDirection: pulumi.StringRef(\"desc\"),\n\t\t\tName:      pulumi.StringRef(\"name\"),\n\t\t\tOrder:     pulumi.StringRef(\"status\"),\n\t\t\tStatus:    pulumi.StringRef(\"initializing\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.cloudflare.CloudflareFunctions;\nimport com.pulumi.cloudflare.inputs.GetZonesArgs;\nimport com.pulumi.cloudflare.inputs.GetZonesAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var exampleZones = CloudflareFunctions.getZones(GetZonesArgs.builder()\n            .account(GetZonesAccountArgs.builder()\n                .id(\"id\")\n                .name(\"name\")\n                .build())\n            .direction(\"desc\")\n            .name(\"name\")\n            .order(\"status\")\n            .status(\"initializing\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  exampleZones:\n    fn::invoke:\n      function: cloudflare:getZones\n      arguments:\n        account:\n          id: id\n          name: name\n        direction: desc\n        name: name\n        order: status\n        status: initializing\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "inputs": {
                "description": "A collection of arguments for invoking getZones.\n",
                "properties": {
                    "account": {
                        "$ref": "#/types/cloudflare:index/getZonesAccount:getZonesAccount"
                    },
                    "direction": {
                        "type": "string"
                    },
                    "match": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "order": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "outputs": {
                "description": "A collection of values returned by getZones.\n",
                "properties": {
                    "account": {
                        "$ref": "#/types/cloudflare:index/getZonesAccount:getZonesAccount"
                    },
                    "direction": {
                        "type": "string"
                    },
                    "id": {
                        "description": "The provider-assigned unique ID for this managed resource.",
                        "type": "string"
                    },
                    "match": {
                        "type": "string"
                    },
                    "maxItems": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "order": {
                        "type": "string"
                    },
                    "results": {
                        "items": {
                            "$ref": "#/types/cloudflare:index/getZonesResult:getZonesResult"
                        },
                        "type": "array"
                    },
                    "status": {
                        "type": "string"
                    }
                },
                "required": [
                    "match",
                    "results",
                    "id"
                ],
                "type": "object"
            }
        },
        "pulumi:providers:cloudflare/terraformConfig": {
            "description": "This function returns a Terraform config object with terraform-namecased keys,to be used with the Terraform Module Provider.",
            "inputs": {
                "properties": {
                    "__self__": {
                        "type": "ref",
                        "$ref": "#/provider"
                    }
                },
                "type": "pulumi:providers:cloudflare/terraformConfig",
                "required": [
                    "__self__"
                ]
            },
            "outputs": {
                "properties": {
                    "result": {
                        "additionalProperties": {
                            "$ref": "pulumi.json#/Any"
                        },
                        "type": "object"
                    }
                },
                "required": [
                    "result"
                ],
                "type": "object"
            }
        }
    }
}